diff --git a/build/awayjs.next.d.ts b/build/awayjs.next.d.ts
index d2f0930a..8c5b3368 100644
--- a/build/awayjs.next.d.ts
+++ b/build/awayjs.next.d.ts
@@ -124,7 +124,7 @@ declare module away.events {
* @property target
* @type Object
*/
- public target: Object;
+ public target: any;
constructor(type: string);
/**
* Clones the current event.
@@ -253,6 +253,41 @@ declare module away.events {
public hasEventListener(type: string, listener?: Function): boolean;
}
}
+declare module away.events {
+ /**
+ * Dispatched to notify changes in a geometry object's state.
+ *
+ * @class away.events.GeometryEvent
+ * @see away3d.core.base.Geometry
+ */
+ class GeometryEvent extends events.Event {
+ /**
+ * Dispatched when a TriangleSubGeometry was added to the dispatching Geometry.
+ */
+ static SUB_GEOMETRY_ADDED: string;
+ /**
+ * Dispatched when a TriangleSubGeometry was removed from the dispatching Geometry.
+ */
+ static SUB_GEOMETRY_REMOVED: string;
+ static BOUNDS_INVALID: string;
+ private _subGeometry;
+ /**
+ * Create a new GeometryEvent
+ * @param type The event type.
+ * @param subGeometry An optional TriangleSubGeometry object that is the subject of this event.
+ */
+ constructor(type: string, subGeometry?: away.base.SubGeometryBase);
+ /**
+ * The TriangleSubGeometry object that is the subject of this event, if appropriate.
+ */
+ public subGeometry : away.base.SubGeometryBase;
+ /**
+ * Clones the event.
+ * @return An exact duplicate of the current object.
+ */
+ public clone(): events.Event;
+ }
+}
declare module away.events {
/**
* @class away.events.HTTPStatusEvent
@@ -592,6 +627,41 @@ declare module away.events {
constructor(type: string);
}
}
+declare module away.events {
+ /**
+ * Dispatched to notify changes in a sub geometry object's state.
+ *
+ * @class away.events.SubGeometryEvent
+ * @see away3d.core.base.Geometry
+ */
+ class SubGeometryEvent extends events.Event {
+ /**
+ * Dispatched when a TriangleSubGeometry's index data has been updated.
+ */
+ static INDICES_UPDATED: string;
+ /**
+ * Dispatched when a TriangleSubGeometry's vertex data has been updated.
+ */
+ static VERTICES_UPDATED: string;
+ private _dataType;
+ /**
+ * Create a new GeometryEvent
+ * @param type The event type.
+ * @param dataType An optional data type of the vertex data being updated.
+ */
+ constructor(type: string, dataType?: string);
+ /**
+ * The data type of the vertex data.
+ */
+ public dataType : string;
+ /**
+ * Clones the event.
+ *
+ * @return An exact duplicate of the current object.
+ */
+ public clone(): events.Event;
+ }
+}
/**
* @module away.events
*/
@@ -1303,11 +1373,14 @@ declare module away.library {
static CONTAINER: string;
static EFFECTS_METHOD: string;
static GEOMETRY: string;
+ static LINE_SEGMENT: string;
static LIGHT: string;
static LIGHT_PICKER: string;
static MATERIAL: string;
static MESH: string;
- static SEGMENT_SET: string;
+ static TRIANGLE_SUB_MESH: string;
+ static LINE_SUB_MESH: string;
+ static PRIMITIVE_PREFAB: string;
static SHADOW_MAP_METHOD: string;
static SKELETON: string;
static SKELETON_POSE: string;
@@ -1752,173 +1825,526 @@ declare module away.library {
}
declare class AssetLibrarySingletonEnforcer {
}
+declare module away.gl {
+ class ContextGLClearMask {
+ static COLOR: number;
+ static DEPTH: number;
+ static STENCIL: number;
+ static ALL: number;
+ }
+}
+declare module away.gl {
+ class VertexBuffer {
+ private _gl;
+ private _numVertices;
+ private _data32PerVertex;
+ private _buffer;
+ constructor(gl: WebGLRenderingContext, numVertices: number, data32PerVertex: number);
+ public uploadFromArray(vertices: number[], startVertex: number, numVertices: number): void;
+ public numVertices : number;
+ public data32PerVertex : number;
+ public glBuffer : WebGLBuffer;
+ public dispose(): void;
+ }
+}
/**
-* A class that provides constant values for visual blend mode effects. These
-* constants are used in the following:
-*
-*
The blendMode property of the
-* flash.display.DisplayObject class.
-*
The blendMode parameter of the draw()
-* method of the flash.display.BitmapData class
-*
+* @module away.base
*/
-declare module away.base {
- class BlendMode {
- /**
- * Adds the values of the constituent colors of the display object to the
- * colors of its background, applying a ceiling of 0xFF. This setting is
- * commonly used for animating a lightening dissolve between two objects.
- *
- *
For example, if the display object has a pixel with an RGB value of
- * 0xAAA633, and the background pixel has an RGB value of 0xDD2200, the
- * resulting RGB value for the displayed pixel is 0xFFC833(because 0xAA +
- * 0xDD > 0xFF, 0xA6 + 0x22 = 0xC8, and 0x33 + 0x00 = 0x33).
- */
- static ADD: string;
- /**
- * Applies the alpha value of each pixel of the display object to the
- * background. This requires the blendMode property of the
- * parent display object be set to
- * away.base.BlendMode.LAYER.
- *
- *
Not supported under GPU rendering.
- */
- static ALPHA: string;
- /**
- * Selects the darker of the constituent colors of the display object and the
- * colors of the background(the colors with the smaller values). This
- * setting is commonly used for superimposing type.
- *
- *
For example, if the display object has a pixel with an RGB value of
- * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the
- * resulting RGB value for the displayed pixel is 0xDDCC00(because 0xFF >
- * 0xDD, 0xCC < 0xF8, and 0x33 > 0x00 = 33).
- *
- *
Not supported under GPU rendering.
- */
- static DARKEN: string;
- /**
- * Compares the constituent colors of the display object with the colors of
- * its background, and subtracts the darker of the values of the two
- * constituent colors from the lighter value. This setting is commonly used
- * for more vibrant colors.
- *
- *
For example, if the display object has a pixel with an RGB value of
- * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the
- * resulting RGB value for the displayed pixel is 0x222C33(because 0xFF -
- * 0xDD = 0x22, 0xF8 - 0xCC = 0x2C, and 0x33 - 0x00 = 0x33).
- */
- static DIFFERENCE: string;
- /**
- * Erases the background based on the alpha value of the display object. This
- * process requires that the blendMode property of the parent
- * display object be set to flash.display.BlendMode.LAYER.
- *
- *
Not supported under GPU rendering.
- */
- static ERASE: string;
- /**
- * Adjusts the color of each pixel based on the darkness of the display
- * object. If the display object is lighter than 50% gray, the display object
- * and background colors are screened, which results in a lighter color. If
- * the display object is darker than 50% gray, the colors are multiplied,
- * which results in a darker color. This setting is commonly used for shading
- * effects.
- *
- *
Not supported under GPU rendering.
- */
- static HARDLIGHT: string;
- /**
- * Inverts the background.
- */
- static INVERT: string;
+declare module away.gl {
+ /**
+ *
+ */
+ class VertexData {
+ private _dataDirty;
+ public invalid: boolean[];
+ public buffers: gl.VertexBuffer[];
+ public stageGLs: away.base.StageGL[];
+ public data: number[];
+ public dataPerVertex: number;
+ constructor();
+ public updateData(vertices: number[], dataPerVertex: number, originalIndices?: number[], indexMappings?: number[]): void;
+ public invalidateData(): void;
+ public dispose(): void;
/**
- * Forces the creation of a transparency group for the display object. This
- * means that the display object is precomposed in a temporary buffer before
- * it is processed further. The precomposition is done automatically if the
- * display object is precached by means of bitmap caching or if the display
- * object is a display object container that has at least one child object
- * with a blendMode setting other than "normal".
- *
- *
Not supported under GPU rendering.
+ * @private
*/
- static LAYER: string;
+ private disposeBuffers();
/**
- * Selects the lighter of the constituent colors of the display object and
- * the colors of the background(the colors with the larger values). This
- * setting is commonly used for superimposing type.
- *
- *
For example, if the display object has a pixel with an RGB value of
- * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the
- * resulting RGB value for the displayed pixel is 0xFFF833(because 0xFF >
- * 0xDD, 0xCC < 0xF8, and 0x33 > 0x00 = 33).
- *
- *
Not supported under GPU rendering.
+ * @private
*/
- static LIGHTEN: string;
+ private invalidateBuffers();
/**
- * Multiplies the values of the display object constituent colors by the
- * constituent colors of the background color, and normalizes by dividing by
- * 0xFF, resulting in darker colors. This setting is commonly used for
- * shadows and depth effects.
*
- *
For example, if a constituent color(such as red) of one pixel in the
- * display object and the corresponding color of the pixel in the background
- * both have the value 0x88, the multiplied result is 0x4840. Dividing by
- * 0xFF yields a value of 0x48 for that constituent color, which is a darker
- * shade than the color of the display object or the color of the
- * background.
- */
- static MULTIPLY: string;
- /**
- * The display object appears in front of the background. Pixel values of the
- * display object override the pixel values of the background. Where the
- * display object is transparent, the background is visible.
+ * @param data
+ * @param dataPerVertex
+ * @private
*/
- static NORMAL: string;
+ private setData(data, dataPerVertex);
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.gl {
+ /**
+ *
+ */
+ class VertexDataPool {
+ private static _pool;
+ constructor();
+ static getItem(id: string, level: number, dataType: string): gl.VertexData;
+ static disposeItem(id: string, level: number, dataType: string): void;
+ public disposeData(id: string): void;
+ }
+}
+declare module away.gl {
+ class IndexBuffer {
+ private _gl;
+ private _numIndices;
+ private _buffer;
+ constructor(gl: WebGLRenderingContext, numIndices: number);
+ public uploadFromArray(data: number[], startOffset: number, count: number): void;
+ public dispose(): void;
+ public numIndices : number;
+ public glBuffer : WebGLBuffer;
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.gl {
+ /**
+ *
+ */
+ class IndexData {
+ private static LIMIT_VERTS;
+ private static LIMIT_INDICES;
+ private _dataDirty;
+ public invalid: boolean[];
+ public stageGLs: away.base.StageGL[];
+ public buffers: gl.IndexBuffer[];
+ public data: number[];
+ public indexMappings: number[];
+ public originalIndices: number[];
+ public offset: number;
+ constructor();
+ public updateData(offset: number, indices: number[], numVertices: number): void;
+ public invalidateData(): void;
+ public dispose(): void;
/**
- * Adjusts the color of each pixel based on the darkness of the background.
- * If the background is lighter than 50% gray, the display object and
- * background colors are screened, which results in a lighter color. If the
- * background is darker than 50% gray, the colors are multiplied, which
- * results in a darker color. This setting is commonly used for shading
- * effects.
- *
- *
Not supported under GPU rendering.
+ * @private
*/
- static OVERLAY: string;
+ private disposeBuffers();
/**
- * Multiplies the complement(inverse) of the display object color by the
- * complement of the background color, resulting in a bleaching effect. This
- * setting is commonly used for highlights or to remove black areas of the
- * display object.
+ * @private
*/
- static SCREEN: string;
+ private invalidateBuffers();
/**
- * Uses a shader to define the blend between objects.
- *
- *
Setting the blendShader property to a Shader instance
- * automatically sets the display object's blendMode property to
- * BlendMode.SHADER. If the blendMode property is
- * set to BlendMode.SHADER without first setting the
- * blendShader property, the blendMode property is
- * set to BlendMode.NORMAL instead. If the
- * blendShader property is set(which sets the
- * blendMode property to BlendMode.SHADER), then
- * later the value of the blendMode property is changed, the
- * blend mode can be reset to use the blend shader simply by setting the
- * blendMode property to BlendMode.SHADER. The
- * blendShader property does not need to be set again except to
- * change the shader that's used to define the blend mode.
*
- *
Not supported under GPU rendering.
+ * @param data
+ * @private
*/
- static SHADER: string;
- /**
- * Subtracts the values of the constituent colors in the display object from
- * the values of the background color, applying a floor of 0. This setting is
- * commonly used for animating a darkening dissolve between two objects.
- *
+ private setData(data);
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.gl {
+ /**
+ *
+ */
+ class IndexDataPool {
+ private static _pool;
+ constructor();
+ static getItem(id: string, level: number): gl.IndexData;
+ static disposeItem(id: string, level: number): void;
+ public disposeData(id: string): void;
+ }
+}
+declare module away.gl {
+ class Program {
+ private _gl;
+ private _program;
+ private _vertexShader;
+ private _fragmentShader;
+ constructor(gl: WebGLRenderingContext);
+ public upload(vertexProgram: string, fragmentProgram: string): any;
+ public dispose(): void;
+ public focusProgram(): void;
+ public glProgram : WebGLProgram;
+ }
+}
+declare module away.gl {
+ class SamplerState {
+ public wrap: number;
+ public filter: number;
+ public mipfilter: number;
+ }
+}
+declare module away.gl {
+ class ContextGLTextureFormat {
+ static BGRA: string;
+ static BGRA_PACKED: string;
+ static BGR_PACKED: string;
+ static COMPRESSED: string;
+ static COMPRESSED_ALPHA: string;
+ }
+}
+declare module away.gl {
+ class TextureBase {
+ public textureType: string;
+ public _gl: WebGLRenderingContext;
+ constructor(gl: WebGLRenderingContext);
+ public dispose(): void;
+ }
+}
+declare module away.gl {
+ class Texture extends gl.TextureBase {
+ public textureType: string;
+ private _width;
+ private _height;
+ private _frameBuffer;
+ private _glTexture;
+ constructor(gl: WebGLRenderingContext, width: number, height: number);
+ public dispose(): void;
+ public width : number;
+ public height : number;
+ public frameBuffer : WebGLFramebuffer;
+ public uploadFromHTMLImageElement(image: HTMLImageElement, miplevel?: number): void;
+ public uploadFromBitmapData(data: away.base.BitmapData, miplevel?: number): void;
+ public uploadCompressedTextureFromByteArray(data: away.utils.ByteArray, byteArrayOffset: number, async?: boolean): void;
+ public glTexture : WebGLTexture;
+ public generateFromRenderBuffer(data: away.base.BitmapData): void;
+ public generateMipmaps(): void;
+ }
+}
+declare module away.gl {
+ class CubeTexture extends gl.TextureBase {
+ public textureType: string;
+ private _texture;
+ private _size;
+ constructor(gl: WebGLRenderingContext, size: number);
+ public dispose(): void;
+ public uploadFromHTMLImageElement(image: HTMLImageElement, side: number, miplevel?: number): void;
+ public uploadFromBitmapData(data: away.base.BitmapData, side: number, miplevel?: number): void;
+ public uploadCompressedTextureFromByteArray(data: away.utils.ByteArray, byteArrayOffset: number, async?: boolean): void;
+ public size : number;
+ public glTexture : WebGLTexture;
+ }
+}
+declare module away.gl {
+ class ContextGLTriangleFace {
+ static BACK: string;
+ static FRONT: string;
+ static FRONT_AND_BACK: string;
+ static NONE: string;
+ }
+}
+declare module away.gl {
+ class ContextGLVertexBufferFormat {
+ static BYTES_4: string;
+ static FLOAT_1: string;
+ static FLOAT_2: string;
+ static FLOAT_3: string;
+ static FLOAT_4: string;
+ }
+}
+declare module away.gl {
+ class ContextGLProgramType {
+ static FRAGMENT: string;
+ static VERTEX: string;
+ }
+}
+declare module away.gl {
+ class ContextGLBlendFactor {
+ static DESTINATION_ALPHA: string;
+ static DESTINATION_COLOR: string;
+ static ONE: string;
+ static ONE_MINUS_DESTINATION_ALPHA: string;
+ static ONE_MINUS_DESTINATION_COLOR: string;
+ static ONE_MINUS_SOURCE_ALPHA: string;
+ static ONE_MINUS_SOURCE_COLOR: string;
+ static SOURCE_ALPHA: string;
+ static SOURCE_COLOR: string;
+ static ZERO: string;
+ }
+}
+declare module away.gl {
+ class ContextGLCompareMode {
+ static ALWAYS: string;
+ static EQUAL: string;
+ static GREATER: string;
+ static GREATER_EQUAL: string;
+ static LESS: string;
+ static LESS_EQUAL: string;
+ static NEVER: string;
+ static NOT_EQUAL: string;
+ }
+}
+declare module away.gl {
+ class ContextGLMipFilter {
+ static MIPLINEAR: string;
+ static MIPNEAREST: string;
+ static MIPNONE: string;
+ }
+}
+declare module away.gl {
+ class ContextGLProfile {
+ static BASELINE: string;
+ static BASELINE_CONSTRAINED: string;
+ static BASELINE_EXTENDED: string;
+ }
+}
+declare module away.gl {
+ class ContextGLStencilAction {
+ static DECREMENT_SATURATE: string;
+ static DECREMENT_WRAP: string;
+ static INCREMENT_SATURATE: string;
+ static INCREMENT_WRAP: string;
+ static INVERT: string;
+ static KEEP: string;
+ static SET: string;
+ static ZERO: string;
+ }
+}
+declare module away.gl {
+ class ContextGLTextureFilter {
+ static LINEAR: string;
+ static NEAREST: string;
+ }
+}
+declare module away.gl {
+ class ContextGLWrapMode {
+ static CLAMP: string;
+ static REPEAT: string;
+ }
+}
+declare module away.gl {
+ class ContextGL {
+ private _drawing;
+ private _blendEnabled;
+ private _blendSourceFactor;
+ private _blendDestinationFactor;
+ private _currentWrap;
+ private _currentFilter;
+ private _currentMipFilter;
+ private _indexBufferList;
+ private _vertexBufferList;
+ private _textureList;
+ private _programList;
+ private _samplerStates;
+ static MAX_SAMPLERS: number;
+ public _gl: WebGLRenderingContext;
+ public _currentProgram: gl.Program;
+ constructor(canvas: HTMLCanvasElement);
+ public gl(): WebGLRenderingContext;
+ public clear(red?: number, green?: number, blue?: number, alpha?: number, depth?: number, stencil?: number, mask?: number): void;
+ public configureBackBuffer(width: number, height: number, antiAlias: number, enableDepthAndStencil?: boolean): void;
+ public createCubeTexture(size: number, format: string, optimizeForRenderToTexture: boolean, streamingLevels?: number): gl.CubeTexture;
+ public createIndexBuffer(numIndices: number): gl.IndexBuffer;
+ public createProgram(): gl.Program;
+ public createTexture(width: number, height: number, format: string, optimizeForRenderToTexture: boolean, streamingLevels?: number): gl.Texture;
+ public createVertexBuffer(numVertices: number, data32PerVertex: number): gl.VertexBuffer;
+ public dispose(): void;
+ public drawToBitmapData(destination: away.base.BitmapData): void;
+ public drawTriangles(indexBuffer: gl.IndexBuffer, firstIndex?: number, numTriangles?: number): void;
+ public present(): void;
+ public setBlendFactors(sourceFactor: string, destinationFactor: string): void;
+ public setColorMask(red: boolean, green: boolean, blue: boolean, alpha: boolean): void;
+ public setCulling(triangleFaceToCull: string, coordinateSystem?: string): void;
+ public setDepthTest(depthMask: boolean, passCompareMode: string): void;
+ public setProgram(program: gl.Program): void;
+ private getUniformLocationNameFromAgalRegisterIndex(programType, firstRegister);
+ public setProgramConstantsFromMatrix(programType: string, firstRegister: number, matrix: away.geom.Matrix3D, transposedMatrix?: boolean): void;
+ static modulo: number;
+ public setProgramConstantsFromArray(programType: string, firstRegister: number, data: number[], numRegisters?: number): void;
+ public setGLSLProgramConstantsFromMatrix(locationName: string, matrix: away.geom.Matrix3D, transposedMatrix?: boolean): void;
+ public setGLSLProgramConstantsFromArray(locationName: string, data: number[], startIndex?: number): void;
+ public setScissorRectangle(rectangle: away.geom.Rectangle): void;
+ public setTextureAt(sampler: number, texture: gl.TextureBase): void;
+ public setGLSLTextureAt(locationName: string, texture: gl.TextureBase, textureIndex: number): void;
+ public setSamplerStateAt(sampler: number, wrap: string, filter: string, mipfilter: string): void;
+ public setVertexBufferAt(index: number, buffer: gl.VertexBuffer, bufferOffset?: number, format?: string): void;
+ public setGLSLVertexBufferAt(locationName: any, buffer: gl.VertexBuffer, bufferOffset?: number, format?: string): void;
+ public setRenderToTexture(target: gl.TextureBase, enableDepthAndStencil?: boolean, antiAlias?: number, surfaceSelector?: number): void;
+ public setRenderToBackBuffer(): void;
+ private updateBlendStatus();
+ }
+}
+declare module away.gl {
+ class AGLSLContextGL extends gl.ContextGL {
+ constructor(canvas: HTMLCanvasElement);
+ public setProgramConstantsFromMatrix(programType: string, firstRegister: number, matrix: away.geom.Matrix3D, transposedMatrix?: boolean): void;
+ }
+}
+/**
+* A class that provides constant values for visual blend mode effects. These
+* constants are used in the following:
+*
+*
The blendMode property of the
+* flash.display.DisplayObject class.
+*
The blendMode parameter of the draw()
+* method of the flash.display.BitmapData class
+*
+*/
+declare module away.base {
+ class BlendMode {
+ /**
+ * Adds the values of the constituent colors of the display object to the
+ * colors of its background, applying a ceiling of 0xFF. This setting is
+ * commonly used for animating a lightening dissolve between two objects.
+ *
+ *
For example, if the display object has a pixel with an RGB value of
+ * 0xAAA633, and the background pixel has an RGB value of 0xDD2200, the
+ * resulting RGB value for the displayed pixel is 0xFFC833(because 0xAA +
+ * 0xDD > 0xFF, 0xA6 + 0x22 = 0xC8, and 0x33 + 0x00 = 0x33).
+ */
+ static ADD: string;
+ /**
+ * Applies the alpha value of each pixel of the display object to the
+ * background. This requires the blendMode property of the
+ * parent display object be set to
+ * away.base.BlendMode.LAYER.
+ *
+ *
Not supported under GPU rendering.
+ */
+ static ALPHA: string;
+ /**
+ * Selects the darker of the constituent colors of the display object and the
+ * colors of the background(the colors with the smaller values). This
+ * setting is commonly used for superimposing type.
+ *
+ *
For example, if the display object has a pixel with an RGB value of
+ * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the
+ * resulting RGB value for the displayed pixel is 0xDDCC00(because 0xFF >
+ * 0xDD, 0xCC < 0xF8, and 0x33 > 0x00 = 33).
+ *
+ *
Not supported under GPU rendering.
+ */
+ static DARKEN: string;
+ /**
+ * Compares the constituent colors of the display object with the colors of
+ * its background, and subtracts the darker of the values of the two
+ * constituent colors from the lighter value. This setting is commonly used
+ * for more vibrant colors.
+ *
+ *
For example, if the display object has a pixel with an RGB value of
+ * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the
+ * resulting RGB value for the displayed pixel is 0x222C33(because 0xFF -
+ * 0xDD = 0x22, 0xF8 - 0xCC = 0x2C, and 0x33 - 0x00 = 0x33).
+ */
+ static DIFFERENCE: string;
+ /**
+ * Erases the background based on the alpha value of the display object. This
+ * process requires that the blendMode property of the parent
+ * display object be set to flash.display.BlendMode.LAYER.
+ *
+ *
Not supported under GPU rendering.
+ */
+ static ERASE: string;
+ /**
+ * Adjusts the color of each pixel based on the darkness of the display
+ * object. If the display object is lighter than 50% gray, the display object
+ * and background colors are screened, which results in a lighter color. If
+ * the display object is darker than 50% gray, the colors are multiplied,
+ * which results in a darker color. This setting is commonly used for shading
+ * effects.
+ *
+ *
Not supported under GPU rendering.
+ */
+ static HARDLIGHT: string;
+ /**
+ * Inverts the background.
+ */
+ static INVERT: string;
+ /**
+ * Forces the creation of a transparency group for the display object. This
+ * means that the display object is precomposed in a temporary buffer before
+ * it is processed further. The precomposition is done automatically if the
+ * display object is precached by means of bitmap caching or if the display
+ * object is a display object container that has at least one child object
+ * with a blendMode setting other than "normal".
+ *
+ *
Not supported under GPU rendering.
+ */
+ static LAYER: string;
+ /**
+ * Selects the lighter of the constituent colors of the display object and
+ * the colors of the background(the colors with the larger values). This
+ * setting is commonly used for superimposing type.
+ *
+ *
For example, if the display object has a pixel with an RGB value of
+ * 0xFFCC33, and the background pixel has an RGB value of 0xDDF800, the
+ * resulting RGB value for the displayed pixel is 0xFFF833(because 0xFF >
+ * 0xDD, 0xCC < 0xF8, and 0x33 > 0x00 = 33).
+ *
+ *
Not supported under GPU rendering.
+ */
+ static LIGHTEN: string;
+ /**
+ * Multiplies the values of the display object constituent colors by the
+ * constituent colors of the background color, and normalizes by dividing by
+ * 0xFF, resulting in darker colors. This setting is commonly used for
+ * shadows and depth effects.
+ *
+ *
For example, if a constituent color(such as red) of one pixel in the
+ * display object and the corresponding color of the pixel in the background
+ * both have the value 0x88, the multiplied result is 0x4840. Dividing by
+ * 0xFF yields a value of 0x48 for that constituent color, which is a darker
+ * shade than the color of the display object or the color of the
+ * background.
+ */
+ static MULTIPLY: string;
+ /**
+ * The display object appears in front of the background. Pixel values of the
+ * display object override the pixel values of the background. Where the
+ * display object is transparent, the background is visible.
+ */
+ static NORMAL: string;
+ /**
+ * Adjusts the color of each pixel based on the darkness of the background.
+ * If the background is lighter than 50% gray, the display object and
+ * background colors are screened, which results in a lighter color. If the
+ * background is darker than 50% gray, the colors are multiplied, which
+ * results in a darker color. This setting is commonly used for shading
+ * effects.
+ *
+ *
Not supported under GPU rendering.
+ */
+ static OVERLAY: string;
+ /**
+ * Multiplies the complement(inverse) of the display object color by the
+ * complement of the background color, resulting in a bleaching effect. This
+ * setting is commonly used for highlights or to remove black areas of the
+ * display object.
+ */
+ static SCREEN: string;
+ /**
+ * Uses a shader to define the blend between objects.
+ *
+ *
Setting the blendShader property to a Shader instance
+ * automatically sets the display object's blendMode property to
+ * BlendMode.SHADER. If the blendMode property is
+ * set to BlendMode.SHADER without first setting the
+ * blendShader property, the blendMode property is
+ * set to BlendMode.NORMAL instead. If the
+ * blendShader property is set(which sets the
+ * blendMode property to BlendMode.SHADER), then
+ * later the value of the blendMode property is changed, the
+ * blend mode can be reset to use the blend shader simply by setting the
+ * blendMode property to BlendMode.SHADER. The
+ * blendShader property does not need to be set again except to
+ * change the shader that's used to define the blend mode.
+ *
+ *
Not supported under GPU rendering.
+ */
+ static SHADER: string;
+ /**
+ * Subtracts the values of the constituent colors in the display object from
+ * the values of the background color, applying a floor of 0. This setting is
+ * commonly used for animating a darkening dissolve between two objects.
+ *
*
For example, if the display object has a pixel with an RGB value of
* 0xAA2233, and the background pixel has an RGB value of 0xDDA600, the
* resulting RGB value for the displayed pixel is 0x338400(because 0xDD -
@@ -2272,6 +2698,7 @@ declare module away.base {
private _mouseY;
private _root;
private _bounds;
+ private _boundsVisible;
private _depth;
private _height;
private _width;
@@ -2328,8 +2755,6 @@ declare module away.base {
private _sca;
private _transformComponents;
public _pIgnoreTransform: boolean;
- private _showBounds;
- private _boundsIsShown;
private _shaderPickingDetails;
public _pPickingCollisionVO: away.pick.PickingCollisionVO;
public _pBounds: away.bounds.BoundingVolumeBase;
@@ -2338,6 +2763,7 @@ declare module away.base {
private _worldBoundsInvalid;
public _pPickingCollider: away.pick.IPickingCollider;
public _pRenderables: away.pool.IRenderable[];
+ public _iSourcePrefab: away.prefabs.PrefabBase;
/**
*
*/
@@ -2794,7 +3220,7 @@ declare module away.base {
/**
*
*/
- public showBounds : boolean;
+ public boundsVisible : boolean;
/**
* An object with properties pertaining to a display object's matrix, color
* transform, and pixel bounds. The specific properties - matrix,
@@ -3254,10 +3680,6 @@ declare module away.base {
/**
* @private
*/
- private addBounds();
- /**
- * @private
- */
private notifyPositionChanged();
/**
* @private
@@ -3301,10 +3723,70 @@ declare module away.base {
* @private
*/
private invalidateScale();
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ *
+ * Geometry is a collection of SubGeometries, each of which contain the actual geometrical data such as vertices,
+ * normals, uvs, etc. It also contains a reference to an animation class, which defines how the geometry moves.
+ * A Geometry object is assigned to a Mesh, a scene graph occurence of the geometry, which in turn assigns
+ * the SubGeometries to its respective TriangleSubMesh objects.
+ *
+ *
+ *
+ * @see away.core.base.SubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.Geometry
+ */
+ class Geometry extends away.library.NamedAssetBase implements away.library.IAsset {
+ private _subGeometries;
+ public assetType : string;
/**
- * @private
+ * A collection of TriangleSubGeometry objects, each of which contain geometrical data such as vertices, normals, etc.
+ */
+ public subGeometries : base.SubGeometryBase[];
+ public getSubGeometries(): base.SubGeometryBase[];
+ /**
+ * Creates a new Geometry object.
*/
- private removeBounds();
+ constructor();
+ public applyTransformation(transform: away.geom.Matrix3D): void;
+ /**
+ * Adds a new TriangleSubGeometry object to the list.
+ * @param subGeometry The TriangleSubGeometry object to be added.
+ */
+ public addSubGeometry(subGeometry: base.SubGeometryBase): void;
+ /**
+ * Removes a new TriangleSubGeometry object from the list.
+ * @param subGeometry The TriangleSubGeometry object to be removed.
+ */
+ public removeSubGeometry(subGeometry: base.SubGeometryBase): void;
+ /**
+ * Clones the geometry.
+ * @return An exact duplicate of the current Geometry object.
+ */
+ public clone(): Geometry;
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ public scale(scale: number): void;
+ /**
+ * Clears all resources used by the Geometry object, including SubGeometries.
+ */
+ public dispose(): void;
+ /**
+ * Scales the uv coordinates (tiling)
+ * @param scaleU The amount by which to scale on the u axis. Default is 1;
+ * @param scaleV The amount by which to scale on the v axis. Default is 1;
+ */
+ public scaleUV(scaleU?: number, scaleV?: number): void;
+ public iInvalidateBounds(subGeom: base.SubGeometryBase): void;
}
}
/**
@@ -4084,16 +4566,22 @@ declare module away.base {
uvTransform: away.geom.UVTransform;
/**
*
+ * @param renderable
+ * @private
*/
- _iSetUVMatrixComponents(offsetU: number, offsetV: number, scaleU: number, scaleV: number, rotationUV: number): any;
+ _iAddRenderable(renderable: away.pool.IRenderable): away.pool.IRenderable;
/**
*
+ * @param renderable
+ * @private
*/
- _iAddRenderable(renderable: away.pool.IRenderable): away.pool.IRenderable;
+ _iRemoveRenderable(renderable: away.pool.IRenderable): away.pool.IRenderable;
/**
*
+ * @param renderer
+ * @private
*/
- _iRemoveRenderable(renderable: away.pool.IRenderable): away.pool.IRenderable;
+ _iCollectRenderable(renderer: away.render.IRenderer): any;
}
}
/**
@@ -4134,6 +4622,189 @@ declare module away.base {
}
}
/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * ISubMeshClass is an interface for the constructable class definition SubMesh that is used to
+ * create apply a marterial to a SubGeometry class
+ *
+ * @class away.base.ISubMeshClass
+ */
+ interface ISubMesh extends base.IMaterialOwner {
+ subGeometry: base.SubGeometryBase;
+ parentMesh: away.entities.Mesh;
+ _iIndex: number;
+ _iInvalidateRenderableGeometry(): any;
+ _iGetExplicitMaterial(): away.materials.IMaterial;
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * ISubMeshClass is an interface for the constructable class definition ISubMesh that is used to
+ * apply a material to a SubGeometry class
+ *
+ * @class away.base.ISubMeshClass
+ */
+ interface ISubMeshClass {
+ /**
+ *
+ */
+ new(subGeometry: base.SubGeometryBase, parentMesh: away.entities.Mesh, material?: away.materials.IMaterial): base.ISubMesh;
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ class SubGeometryBase extends away.library.NamedAssetBase {
+ public _pStrideOffsetDirty: boolean;
+ public _pIndices: number[];
+ public _pVertices: number[];
+ private _numIndices;
+ private _numTriangles;
+ public _pNumVertices: number;
+ public _pConcatenateArrays: boolean;
+ private _indicesUpdated;
+ public _pStride: Object;
+ public _pOffset: Object;
+ public _pUpdateStrideOffset(): void;
+ public _pSubMeshClass: base.ISubMeshClass;
+ public subMeshClass : base.ISubMeshClass;
+ /**
+ *
+ */
+ public concatenateArrays : boolean;
+ /**
+ * The raw index data that define the faces.
+ */
+ public indices : number[];
+ /**
+ *
+ */
+ public vertices : number[];
+ /**
+ * The total amount of triangles in the TriangleSubGeometry.
+ */
+ public numTriangles : number;
+ public numVertices : number;
+ /**
+ *
+ */
+ constructor(concatenatedArrays: boolean);
+ /**
+ *
+ */
+ public getStride(dataType: string): any;
+ /**
+ *
+ */
+ public getOffset(dataType: string): any;
+ public updateVertices(): void;
+ /**
+ *
+ */
+ public dispose(): void;
+ /**
+ * Updates the face indices of the TriangleSubGeometry.
+ *
+ * @param indices The face indices to upload.
+ */
+ public updateIndices(indices: number[]): void;
+ /**
+ * @protected
+ */
+ public pInvalidateBounds(): void;
+ /**
+ * The Geometry object that 'owns' this TriangleSubGeometry object.
+ *
+ * @private
+ */
+ public parentGeometry: base.Geometry;
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ public clone(): SubGeometryBase;
+ public applyTransformation(transform: away.geom.Matrix3D): void;
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ public scale(scale: number): void;
+ public scaleUV(scaleU?: number, scaleV?: number): void;
+ public getBoundingPositions(): number[];
+ private notifyIndicesUpdate();
+ public _pNotifyVerticesUpdate(): void;
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * SubMeshBase wraps a TriangleSubGeometry as a scene graph instantiation. A SubMeshBase is owned by a Mesh object.
+ *
+ *
+ * @see away.base.TriangleSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.SubMeshBase
+ */
+ class SubMeshBase extends away.library.NamedAssetBase {
+ public _pParentMesh: away.entities.Mesh;
+ public _uvTransform: away.geom.UVTransform;
+ public _iIndex: number;
+ public _material: away.materials.IMaterial;
+ private _renderables;
+ /**
+ * The animator object that provides the state for the TriangleSubMesh's animation.
+ */
+ public animator : away.animators.IAnimator;
+ /**
+ * The material used to render the current TriangleSubMesh. If set to null, its parent Mesh's material will be used instead.
+ */
+ public material : away.materials.IMaterial;
+ /**
+ * The scene transform object that transforms from model to world space.
+ */
+ public sceneTransform : away.geom.Matrix3D;
+ /**
+ * The entity that that initially provided the IRenderable to the render pipeline (ie: the owning Mesh object).
+ */
+ public parentMesh : away.entities.Mesh;
+ /**
+ *
+ */
+ public uvTransform : away.geom.UVTransform;
+ /**
+ * Creates a new SubMeshBase object
+ */
+ constructor();
+ /**
+ *
+ */
+ public dispose(): void;
+ /**
+ *
+ * @param camera
+ * @returns {away.geom.Matrix3D}
+ */
+ public getRenderSceneTransform(camera: away.entities.Camera): away.geom.Matrix3D;
+ public _iAddRenderable(renderable: away.pool.IRenderable): away.pool.IRenderable;
+ public _iRemoveRenderable(renderable: away.pool.IRenderable): away.pool.IRenderable;
+ public _iInvalidateRenderableGeometry(): void;
+ public _iCollectRenderable(renderer: away.render.IRenderer): void;
+ public _iGetExplicitMaterial(): away.materials.IMaterial;
+ }
+}
+/**
* The JointStyle class is an enumeration of constant values that specify the
* joint style to use in drawing lines. These constants are provided for use
* as values in the joints parameter of the
@@ -4167,36 +4838,174 @@ declare module away.base {
declare module away.base {
class LineScaleMode {
/**
- * With this setting used as the scaleMode parameter of the
- * lineStyle() method, the thickness of the line scales
- * only vertically. For example, consider the following circles, drawn
- * with a one-pixel line, and each with the scaleMode parameter
- * set to LineScaleMode.VERTICAL. The circle on the left is
- * scaled only vertically, and the circle on the right is scaled both
- * vertically and horizontally.
+ * With this setting used as the scaleMode parameter of the
+ * lineStyle() method, the thickness of the line scales
+ * only vertically. For example, consider the following circles, drawn
+ * with a one-pixel line, and each with the scaleMode parameter
+ * set to LineScaleMode.VERTICAL. The circle on the left is
+ * scaled only vertically, and the circle on the right is scaled both
+ * vertically and horizontally.
+ */
+ static HORIZONTAL: string;
+ /**
+ * With this setting used as the scaleMode parameter of the
+ * lineStyle() method, the thickness of the line never scales.
+ */
+ static NONE: string;
+ /**
+ * With this setting used as the scaleMode parameter of the
+ * lineStyle() method, the thickness of the line always scales
+ * when the object is scaled(the default).
+ */
+ static NORMAL: string;
+ /**
+ * With this setting used as the scaleMode parameter of the
+ * lineStyle() method, the thickness of the line scales
+ * only horizontally. For example, consider the following circles,
+ * drawn with a one-pixel line, and each with the scaleMode
+ * parameter set to LineScaleMode.HORIZONTAL. The circle on the
+ * left is scaled only horizontally, and the circle on the right is scaled
+ * both vertically and horizontally.
+ */
+ static VERTICAL: string;
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ class LineSubGeometry extends base.SubGeometryBase {
+ static VERTEX_DATA: string;
+ static START_POSITION_DATA: string;
+ static END_POSITION_DATA: string;
+ static THICKNESS_DATA: string;
+ static COLOR_DATA: string;
+ static POSITION_FORMAT: string;
+ static COLOR_FORMAT: string;
+ static THICKNESS_FORMAT: string;
+ private _positionsDirty;
+ private _boundingPositionDirty;
+ private _thicknessDirty;
+ private _colorsDirty;
+ private _startPositions;
+ private _endPositions;
+ private _boundingPositions;
+ private _thickness;
+ private _startColors;
+ private _endColors;
+ private _numSegments;
+ private _positionsUpdated;
+ private _thicknessUpdated;
+ private _colorUpdated;
+ public _pUpdateStrideOffset(): void;
+ /**
+ *
+ */
+ public vertices : number[];
+ /**
+ *
+ */
+ public startPositions : number[];
+ /**
+ *
+ */
+ public endPositions : number[];
+ /**
+ *
+ */
+ public thickness : number[];
+ /**
+ *
+ */
+ public startColors : number[];
+ /**
+ *
+ */
+ public endColors : number[];
+ /**
+ * The total amount of segments in the TriangleSubGeometry.
+ */
+ public numSegments : number;
+ /**
+ *
+ */
+ constructor();
+ public getBoundingPositions(): number[];
+ /**
+ *
+ */
+ public updatePositions(startValues: number[], endValues: number[]): void;
+ /**
+ * Updates the thickness.
+ */
+ public updateThickness(values: number[]): void;
+ /**
+ *
+ */
+ public updateColors(startValues: number[], endValues: number[]): void;
+ /**
+ *
+ */
+ public dispose(): void;
+ /**
+ * @protected
+ */
+ public pInvalidateBounds(): void;
+ /**
+ * The Geometry object that 'owns' this TriangleSubGeometry object.
+ *
+ * @private
+ */
+ public parentGeometry: base.Geometry;
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ public clone(): LineSubGeometry;
+ public _pNotifyVerticesUpdate(): void;
+ private notifyPositionsUpdate();
+ private notifyThicknessUpdate();
+ private notifyColorsUpdate();
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * LineSubMesh wraps a LineSubGeometry as a scene graph instantiation. A LineSubMesh is owned by a Mesh object.
+ *
+ *
+ * @see away.base.LineSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.LineSubMesh
+ */
+ class LineSubMesh extends base.SubMeshBase implements base.ISubMesh {
+ private _subGeometry;
+ /**
+ *
*/
- static HORIZONTAL: string;
+ public assetType : string;
/**
- * With this setting used as the scaleMode parameter of the
- * lineStyle() method, the thickness of the line never scales.
+ * The LineSubGeometry object which provides the geometry data for this LineSubMesh.
*/
- static NONE: string;
+ public subGeometry : base.LineSubGeometry;
/**
- * With this setting used as the scaleMode parameter of the
- * lineStyle() method, the thickness of the line always scales
- * when the object is scaled(the default).
+ * Creates a new LineSubMesh object
+ * @param subGeometry The LineSubGeometry object which provides the geometry data for this LineSubMesh.
+ * @param parentMesh The Mesh object to which this LineSubMesh belongs.
+ * @param material An optional material used to render this LineSubMesh.
*/
- static NORMAL: string;
+ constructor(subGeometry: base.LineSubGeometry, parentMesh: away.entities.Mesh, material?: away.materials.IMaterial);
/**
- * With this setting used as the scaleMode parameter of the
- * lineStyle() method, the thickness of the line scales
- * only horizontally. For example, consider the following circles,
- * drawn with a one-pixel line, and each with the scaleMode
- * parameter set to LineScaleMode.HORIZONTAL. The circle on the
- * left is scaled only horizontally, and the circle on the right is scaled
- * both vertically and horizontally.
+ *
*/
- static VERTICAL: string;
+ public dispose(): void;
+ public _iCollectRenderable(renderer: away.render.IRenderer): void;
}
}
/**
@@ -4581,6 +5390,24 @@ declare module away.base {
*/
public bufferClear : boolean;
/**
+ * Assigns an attribute stream
+ *
+ * @param index The attribute stream index for the vertex shader
+ * @param buffer
+ * @param offset
+ * @param stride
+ * @param format
+ */
+ public activateBuffer(index: number, buffer: away.gl.VertexData, offset: number, format: string): void;
+ public disposeVertexData(buffer: away.gl.VertexData): void;
+ /**
+ * Retrieves the VertexBuffer object that contains triangle indices.
+ * @param context The ContextGL for which we request the buffer
+ * @return The VertexBuffer object that contains triangle indices.
+ */
+ public getIndexBuffer(buffer: away.gl.IndexData): away.gl.IndexBuffer;
+ public disposeIndexData(buffer: away.gl.IndexData): void;
+ /**
* Frees the ContextGL associated with this StageGLProxy.
*/
private freeContextGL();
@@ -4632,6 +5459,256 @@ declare module away.base {
}
}
/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ class TriangleSubGeometry extends base.SubGeometryBase {
+ static VERTEX_DATA: string;
+ static POSITION_DATA: string;
+ static NORMAL_DATA: string;
+ static TANGENT_DATA: string;
+ static UV_DATA: string;
+ static SECONDARY_UV_DATA: string;
+ static JOINT_INDEX_DATA: string;
+ static JOINT_WEIGHT_DATA: string;
+ static POSITION_FORMAT: string;
+ static NORMAL_FORMAT: string;
+ static TANGENT_FORMAT: string;
+ static UV_FORMAT: string;
+ static SECONDARY_UV_FORMAT: string;
+ private _positionsDirty;
+ private _faceNormalsDirty;
+ private _faceTangentsDirty;
+ private _vertexNormalsDirty;
+ private _vertexTangentsDirty;
+ private _uvsDirty;
+ private _secondaryUVsDirty;
+ private _jointIndicesDirty;
+ private _jointWeightsDirty;
+ private _positions;
+ private _vertexNormals;
+ private _vertexTangents;
+ private _uvs;
+ private _secondaryUVs;
+ private _jointIndices;
+ private _jointWeights;
+ private _useCondensedIndices;
+ private _condensedJointIndices;
+ private _condensedIndexLookUp;
+ private _numCondensedJoints;
+ private _jointsPerVertex;
+ private _concatenateArrays;
+ private _autoDeriveNormals;
+ private _autoDeriveTangents;
+ private _autoDeriveUVs;
+ private _useFaceWeights;
+ private _faceNormals;
+ private _faceTangents;
+ private _faceWeights;
+ private _scaleU;
+ private _scaleV;
+ private _positionsUpdated;
+ private _normalsUpdated;
+ private _tangentsUpdated;
+ private _uvsUpdated;
+ private _secondaryUVsUpdated;
+ private _jointIndicesUpdated;
+ private _jointWeightsUpdated;
+ /**
+ *
+ */
+ public scaleU : number;
+ /**
+ *
+ */
+ public scaleV : number;
+ /**
+ * Offers the option of enabling GPU accelerated animation on skeletons larger than 32 joints
+ * by condensing the number of joint index values required per mesh. Only applicable to
+ * skeleton animations that utilise more than one mesh object. Defaults to false.
+ */
+ public useCondensedIndices : boolean;
+ public _pUpdateStrideOffset(): void;
+ /**
+ *
+ */
+ public jointsPerVertex : number;
+ /**
+ * Defines whether a UV buffer should be automatically generated to contain dummy UV coordinates.
+ * Set to true if a geometry lacks UV data but uses a material that requires it, or leave as false
+ * in cases where UV data is explicitly defined or the material does not require UV data.
+ */
+ public autoDeriveUVs : boolean;
+ /**
+ * True if the vertex normals should be derived from the geometry, false if the vertex normals are set
+ * explicitly.
+ */
+ public autoDeriveNormals : boolean;
+ /**
+ * True if the vertex tangents should be derived from the geometry, false if the vertex normals are set
+ * explicitly.
+ */
+ public autoDeriveTangents : boolean;
+ /**
+ *
+ */
+ public vertices : number[];
+ /**
+ *
+ */
+ public positions : number[];
+ /**
+ *
+ */
+ public vertexNormals : number[];
+ /**
+ *
+ */
+ public vertexTangents : number[];
+ /**
+ * The raw data of the face normals, in the same order as the faces are listed in the index list.
+ */
+ public faceNormals : number[];
+ /**
+ * The raw data of the face tangets, in the same order as the faces are listed in the index list.
+ */
+ public faceTangents : number[];
+ /**
+ *
+ */
+ public uvs : number[];
+ /**
+ *
+ */
+ public secondaryUVs : number[];
+ /**
+ *
+ */
+ public jointIndices : number[];
+ /**
+ *
+ */
+ public jointWeights : number[];
+ /**
+ * Indicates whether or not to take the size of faces into account when auto-deriving vertex normals and tangents.
+ */
+ public useFaceWeights : boolean;
+ public numCondensedJoints : number;
+ public condensedIndexLookUp : number[];
+ /**
+ *
+ */
+ constructor(concatenatedArrays: boolean);
+ public getBoundingPositions(): number[];
+ /**
+ *
+ */
+ public updatePositions(values: number[]): void;
+ /**
+ * Updates the vertex normals based on the geometry.
+ */
+ public updateVertexNormals(values: number[]): void;
+ /**
+ * Updates the vertex tangents based on the geometry.
+ */
+ public updateVertexTangents(values: number[]): void;
+ /**
+ * Updates the uvs based on the geometry.
+ */
+ public updateUVs(values: number[]): void;
+ /**
+ * Updates the secondary uvs based on the geometry.
+ */
+ public updateSecondaryUVs(values: number[]): void;
+ /**
+ * Updates the joint indices
+ */
+ public updateJointIndices(values: number[]): void;
+ /**
+ * Updates the joint weights.
+ */
+ public updateJointWeights(values: number[]): void;
+ /**
+ *
+ */
+ public dispose(): void;
+ /**
+ * Updates the face indices of the TriangleSubGeometry.
+ *
+ * @param indices The face indices to upload.
+ */
+ public updateIndices(indices: number[]): void;
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ public clone(): TriangleSubGeometry;
+ public scaleUV(scaleU?: number, scaleV?: number): void;
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ public scale(scale: number): void;
+ public applyTransformation(transform: away.geom.Matrix3D): void;
+ /**
+ * Updates the tangents for each face.
+ */
+ private updateFaceTangents();
+ /**
+ * Updates the normals for each face.
+ */
+ private updateFaceNormals();
+ public _pNotifyVerticesUpdate(): void;
+ private notifyPositionsUpdate();
+ private notifyNormalsUpdate();
+ private notifyTangentsUpdate();
+ private notifyUVsUpdate();
+ private notifySecondaryUVsUpdate();
+ private notifyJointIndicesUpdate();
+ private notifyJointWeightsUpdate();
+ }
+}
+/**
+* @module away.base
+*/
+declare module away.base {
+ /**
+ * TriangleSubMesh wraps a TriangleSubGeometry as a scene graph instantiation. A TriangleSubMesh is owned by a Mesh object.
+ *
+ *
+ * @see away.base.TriangleSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.TriangleSubMesh
+ */
+ class TriangleSubMesh extends base.SubMeshBase implements base.ISubMesh {
+ private _subGeometry;
+ /**
+ *
+ */
+ public assetType : string;
+ /**
+ * The TriangleSubGeometry object which provides the geometry data for this TriangleSubMesh.
+ */
+ public subGeometry : base.TriangleSubGeometry;
+ /**
+ * Creates a new TriangleSubMesh object
+ * @param subGeometry The TriangleSubGeometry object which provides the geometry data for this TriangleSubMesh.
+ * @param parentMesh The Mesh object to which this TriangleSubMesh belongs.
+ * @param material An optional material used to render this TriangleSubMesh.
+ */
+ constructor(subGeometry: base.TriangleSubGeometry, parentMesh: away.entities.Mesh, material?: away.materials.IMaterial);
+ /**
+ *
+ */
+ public dispose(): void;
+ public _iCollectRenderable(renderer: away.render.IRenderer): void;
+ }
+}
+/**
* @module away.pool
*/
declare module away.pool {
@@ -4709,7 +5786,15 @@ declare module away.pool {
/**
*
*/
- _iUpdate(): any;
+ invalidateGeometry(): any;
+ /**
+ *
+ */
+ invalidateIndexData(): any;
+ /**
+ *
+ */
+ invalidateVertexData(dataType: string): any;
}
}
/**
@@ -4840,7 +5925,15 @@ declare module away.pool {
/**
*
*/
- public _iUpdate(): void;
+ public invalidateGeometry(): void;
+ /**
+ *
+ */
+ public invalidateIndexData(): void;
+ /**
+ *
+ */
+ public invalidateVertexData(dataType: string): void;
}
}
/**
@@ -4856,6 +5949,18 @@ declare module away.pool {
}
}
/**
+* @module away.data
+*/
+declare module away.pool {
+ /**
+ * @class away.pool.RenderableListItem
+ */
+ class CSSLineSegmentRenderable extends pool.CSSRenderableBase {
+ static id: string;
+ constructor(pool: pool.RenderablePool, lineSegment: away.entities.LineSegment);
+ }
+}
+/**
* @module away.traverse
*/
declare module away.traverse {
@@ -5040,16 +6145,20 @@ declare module away.partition {
* @class away.partition.NodeBase
*/
class NodeBase {
+ private _boundsChildrenVisible;
+ private _explicitBoundsVisible;
+ private _implicitBoundsVisible;
public _iParent: NodeBase;
public _pChildNodes: NodeBase[];
public _pNumChildNodes: number;
- public _pDebugPrimitive: away.entities.IEntity;
+ public _pBoundsPrimitive: away.entities.IEntity;
public _iNumEntities: number;
public _iCollectionMark: number;
/**
*
*/
- public showDebugBounds : boolean;
+ public boundsVisible : boolean;
+ public boundsChildrenVisible : boolean;
/**
*
*/
@@ -5098,7 +6207,7 @@ declare module away.partition {
*
* @protected
*/
- public pCreateDebugBounds(): away.entities.IEntity;
+ public _pCreateBoundsPrimitive(): away.entities.IEntity;
/**
*
* @param node
@@ -5111,6 +6220,12 @@ declare module away.partition {
* @internal
*/
public iRemoveNode(node: NodeBase): void;
+ private _iUpdateImplicitBoundsVisible(value);
+ /**
+ * @internal
+ */
+ public _iIsBoundsVisible(): boolean;
+ public _iUpdateEntityBounds(): void;
}
}
/**
@@ -5138,8 +6253,8 @@ declare module away.partition {
constructor(rootNode: partition.NodeBase);
public rootNode : partition.NodeBase;
public traverse(traverser: away.traverse.ICollector): void;
- public iMarkForUpdate(entity: away.entities.IEntity): void;
- public iRemoveEntity(entity: away.entities.IEntity): void;
+ public iMarkForUpdate(entity: away.base.DisplayObject): void;
+ public iRemoveEntity(entity: away.base.DisplayObject): void;
private updateEntities();
}
}
@@ -5176,6 +6291,11 @@ declare module away.partition {
* @inheritDoc
*/
public isIntersectingRay(rayPosition: away.geom.Vector3D, rayDirection: away.geom.Vector3D): boolean;
+ /**
+ *
+ * @protected
+ */
+ public _pCreateBoundsPrimitive(): away.entities.IEntity;
}
}
/**
@@ -5194,6 +6314,31 @@ declare module away.partition {
}
}
/**
+* @module away.partition
+*/
+declare module away.partition {
+ /**
+ * SkyboxNode is a space partitioning leaf node that contains a Skybox object.
+ *
+ * @class away.partition.SkyboxNode
+ */
+ class SkyboxNode extends partition.EntityNode {
+ private _skyBox;
+ /**
+ * Creates a new SkyboxNode object.
+ * @param skyBox The Skybox to be contained in the node.
+ */
+ constructor(skyBox: away.entities.IEntity);
+ /**
+ *
+ * @param planes
+ * @param numPlanes
+ * @returns {boolean}
+ */
+ public isInFrustum(planes: away.geom.Plane3D[], numPlanes: number): boolean;
+ }
+}
+/**
* @module away.pick
*/
declare module away.pick {
@@ -5401,129 +6546,83 @@ declare module away.render {
*
*/
renderableSorter: away.sort.IEntitySorter;
- shareContext: boolean;
- x: number;
- y: number;
- width: number;
- height: number;
- viewPort: away.geom.Rectangle;
- scissorRect: away.geom.Rectangle;
- dispose(): any;
- render(entityCollector: away.traverse.ICollector): any;
- /**
- * @internal
- */
- _iBackgroundR: number;
/**
- * @internal
+ *
*/
- _iBackgroundG: number;
+ shareContext: boolean;
/**
- * @internal
+ *
*/
- _iBackgroundB: number;
+ x: number;
/**
- * @internal
+ *
*/
- _iBackgroundAlpha: number;
+ y: number;
/**
- * @internal
+ *
*/
- _iCreateEntityCollector(): away.traverse.ICollector;
- }
-}
-/**
-* @module away.render
-*/
-declare module away.render {
- /**
- * RendererBase forms an abstract base class for classes that are used in the rendering pipeline to render the
- * contents of a partition
- *
- * @class away.render.RendererBase
- */
- class CSSRendererBase extends away.events.EventDispatcher {
- private _billboardRenderablePool;
- public _pCamera: away.entities.Camera;
- public _iEntryPoint: away.geom.Vector3D;
- public _pCameraForward: away.geom.Vector3D;
- private _backgroundR;
- private _backgroundG;
- private _backgroundB;
- private _backgroundAlpha;
- private _shareContext;
- public _pBackBufferInvalid: boolean;
- public _depthTextureInvalid: boolean;
- public _renderableHead: away.pool.CSSRenderableBase;
+ width: number;
/**
- * Creates a new RendererBase object.
+ *
*/
- constructor(renderToTexture?: boolean, forceSoftware?: boolean, profile?: string);
+ height: number;
/**
- * The background color's red component, used when clearing.
*
- * @private
*/
- public _iBackgroundR : number;
+ viewPort: away.geom.Rectangle;
/**
- * The background color's green component, used when clearing.
*
- * @private
*/
- public _iBackgroundG : number;
+ scissorRect: away.geom.Rectangle;
/**
- * The background color's blue component, used when clearing.
*
- * @private
+ * @param billboard
*/
- public _iBackgroundB : number;
- public shareContext : boolean;
+ applyBillboard(billboard: away.entities.Billboard): any;
/**
- * Disposes the resources used by the RendererBase.
+ *
+ * @param triangleSubMesh
*/
- public dispose(): void;
- public render(entityCollector: away.traverse.ICollector): void;
+ applyLineSubMesh(triangleSubMesh: away.base.LineSubMesh): any;
/**
- * Renders the potentially visible geometry to the back buffer or texture.
- * @param entityCollector The EntityCollector object containing the potentially visible geometry.
- * @param scissorRect
+ *
+ * @param skybox
*/
- public _iRender(entityCollector: away.traverse.CSSEntityCollector, scissorRect?: away.geom.Rectangle): void;
- public pCollectRenderables(entityCollector: away.traverse.ICollector): void;
+ applySkybox(skybox: away.entities.Skybox): any;
/**
- * Renders the potentially visible geometry to the back buffer or texture. Only executed if everything is set up.
- * @param entityCollector The EntityCollector object containing the potentially visible geometry.
- * @param scissorRect
+ *
+ * @param triangleSubMesh
*/
- public pExecuteRender(entityCollector: away.traverse.CSSEntityCollector, scissorRect?: away.geom.Rectangle): void;
+ applyTriangleSubMesh(triangleSubMesh: away.base.TriangleSubMesh): any;
/**
- * Performs the actual drawing of dom objects to the target.
*
- * @param entityCollector The EntityCollector object containing the potentially visible dom objects.
*/
- public pDraw(entityCollector: away.traverse.CSSEntityCollector): void;
- public _iBackgroundAlpha : number;
+ dispose(): any;
/**
*
+ * @param entityCollector
*/
- public updateGlobalPos(): void;
+ render(entityCollector: away.traverse.ICollector): any;
/**
- *
- * @param billboard
- * @protected
+ * @internal
*/
- public applyBillboard(billboard: away.entities.Billboard): void;
+ _iBackgroundR: number;
/**
- *
- * @param renderable
- * @private
+ * @internal
*/
- private applyRenderable(renderable);
+ _iBackgroundG: number;
/**
- *
- * @param entity
+ * @internal
+ */
+ _iBackgroundB: number;
+ /**
+ * @internal
+ */
+ _iBackgroundAlpha: number;
+ /**
+ * @internal
*/
- public pFindRenderables(entity: away.entities.IEntity): void;
+ _iCreateEntityCollector(): away.traverse.ICollector;
}
}
/**
@@ -5531,19 +6630,25 @@ declare module away.render {
*/
declare module away.render {
/**
- * The DefaultRenderer class provides the default rendering method. It renders the scene graph objects using the
- * materials assigned to them.
+ * RendererBase forms an abstract base class for classes that are used in the rendering pipeline to render the
+ * contents of a partition
*
- * @class away.render.DefaultRenderer
+ * @class away.render.RendererBase
*/
- class CSSDefaultRenderer extends render.CSSRendererBase implements render.IRenderer {
- private _container;
- private _context;
- private _contextStyle;
- private _contextMatrix;
- private _activeMaterial;
- private _skyboxProjection;
- private _transform;
+ class CSSRendererBase extends away.events.EventDispatcher {
+ private _billboardRenderablePool;
+ private _lineSegmentRenderablePool;
+ public _pCamera: away.entities.Camera;
+ public _iEntryPoint: away.geom.Vector3D;
+ public _pCameraForward: away.geom.Vector3D;
+ private _backgroundR;
+ private _backgroundG;
+ private _backgroundB;
+ private _backgroundAlpha;
+ private _shareContext;
+ public _pBackBufferInvalid: boolean;
+ public _depthTextureInvalid: boolean;
+ public _renderableHead: away.pool.CSSRenderableBase;
public _width: number;
public _height: number;
private _viewPort;
@@ -5583,321 +6688,166 @@ declare module away.render {
*/
public renderableSorter: away.sort.IEntitySorter;
/**
- * Creates a new CSSDefaultRenderer object.
+ * Creates a new RendererBase object.
*/
- constructor();
+ constructor(renderToTexture?: boolean, forceSoftware?: boolean, profile?: string);
/**
+ * The background color's red component, used when clearing.
*
- * @param entityCollector
+ * @private
*/
- public render(entityCollector: away.traverse.ICollector): void;
+ public _iBackgroundR : number;
/**
- * @inheritDoc
+ * The background color's green component, used when clearing.
+ *
+ * @private
*/
- public pDraw(entityCollector: away.traverse.CSSEntityCollector): void;
+ public _iBackgroundG : number;
/**
- * Updates the backbuffer properties.
+ * The background color's blue component, used when clearing.
+ *
+ * @private
*/
- public pUpdateBackBuffer(): void;
+ public _iBackgroundB : number;
+ public shareContext : boolean;
/**
- * Draw the skybox if present.
- * @param entityCollector The EntityCollector containing all potentially visible information.
+ * Disposes the resources used by the RendererBase.
*/
- private drawSkyBox(entityCollector);
+ public dispose(): void;
+ public render(entityCollector: away.traverse.ICollector): void;
/**
- * Draw a list of renderables.
- * @param renderables The renderables to draw.
- * @param entityCollector The EntityCollector containing all potentially visible information.
+ * Renders the potentially visible geometry to the back buffer or texture.
+ * @param entityCollector The EntityCollector object containing the potentially visible geometry.
+ * @param scissorRect
*/
- private drawRenderables(item, entityCollector);
- public dispose(): void;
+ public _iRender(entityCollector: away.traverse.CSSEntityCollector, scissorRect?: away.geom.Rectangle): void;
+ public pCollectRenderables(entityCollector: away.traverse.ICollector): void;
/**
- * @private
+ * Renders the potentially visible geometry to the back buffer or texture. Only executed if everything is set up.
+ * @param entityCollector The EntityCollector object containing the potentially visible geometry.
+ * @param scissorRect
*/
- private notifyScissorUpdate();
+ public pExecuteRender(entityCollector: away.traverse.CSSEntityCollector, scissorRect?: away.geom.Rectangle): void;
/**
- * @private
+ * Performs the actual drawing of dom objects to the target.
+ *
+ * @param entityCollector The EntityCollector object containing the potentially visible dom objects.
*/
- private notifyViewportUpdate();
+ public pDraw(entityCollector: away.traverse.CSSEntityCollector): void;
+ public _iBackgroundAlpha : number;
/**
*
+ * @param billboard
*/
- public updateGlobalPos(): void;
- public _iCreateEntityCollector(): away.traverse.ICollector;
- }
-}
-/**
-* @module away.sort
-*/
-declare module away.sort {
- /**
- * @interface away.sort.IEntitySorter
- */
- interface IEntitySorter {
- sortBlendedRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
- sortOpaqueRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
- }
-}
-/**
-* @module away.sort
-*/
-declare module away.sort {
- /**
- * @class away.sort.RenderableMergeSort
- */
- class RenderableMergeSort implements sort.IEntitySorter {
- public sortBlendedRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
- public sortOpaqueRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
- }
-}
-declare module away.gl {
- class ContextGLClearMask {
- static COLOR: number;
- static DEPTH: number;
- static STENCIL: number;
- static ALL: number;
- }
-}
-declare module away.gl {
- class VertexBuffer {
- private _gl;
- private _numVertices;
- private _data32PerVertex;
- private _buffer;
- constructor(gl: WebGLRenderingContext, numVertices: number, data32PerVertex: number);
- public uploadFromArray(vertices: number[], startVertex: number, numVertices: number): void;
- public numVertices : number;
- public data32PerVertex : number;
- public glBuffer : WebGLBuffer;
- public dispose(): void;
- }
-}
-declare module away.gl {
- class IndexBuffer {
- private _gl;
- private _numIndices;
- private _buffer;
- constructor(gl: WebGLRenderingContext, numIndices: number);
- public uploadFromArray(data: number[], startOffset: number, count: number): void;
- public dispose(): void;
- public numIndices : number;
- public glBuffer : WebGLBuffer;
- }
-}
-declare module away.gl {
- class Program {
- private _gl;
- private _program;
- private _vertexShader;
- private _fragmentShader;
- constructor(gl: WebGLRenderingContext);
- public upload(vertexProgram: string, fragmentProgram: string): any;
- public dispose(): void;
- public focusProgram(): void;
- public glProgram : WebGLProgram;
- }
-}
-declare module away.gl {
- class SamplerState {
- public wrap: number;
- public filter: number;
- public mipfilter: number;
- }
-}
-declare module away.gl {
- class ContextGLTextureFormat {
- static BGRA: string;
- static BGRA_PACKED: string;
- static BGR_PACKED: string;
- static COMPRESSED: string;
- static COMPRESSED_ALPHA: string;
- }
-}
-declare module away.gl {
- class TextureBase {
- public textureType: string;
- public _gl: WebGLRenderingContext;
- constructor(gl: WebGLRenderingContext);
- public dispose(): void;
- }
-}
-declare module away.gl {
- class Texture extends gl.TextureBase {
- public textureType: string;
- private _width;
- private _height;
- private _frameBuffer;
- private _glTexture;
- constructor(gl: WebGLRenderingContext, width: number, height: number);
- public dispose(): void;
- public width : number;
- public height : number;
- public frameBuffer : WebGLFramebuffer;
- public uploadFromHTMLImageElement(image: HTMLImageElement, miplevel?: number): void;
- public uploadFromBitmapData(data: away.base.BitmapData, miplevel?: number): void;
- public uploadCompressedTextureFromByteArray(data: away.utils.ByteArray, byteArrayOffset: number, async?: boolean): void;
- public glTexture : WebGLTexture;
- public generateFromRenderBuffer(data: away.base.BitmapData): void;
- public generateMipmaps(): void;
+ public applyBillboard(billboard: away.entities.Billboard): void;
+ /**
+ *
+ * @param lineSubMesh
+ */
+ public applyLineSubMesh(lineSubMesh: away.base.LineSubMesh): void;
+ /**
+ *
+ * @param skybox
+ */
+ public applySkybox(skybox: away.entities.Skybox): void;
+ /**
+ *
+ * @param triangleSubMesh
+ */
+ public applyTriangleSubMesh(triangleSubMesh: away.base.TriangleSubMesh): void;
+ /**
+ *
+ * @param renderable
+ * @private
+ */
+ private _applyRenderable(renderable);
+ /**
+ * @private
+ */
+ private notifyScissorUpdate();
+ /**
+ * @private
+ */
+ private notifyViewportUpdate();
+ /**
+ *
+ */
+ public updateGlobalPos(): void;
+ public _iCreateEntityCollector(): away.traverse.ICollector;
}
}
-declare module away.gl {
- class CubeTexture extends gl.TextureBase {
- public textureType: string;
- private _texture;
- private _size;
- constructor(gl: WebGLRenderingContext, size: number);
+/**
+* @module away.render
+*/
+declare module away.render {
+ /**
+ * The DefaultRenderer class provides the default rendering method. It renders the scene graph objects using the
+ * materials assigned to them.
+ *
+ * @class away.render.DefaultRenderer
+ */
+ class CSSDefaultRenderer extends render.CSSRendererBase implements render.IRenderer {
+ private _container;
+ private _context;
+ private _contextStyle;
+ private _contextMatrix;
+ private _activeMaterial;
+ private _skyboxProjection;
+ private _transform;
+ /**
+ * Creates a new CSSDefaultRenderer object.
+ */
+ constructor();
+ /**
+ *
+ * @param entityCollector
+ */
+ public render(entityCollector: away.traverse.ICollector): void;
+ /**
+ * @inheritDoc
+ */
+ public pDraw(entityCollector: away.traverse.CSSEntityCollector): void;
+ /**
+ * Updates the backbuffer properties.
+ */
+ public pUpdateBackBuffer(): void;
+ /**
+ * Draw the skybox if present.
+ * @param entityCollector The EntityCollector containing all potentially visible information.
+ */
+ private drawSkyBox(entityCollector);
+ /**
+ * Draw a list of renderables.
+ * @param renderables The renderables to draw.
+ * @param entityCollector The EntityCollector containing all potentially visible information.
+ */
+ private drawRenderables(item, entityCollector);
public dispose(): void;
- public uploadFromHTMLImageElement(image: HTMLImageElement, side: number, miplevel?: number): void;
- public uploadFromBitmapData(data: away.base.BitmapData, side: number, miplevel?: number): void;
- public uploadCompressedTextureFromByteArray(data: away.utils.ByteArray, byteArrayOffset: number, async?: boolean): void;
- public size : number;
- public glTexture : WebGLTexture;
- }
-}
-declare module away.gl {
- class ContextGLTriangleFace {
- static BACK: string;
- static FRONT: string;
- static FRONT_AND_BACK: string;
- static NONE: string;
- }
-}
-declare module away.gl {
- class ContextGLVertexBufferFormat {
- static BYTES_4: string;
- static FLOAT_1: string;
- static FLOAT_2: string;
- static FLOAT_3: string;
- static FLOAT_4: string;
- }
-}
-declare module away.gl {
- class ContextGLProgramType {
- static FRAGMENT: string;
- static VERTEX: string;
- }
-}
-declare module away.gl {
- class ContextGLBlendFactor {
- static DESTINATION_ALPHA: string;
- static DESTINATION_COLOR: string;
- static ONE: string;
- static ONE_MINUS_DESTINATION_ALPHA: string;
- static ONE_MINUS_DESTINATION_COLOR: string;
- static ONE_MINUS_SOURCE_ALPHA: string;
- static ONE_MINUS_SOURCE_COLOR: string;
- static SOURCE_ALPHA: string;
- static SOURCE_COLOR: string;
- static ZERO: string;
- }
-}
-declare module away.gl {
- class ContextGLCompareMode {
- static ALWAYS: string;
- static EQUAL: string;
- static GREATER: string;
- static GREATER_EQUAL: string;
- static LESS: string;
- static LESS_EQUAL: string;
- static NEVER: string;
- static NOT_EQUAL: string;
- }
-}
-declare module away.gl {
- class ContextGLMipFilter {
- static MIPLINEAR: string;
- static MIPNEAREST: string;
- static MIPNONE: string;
- }
-}
-declare module away.gl {
- class ContextGLProfile {
- static BASELINE: string;
- static BASELINE_CONSTRAINED: string;
- static BASELINE_EXTENDED: string;
- }
-}
-declare module away.gl {
- class ContextGLStencilAction {
- static DECREMENT_SATURATE: string;
- static DECREMENT_WRAP: string;
- static INCREMENT_SATURATE: string;
- static INCREMENT_WRAP: string;
- static INVERT: string;
- static KEEP: string;
- static SET: string;
- static ZERO: string;
- }
-}
-declare module away.gl {
- class ContextGLTextureFilter {
- static LINEAR: string;
- static NEAREST: string;
- }
-}
-declare module away.gl {
- class ContextGLWrapMode {
- static CLAMP: string;
- static REPEAT: string;
+ public _iCreateEntityCollector(): away.traverse.ICollector;
}
}
-declare module away.gl {
- class ContextGL {
- private _drawing;
- private _blendEnabled;
- private _blendSourceFactor;
- private _blendDestinationFactor;
- private _currentWrap;
- private _currentFilter;
- private _currentMipFilter;
- private _indexBufferList;
- private _vertexBufferList;
- private _textureList;
- private _programList;
- private _samplerStates;
- static MAX_SAMPLERS: number;
- public _gl: WebGLRenderingContext;
- public _currentProgram: gl.Program;
- constructor(canvas: HTMLCanvasElement);
- public gl(): WebGLRenderingContext;
- public clear(red?: number, green?: number, blue?: number, alpha?: number, depth?: number, stencil?: number, mask?: number): void;
- public configureBackBuffer(width: number, height: number, antiAlias: number, enableDepthAndStencil?: boolean): void;
- public createCubeTexture(size: number, format: string, optimizeForRenderToTexture: boolean, streamingLevels?: number): gl.CubeTexture;
- public createIndexBuffer(numIndices: number): gl.IndexBuffer;
- public createProgram(): gl.Program;
- public createTexture(width: number, height: number, format: string, optimizeForRenderToTexture: boolean, streamingLevels?: number): gl.Texture;
- public createVertexBuffer(numVertices: number, data32PerVertex: number): gl.VertexBuffer;
- public dispose(): void;
- public drawToBitmapData(destination: away.base.BitmapData): void;
- public drawTriangles(indexBuffer: gl.IndexBuffer, firstIndex?: number, numTriangles?: number): void;
- public present(): void;
- public setBlendFactors(sourceFactor: string, destinationFactor: string): void;
- public setColorMask(red: boolean, green: boolean, blue: boolean, alpha: boolean): void;
- public setCulling(triangleFaceToCull: string, coordinateSystem?: string): void;
- public setDepthTest(depthMask: boolean, passCompareMode: string): void;
- public setProgram(program: gl.Program): void;
- private getUniformLocationNameFromAgalRegisterIndex(programType, firstRegister);
- public setProgramConstantsFromMatrix(programType: string, firstRegister: number, matrix: away.geom.Matrix3D, transposedMatrix?: boolean): void;
- static modulo: number;
- public setProgramConstantsFromArray(programType: string, firstRegister: number, data: number[], numRegisters?: number): void;
- public setGLSLProgramConstantsFromMatrix(locationName: string, matrix: away.geom.Matrix3D, transposedMatrix?: boolean): void;
- public setGLSLProgramConstantsFromArray(locationName: string, data: number[], startIndex?: number): void;
- public setScissorRectangle(rectangle: away.geom.Rectangle): void;
- public setTextureAt(sampler: number, texture: gl.TextureBase): void;
- public setGLSLTextureAt(locationName: string, texture: gl.TextureBase, textureIndex: number): void;
- public setSamplerStateAt(sampler: number, wrap: string, filter: string, mipfilter: string): void;
- public setVertexBufferAt(index: number, buffer: gl.VertexBuffer, bufferOffset?: number, format?: string): void;
- public setGLSLVertexBufferAt(locationName: any, buffer: gl.VertexBuffer, bufferOffset?: number, format?: string): void;
- public setRenderToTexture(target: gl.TextureBase, enableDepthAndStencil?: boolean, antiAlias?: number, surfaceSelector?: number): void;
- public setRenderToBackBuffer(): void;
- private updateBlendStatus();
+/**
+* @module away.sort
+*/
+declare module away.sort {
+ /**
+ * @interface away.sort.IEntitySorter
+ */
+ interface IEntitySorter {
+ sortBlendedRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
+ sortOpaqueRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
}
}
-declare module away.gl {
- class AGLSLContextGL extends gl.ContextGL {
- constructor(canvas: HTMLCanvasElement);
- public setProgramConstantsFromMatrix(programType: string, firstRegister: number, matrix: away.geom.Matrix3D, transposedMatrix?: boolean): void;
+/**
+* @module away.sort
+*/
+declare module away.sort {
+ /**
+ * @class away.sort.RenderableMergeSort
+ */
+ class RenderableMergeSort implements sort.IEntitySorter {
+ public sortBlendedRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
+ public sortOpaqueRenderables(head: away.pool.IRenderable): away.pool.IRenderable;
}
}
/**
@@ -7699,10 +8649,9 @@ declare module away.geom {
}
declare module away.geom {
class UVTransform {
- private _materialOwner;
private _uvMatrix;
private _uvMatrixDirty;
- private _rotationUV;
+ private _rotation;
private _scaleU;
private _scaleV;
private _offsetU;
@@ -7718,7 +8667,7 @@ declare module away.geom {
/**
*
*/
- public rotationUV : number;
+ public rotation : number;
/**
*
*/
@@ -7731,7 +8680,7 @@ declare module away.geom {
*
*/
public matrix : geom.Matrix;
- constructor(materialOwner: away.base.IMaterialOwner);
+ constructor();
/**
* @private
*/
@@ -10605,6 +11554,12 @@ declare module away.entities {
* return the scene transform.
*/
getRenderSceneTransform(camera: entities.Camera): away.geom.Matrix3D;
+ /**
+ *
+ * @param renderer
+ * @private
+ */
+ _iCollectRenderables(renderer: away.render.IRenderer): any;
}
}
/**
@@ -10693,13 +11648,9 @@ declare module away.entities {
/**
* Controls whether or not the bitmap is smoothed when scaled. If
* true, the bitmap is smoothed when scaled. If
- * false, the bitmap is not smoothed when scaled.
- */
- public smoothing: boolean;
- /**
- *
+ * false, the bitmap is not smoothed when scaled.
*/
- public sourceEntity : entities.IEntity;
+ public smoothing: boolean;
/**
*
*/
@@ -10714,10 +11665,6 @@ declare module away.entities {
*/
public pUpdateBounds(): void;
/**
- * @internal
- */
- public _iSetUVMatrixComponents(offsetU: number, offsetV: number, scaleU: number, scaleV: number, rotationUV: number): void;
- /**
* //TODO
*
* @param shortestCollisionDistance
@@ -10731,6 +11678,8 @@ declare module away.entities {
* @private
*/
private onSizeChanged(event);
+ public _iCollectRenderables(renderer: away.render.IRenderer): void;
+ public _iCollectRenderable(renderer: away.render.IRenderer): void;
}
}
declare module away.entities {
@@ -10792,6 +11741,225 @@ declare module away.entities {
* @return The scene position of the given screen coordinates.
*/
public unproject(nX: number, nY: number, sZ: number): away.geom.Vector3D;
+ public _iCollectRenderables(renderer: away.render.IRenderer): void;
+ public _iCollectRenderable(renderer: away.render.IRenderer): void;
+ }
+}
+declare module away.entities {
+ /**
+ * A Line Segment primitive.
+ */
+ class LineSegment extends away.base.DisplayObject implements entities.IEntity, away.base.IMaterialOwner {
+ private _animator;
+ private _material;
+ private _uvTransform;
+ private onSizeChangedDelegate;
+ public _startPosition: away.geom.Vector3D;
+ public _endPosition: away.geom.Vector3D;
+ public _halfThickness: number;
+ /**
+ * Defines the animator of the line segment. Act on the line segment's geometry. Defaults to null
+ */
+ public animator : away.animators.IAnimator;
+ /**
+ *
+ */
+ public assetType : string;
+ /**
+ *
+ */
+ public startPostion : away.geom.Vector3D;
+ public startPosition : away.geom.Vector3D;
+ /**
+ *
+ */
+ public endPosition : away.geom.Vector3D;
+ /**
+ *
+ */
+ public material : away.materials.IMaterial;
+ /**
+ *
+ */
+ public thickness : number;
+ /**
+ *
+ */
+ public uvTransform : away.geom.UVTransform;
+ /**
+ * Create a line segment
+ *
+ * @param startPosition Start position of the line segment
+ * @param endPosition Ending position of the line segment
+ * @param thickness Thickness of the line
+ */
+ constructor(material: away.materials.IMaterial, startPosition: away.geom.Vector3D, endPosition: away.geom.Vector3D, thickness?: number);
+ public dispose(): void;
+ /**
+ * @protected
+ */
+ public pCreateEntityPartitionNode(): away.partition.EntityNode;
+ /**
+ * @protected
+ */
+ public pUpdateBounds(): void;
+ /**
+ * @private
+ */
+ private onSizeChanged(event);
+ /**
+ * @private
+ */
+ private notifyRenderableUpdate();
+ public _iCollectRenderables(renderer: away.render.IRenderer): void;
+ public _iCollectRenderable(renderer: away.render.IRenderer): void;
+ }
+}
+declare module away.entities {
+ /**
+ * Mesh is an instance of a Geometry, augmenting it with a presence in the scene graph, a material, and an animation
+ * state. It consists out of SubMeshes, which in turn correspond to SubGeometries. SubMeshes allow different parts
+ * of the geometry to be assigned different materials.
+ */
+ class Mesh extends away.containers.DisplayObjectContainer implements entities.IEntity {
+ private _uvTransform;
+ private _subMeshes;
+ private _geometry;
+ private _material;
+ private _animator;
+ private _castsShadows;
+ private _shareAnimationGeometry;
+ private _onGeometryBoundsInvalidDelegate;
+ private _onSubGeometryAddedDelegate;
+ private _onSubGeometryRemovedDelegate;
+ /**
+ * Defines the animator of the mesh. Act on the mesh's geometry. Default value is null.
+ */
+ public animator : away.animators.IAnimator;
+ /**
+ *
+ */
+ public assetType : string;
+ /**
+ * Indicates whether or not the Mesh can cast shadows. Default value is true.
+ */
+ public castsShadows : boolean;
+ /**
+ * The geometry used by the mesh that provides it with its shape.
+ */
+ public geometry : away.base.Geometry;
+ /**
+ * The material with which to render the Mesh.
+ */
+ public material : away.materials.IMaterial;
+ /**
+ * Indicates whether or not the mesh share the same animation geometry.
+ */
+ public shareAnimationGeometry : boolean;
+ /**
+ * The SubMeshes out of which the Mesh consists. Every SubMesh can be assigned a material to override the Mesh's
+ * material.
+ */
+ public subMeshes : away.base.ISubMesh[];
+ /**
+ *
+ */
+ public uvTransform : away.geom.UVTransform;
+ /**
+ * Create a new Mesh object.
+ *
+ * @param geometry The geometry used by the mesh that provides it with its shape.
+ * @param material [optional] The material with which to render the Mesh.
+ */
+ constructor(geometry: away.base.Geometry, material?: away.materials.IMaterial);
+ /**
+ *
+ */
+ public bakeTransformations(): void;
+ /**
+ * @inheritDoc
+ */
+ public dispose(): void;
+ /**
+ * Disposes mesh including the animator and children. This is a merely a convenience method.
+ * @return
+ */
+ public disposeWithAnimatorAndChildren(): void;
+ /**
+ * Clones this Mesh instance along with all it's children, while re-using the same
+ * material, geometry and animation set. The returned result will be a copy of this mesh,
+ * containing copies of all of it's children.
+ *
+ * Properties that are re-used (i.e. not cloned) by the new copy include name,
+ * geometry, and material. Properties that are cloned or created anew for the copy
+ * include subMeshes, children of the mesh, and the animator.
+ *
+ * If you want to copy just the mesh, reusing it's geometry and material while not
+ * cloning it's children, the simplest way is to create a new mesh manually:
+ *
+ *
+ * var clone : Mesh = new Mesh(original.geometry, original.material);
+ *
+ */
+ public clone(): away.base.DisplayObject;
+ /**
+ * //TODO
+ *
+ * @param subGeometry
+ * @returns {SubMeshBase}
+ */
+ public getSubMeshFromSubGeometry(subGeometry: away.base.TriangleSubGeometry): away.base.ISubMesh;
+ /**
+ * @protected
+ */
+ public pCreateEntityPartitionNode(): away.partition.EntityNode;
+ /**
+ * //TODO
+ *
+ * @protected
+ */
+ public pUpdateBounds(): void;
+ /**
+ * //TODO
+ *
+ * @private
+ */
+ private onGeometryBoundsInvalid(event);
+ /**
+ * Called when a SubGeometry was added to the Geometry.
+ *
+ * @private
+ */
+ private onSubGeometryAdded(event);
+ /**
+ * Called when a SubGeometry was removed from the Geometry.
+ *
+ * @private
+ */
+ private onSubGeometryRemoved(event);
+ /**
+ * Adds a SubMeshBase wrapping a SubGeometry.
+ *
+ * @param subGeometry
+ */
+ private addSubMesh(subGeometry);
+ /**
+ * //TODO
+ *
+ * @param shortestCollisionDistance
+ * @param findClosest
+ * @returns {boolean}
+ *
+ * @internal
+ */
+ public _iTestCollision(shortestCollisionDistance: number, findClosest: boolean): boolean;
+ /**
+ *
+ * @param renderer
+ *
+ * @internal
+ */
+ public _iCollectRenderables(renderer: away.render.IRenderer): void;
}
}
/**
@@ -10822,6 +11990,53 @@ declare module away.entities {
constructor();
}
}
+declare module away.entities {
+ /**
+ * A Skybox class is used to render a sky in the scene. It's always considered static and 'at infinity', and as
+ * such it's always centered at the camera's position and sized to exactly fit within the camera's frustum, ensuring
+ * the sky box is always as large as possible without being clipped.
+ */
+ class Skybox extends away.base.DisplayObject implements entities.IEntity, away.base.IMaterialOwner {
+ private _uvTransform;
+ private _material;
+ private _animator;
+ public animator : away.animators.IAnimator;
+ /**
+ *
+ */
+ public uvTransform : away.geom.UVTransform;
+ /**
+ * Create a new Skybox object.
+ *
+ * @param material The material with which to render the Skybox.
+ */
+ constructor(material: away.materials.IMaterial);
+ /**
+ * The material with which to render the Skybox.
+ */
+ public material : away.materials.IMaterial;
+ public assetType : string;
+ /**
+ * @protected
+ */
+ public pInvalidateBounds(): void;
+ /**
+ * @protected
+ */
+ public pCreateEntityPartitionNode(): away.partition.EntityNode;
+ /**
+ * @protected
+ */
+ public pGetDefaultBoundingVolume(): away.bounds.BoundingVolumeBase;
+ /**
+ * @protected
+ */
+ public pUpdateBounds(): void;
+ public castsShadows : boolean;
+ public _iCollectRenderables(renderer: away.render.IRenderer): void;
+ public _iCollectRenderable(renderer: away.render.IRenderer): void;
+ }
+}
/**
* The TextField class is used to create display objects for text display and
* input. You can use the TextField class to
@@ -12695,6 +13910,12 @@ declare module away.bounds {
public nullify(): void;
public disposeRenderable(): void;
public fromVertices(vertices: number[]): void;
+ /**
+ * Updates the bounds to fit a Geometry object.
+ *
+ * @param geometry The Geometry object to be bounded.
+ */
+ public fromGeometry(geometry: away.base.Geometry): void;
public fromSphere(center: away.geom.Vector3D, radius: number): void;
public fromExtremes(minX: number, minY: number, minZ: number, maxX: number, maxY: number, maxZ: number): void;
public isInFrustum(planes: away.geom.Plane3D[], numPlanes: number): boolean;
@@ -12799,10 +14020,10 @@ declare module away.bounds {
declare module away.controllers {
class ControllerBase {
public _pAutoUpdate: boolean;
- public _pTargetObject: away.entities.IEntity;
- constructor(targetObject?: away.entities.IEntity);
+ public _pTargetObject: away.base.DisplayObject;
+ constructor(targetObject?: away.base.DisplayObject);
public pNotifyUpdate(): void;
- public targetObject : away.entities.IEntity;
+ public targetObject : away.base.DisplayObject;
public autoUpdate : boolean;
public update(interpolate?: boolean): void;
}
@@ -12813,7 +14034,7 @@ declare module away.controllers {
public _pLookAtObject: away.base.DisplayObject;
public _pOrigin: away.geom.Vector3D;
private _onLookAtObjectChangedDelegate;
- constructor(targetObject?: away.entities.IEntity, lookAtObject?: away.base.DisplayObject);
+ constructor(targetObject?: away.base.DisplayObject, lookAtObject?: away.base.DisplayObject);
public lookAtPosition : away.geom.Vector3D;
public lookAtObject : away.base.DisplayObject;
public update(interpolate?: boolean): void;
@@ -12839,6 +14060,7 @@ declare module away.controllers {
private _steps;
private _yFactor;
private _wrapPanAngle;
+ private _upAxis;
/**
* Fractional step taken each time the hover() method is called. Defaults to 8.
*
@@ -12897,7 +14119,7 @@ declare module away.controllers {
/**
* Creates a new HoverController object.
*/
- constructor(targetObject?: away.entities.IEntity, lookAtObject?: away.base.DisplayObject, panAngle?: number, tiltAngle?: number, distance?: number, minTiltAngle?: number, maxTiltAngle?: number, minPanAngle?: number, maxPanAngle?: number, steps?: number, yFactor?: number, wrapPanAngle?: boolean);
+ constructor(targetObject?: away.base.DisplayObject, lookAtObject?: away.base.DisplayObject, panAngle?: number, tiltAngle?: number, distance?: number, minTiltAngle?: number, maxTiltAngle?: number, minPanAngle?: number, maxPanAngle?: number, steps?: number, yFactor?: number, wrapPanAngle?: boolean);
/**
* Updates the current tilt angle and pan angle values.
*
@@ -12966,7 +14188,7 @@ declare module away.controllers {
/**
* Creates a new HoverController object.
*/
- constructor(targetObject?: away.entities.IEntity, panAngle?: number, tiltAngle?: number, minTiltAngle?: number, maxTiltAngle?: number, steps?: number, wrapPanAngle?: boolean);
+ constructor(targetObject?: away.base.DisplayObject, panAngle?: number, tiltAngle?: number, minTiltAngle?: number, maxTiltAngle?: number, steps?: number, wrapPanAngle?: boolean);
/**
* Updates the current tilt angle and pan angle values.
*
@@ -12991,7 +14213,7 @@ declare module away.controllers {
* @see away3d.containers.View3D
*/
class FollowController extends controllers.HoverController {
- constructor(targetObject?: away.entities.IEntity, lookAtObject?: away.base.DisplayObject, tiltAngle?: number, distance?: number);
+ constructor(targetObject?: away.base.DisplayObject, lookAtObject?: away.base.DisplayObject, tiltAngle?: number, distance?: number);
public update(interpolate?: boolean): void;
}
}
@@ -13026,7 +14248,7 @@ declare module away.controllers {
* Offset of spring center from target in target object space, ie: Where the camera should ideally be in the target object space.
*/
public positionOffset: away.geom.Vector3D;
- constructor(targetObject?: away.entities.IEntity, lookAtObject?: away.base.DisplayObject, stiffness?: number, mass?: number, damping?: number);
+ constructor(targetObject?: away.base.DisplayObject, lookAtObject?: away.base.DisplayObject, stiffness?: number, mass?: number, damping?: number);
public update(interpolate?: boolean): void;
}
}
@@ -13037,7 +14259,7 @@ declare module away.materials {
/**
* @class away.materials.IMaterial
*/
- interface IMaterial extends away.events.IEventDispatcher {
+ interface IMaterial extends away.library.IAsset {
id: string;
/**
*
@@ -13046,8 +14268,24 @@ declare module away.materials {
/**
*
*/
+ requiresBlending: boolean;
+ /**
+ *
+ */
width: number;
/**
+ * An id for this material used to sort the renderables by shader program, which reduces Program state changes.
+ *
+ * @private
+ */
+ _iMaterialId: number;
+ /**
+ * An id for this material used to sort the renderables by shader program, which reduces Program state changes.
+ *
+ * @private
+ */
+ _iRenderOrderId: number;
+ /**
*
*
* @param owner
@@ -13073,7 +14311,7 @@ declare module away.materials {
* methods to build the shader code. MaterialBase can be extended to build specific and high-performant custom
* shaders, or entire new material frameworks.
*/
- class CSSMaterialBase extends away.library.NamedAssetBase implements away.library.IAsset, materials.IMaterial {
+ class CSSMaterialBase extends away.library.NamedAssetBase implements materials.IMaterial {
private _height;
private _sizeChanged;
private _width;
@@ -13191,13 +14429,97 @@ declare module away.materials {
private notifySizeChanged();
}
}
+declare module away.prefabs {
+ /**
+ * PrefabBase is an abstract base class for prefabs, which are prebuilt display objects that allow easy cloning and updating
+ */
+ class PrefabBase extends away.library.NamedAssetBase {
+ public _pObjects: away.base.DisplayObject[];
+ /**
+ * Creates a new PrefabBase object.
+ */
+ constructor();
+ /**
+ * Returns a display object generated from this prefab
+ */
+ public getNewObject(): away.base.DisplayObject;
+ public _pCreateObject(): away.base.DisplayObject;
+ public _iValidate(): void;
+ }
+}
+declare module away.animators {
+ /**
+ * Provides an abstract base class for nodes in an animation blend tree.
+ */
+ class AnimationNodeBase extends away.library.NamedAssetBase implements away.library.IAsset {
+ public _pStateClass: any;
+ public stateClass : any;
+ /**
+ * Creates a new AnimationNodeBase object.
+ */
+ constructor();
+ /**
+ * @inheritDoc
+ */
+ public dispose(): void;
+ /**
+ * @inheritDoc
+ */
+ public assetType : string;
+ }
+}
+declare module away.animators {
+ /**
+ * Provides an interface for data set classes that hold animation data for use in animator classes.
+ *
+ * @see away3d.animators.AnimatorBase
+ */
+ interface IAnimationSet {
+ /**
+ * Check to determine whether a state is registered in the animation set under the given name.
+ *
+ * @param stateName The name of the animation state object to be checked.
+ */
+ hasAnimation(name: string): boolean;
+ /**
+ * Retrieves the animation state object registered in the animation data set under the given name.
+ *
+ * @param stateName The name of the animation state object to be retrieved.
+ */
+ getAnimation(name: string): animators.AnimationNodeBase;
+ /**
+ * Indicates whether the properties of the animation data contained within the set combined with
+ * the vertex registers aslready in use on shading materials allows the animation data to utilise
+ * GPU calls.
+ */
+ usesCPU: boolean;
+ /**
+ * Called by the material to reset the GPU indicator before testing whether register space in the shader
+ * is available for running GPU-based animation code.
+ *
+ * @private
+ */
+ resetGPUCompatibility(): any;
+ /**
+ * Called by the animator to void the GPU indicator when register space in the shader
+ * is no longer available for running GPU-based animation code.
+ *
+ * @private
+ */
+ cancelGPUCompatibility(): any;
+ }
+}
declare module away.animators {
/**
* Provides an interface for animator classes that control animation output from a data set subtype of AnimationSetBase.
*
* @see away.animators.IAnimationSet
*/
- interface IAnimator {
+ interface IAnimator extends away.library.IAsset {
+ /**
+ *
+ */
+ animationSet: animators.IAnimationSet;
/**
*
*/
@@ -13218,6 +14540,12 @@ declare module away.animators {
* @private
*/
removeOwner(mesh: away.entities.IEntity): any;
+ /**
+ * //TODO
+ *
+ * @param sourceSubGeometry
+ */
+ getRenderableSubGeometry(renderable: away.pool.IRenderable, sourceSubGeometry: away.base.SubGeometryBase): away.base.SubGeometryBase;
}
}
declare module away.textures {
diff --git a/build/awayjs.next.js b/build/awayjs.next.js
index 9aae49a7..65d8200c 100644
--- a/build/awayjs.next.js
+++ b/build/awayjs.next.js
@@ -485,6 +485,57 @@ var away;
})(away.events || (away.events = {}));
var events = away.events;
})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (events) {
+ /**
+ * Dispatched to notify changes in a geometry object's state.
+ *
+ * @class away.events.GeometryEvent
+ * @see away3d.core.base.Geometry
+ */
+ var GeometryEvent = (function (_super) {
+ __extends(GeometryEvent, _super);
+ /**
+ * Create a new GeometryEvent
+ * @param type The event type.
+ * @param subGeometry An optional TriangleSubGeometry object that is the subject of this event.
+ */
+ function GeometryEvent(type, subGeometry) {
+ if (typeof subGeometry === "undefined") { subGeometry = null; }
+ _super.call(this, type);
+ this._subGeometry = subGeometry;
+ }
+ Object.defineProperty(GeometryEvent.prototype, "subGeometry", {
+ /**
+ * The TriangleSubGeometry object that is the subject of this event, if appropriate.
+ */
+ get: function () {
+ return this._subGeometry;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ /**
+ * Clones the event.
+ * @return An exact duplicate of the current object.
+ */
+ GeometryEvent.prototype.clone = function () {
+ return new GeometryEvent(this.type, this._subGeometry);
+ };
+ GeometryEvent.SUB_GEOMETRY_ADDED = "SubGeometryAdded";
+
+ GeometryEvent.SUB_GEOMETRY_REMOVED = "SubGeometryRemoved";
+
+ GeometryEvent.BOUNDS_INVALID = "BoundsInvalid";
+ return GeometryEvent;
+ })(away.events.Event);
+ events.GeometryEvent = GeometryEvent;
+ })(away.events || (away.events = {}));
+ var events = away.events;
+})(away || (away = {}));
///
var away;
(function (away) {
@@ -909,6 +960,56 @@ var away;
})(away.events || (away.events = {}));
var events = away.events;
})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (events) {
+ /**
+ * Dispatched to notify changes in a sub geometry object's state.
+ *
+ * @class away.events.SubGeometryEvent
+ * @see away3d.core.base.Geometry
+ */
+ var SubGeometryEvent = (function (_super) {
+ __extends(SubGeometryEvent, _super);
+ /**
+ * Create a new GeometryEvent
+ * @param type The event type.
+ * @param dataType An optional data type of the vertex data being updated.
+ */
+ function SubGeometryEvent(type, dataType) {
+ if (typeof dataType === "undefined") { dataType = ""; }
+ _super.call(this, type);
+ this._dataType = dataType;
+ }
+ Object.defineProperty(SubGeometryEvent.prototype, "dataType", {
+ /**
+ * The data type of the vertex data.
+ */
+ get: function () {
+ return this._dataType;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ /**
+ * Clones the event.
+ *
+ * @return An exact duplicate of the current object.
+ */
+ SubGeometryEvent.prototype.clone = function () {
+ return new SubGeometryEvent(this.type, this._dataType);
+ };
+ SubGeometryEvent.INDICES_UPDATED = "indicesUpdated";
+
+ SubGeometryEvent.VERTICES_UPDATED = "verticesUpdated";
+ return SubGeometryEvent;
+ })(away.events.Event);
+ events.SubGeometryEvent = SubGeometryEvent;
+ })(away.events || (away.events = {}));
+ var events = away.events;
+})(away || (away = {}));
///
var away;
(function (away) {
@@ -2465,76 +2566,10 @@ var away;
if (name != null)
asset.name = name;
- switch (asset.assetType) {
- case away.library.AssetType.LIGHT_PICKER:
- type_name = 'lightPicker';
- break;
- case away.library.AssetType.LIGHT:
- type_name = 'light';
- break;
- case away.library.AssetType.ANIMATOR:
- type_name = 'animator';
- break;
- case away.library.AssetType.ANIMATION_SET:
- type_name = 'animationSet';
- break;
- case away.library.AssetType.ANIMATION_STATE:
- type_name = 'animationState';
- break;
- case away.library.AssetType.ANIMATION_NODE:
- type_name = 'animationNode';
- break;
- case away.library.AssetType.STATE_TRANSITION:
- type_name = 'stateTransition';
- break;
- case away.library.AssetType.TEXTURE:
- type_name = 'texture';
- break;
- case away.library.AssetType.TEXTURE_PROJECTOR:
- type_name = 'textureProjector';
- break;
- case away.library.AssetType.CONTAINER:
- type_name = 'container';
- break;
- case away.library.AssetType.GEOMETRY:
- type_name = 'geometry';
- break;
- case away.library.AssetType.MATERIAL:
- type_name = 'material';
- break;
- case away.library.AssetType.MESH:
- type_name = 'mesh';
- break;
- case away.library.AssetType.SKELETON:
- type_name = 'skeleton';
- break;
- case away.library.AssetType.SKELETON_POSE:
- type_name = 'skelpose';
- break;
- case away.library.AssetType.SKYBOX:
- type_name = 'skybox';
- break;
- case away.library.AssetType.CAMERA:
- type_name = 'camera';
- break;
- case away.library.AssetType.SEGMENT_SET:
- type_name = 'segmentSet';
- break;
- case away.library.AssetType.EFFECTS_METHOD:
- type_name = 'effectsMethod';
- break;
- case away.library.AssetType.SHADOW_MAP_METHOD:
- type_name = 'effectsMethod';
- break;
- default:
- throw new away.errors.Error('Unhandled asset type ' + asset.assetType + '. Report as bug!');
- break;
- }
-
// If the asset has no name, give it
// a per-type default name.
if (!asset.name)
- asset.name = type_name;
+ asset.name = asset.assetType;
this.dispatchEvent(new away.events.AssetEvent(away.events.AssetEvent.ASSET_COMPLETE, asset));
};
@@ -3502,9 +3537,8 @@ var away;
prev = this._name;
this._name = val;
- if (this._name == null) {
+ if (this._name == null)
this._name = 'null';
- }
this.updateFullPath();
@@ -3546,9 +3580,8 @@ var away;
this._name = name ? name : 'null';
this._namespace = ns ? ns : NamedAssetBase.DEFAULT_NAMESPACE;
- if (overrideOriginal) {
+ if (overrideOriginal)
this._originalName = this._name;
- }
this.updateFullPath();
};
@@ -3580,11 +3613,14 @@ var away;
AssetType.CONTAINER = 'container';
AssetType.EFFECTS_METHOD = 'effectsMethod';
AssetType.GEOMETRY = 'geometry';
+ AssetType.LINE_SEGMENT = 'lineSegment';
AssetType.LIGHT = 'light';
AssetType.LIGHT_PICKER = 'lightPicker';
AssetType.MATERIAL = 'material';
AssetType.MESH = 'mesh';
- AssetType.SEGMENT_SET = 'segmentSet';
+ AssetType.TRIANGLE_SUB_MESH = 'triangleSubMesh';
+ AssetType.LINE_SUB_MESH = 'lineSubMesh';
+ AssetType.PRIMITIVE_PREFAB = 'primitivePrefab';
AssetType.SHADOW_MAP_METHOD = 'shadowMapMethod';
AssetType.SKELETON = 'skeleton';
AssetType.SKELETON_POSE = 'skeletonPose';
@@ -4728,720 +4764,2301 @@ var AssetLibrarySingletonEnforcer = (function () {
///
var away;
(function (away) {
- /**
- * A class that provides constant values for visual blend mode effects. These
- * constants are used in the following:
- *
- *
The blendMode property of the
- * flash.display.DisplayObject class.
- *
The blendMode parameter of the draw()
- * method of the flash.display.BitmapData class
- *
- */
- (function (base) {
- var BlendMode = (function () {
- function BlendMode() {
+ (function (gl) {
+ var ContextGLClearMask = (function () {
+ function ContextGLClearMask() {
}
- BlendMode.ADD = "add";
+ ContextGLClearMask.COLOR = 8 << 11;
+ ContextGLClearMask.DEPTH = 8 << 5;
+ ContextGLClearMask.STENCIL = 8 << 7;
+ ContextGLClearMask.ALL = ContextGLClearMask.COLOR | ContextGLClearMask.DEPTH | ContextGLClearMask.STENCIL;
+ return ContextGLClearMask;
+ })();
+ gl.ContextGLClearMask = ContextGLClearMask;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var VertexBuffer = (function () {
+ function VertexBuffer(gl, numVertices, data32PerVertex) {
+ this._gl = gl;
+ this._buffer = this._gl.createBuffer();
+ this._numVertices = numVertices;
+ this._data32PerVertex = data32PerVertex;
+ }
+ VertexBuffer.prototype.uploadFromArray = function (vertices, startVertex, numVertices) {
+ this._gl.bindBuffer(this._gl.ARRAY_BUFFER, this._buffer);
- BlendMode.ALPHA = "alpha";
+ //console.log( "** WARNING upload not fully implemented, startVertex & numVertices not considered." );
+ // TODO add offsets , startVertex, numVertices * this._data32PerVertex
+ this._gl.bufferData(this._gl.ARRAY_BUFFER, new Float32Array(vertices), this._gl.STATIC_DRAW);
+ };
- BlendMode.DARKEN = "darken";
+ Object.defineProperty(VertexBuffer.prototype, "numVertices", {
+ get: function () {
+ return this._numVertices;
+ },
+ enumerable: true,
+ configurable: true
+ });
- BlendMode.DIFFERENCE = "difference";
+ Object.defineProperty(VertexBuffer.prototype, "data32PerVertex", {
+ get: function () {
+ return this._data32PerVertex;
+ },
+ enumerable: true,
+ configurable: true
+ });
- BlendMode.ERASE = "erase";
+ Object.defineProperty(VertexBuffer.prototype, "glBuffer", {
+ get: function () {
+ return this._buffer;
+ },
+ enumerable: true,
+ configurable: true
+ });
- BlendMode.HARDLIGHT = "hardlight";
+ VertexBuffer.prototype.dispose = function () {
+ this._gl.deleteBuffer(this._buffer);
+ };
+ return VertexBuffer;
+ })();
+ gl.VertexBuffer = VertexBuffer;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.base
+ */
+ (function (gl) {
+ /**
+ *
+ */
+ var VertexData = (function () {
+ function VertexData() {
+ this._dataDirty = true;
+ this.invalid = new Array(8);
+ this.buffers = new Array(8);
+ this.stageGLs = new Array(8);
+ }
+ VertexData.prototype.updateData = function (vertices, dataPerVertex, originalIndices, indexMappings) {
+ if (typeof originalIndices === "undefined") { originalIndices = null; }
+ if (typeof indexMappings === "undefined") { indexMappings = null; }
+ if (this._dataDirty) {
+ this._dataDirty = false;
+
+ if (indexMappings == null) {
+ this.setData(vertices, dataPerVertex);
+ } else {
+ var splitVerts = new Array(originalIndices.length * dataPerVertex);
+ var originalIndex;
+ var splitIndex;
+ var i = 0;
+ var j = 0;
+ while (i < originalIndices.length) {
+ originalIndex = originalIndices[i];
- BlendMode.INVERT = "invert";
+ splitIndex = indexMappings[originalIndex] * dataPerVertex;
+ originalIndex *= dataPerVertex;
- BlendMode.LAYER = "layer";
+ for (j = 0; j < dataPerVertex; j++)
+ splitVerts[splitIndex + j] = vertices[originalIndex + j];
- BlendMode.LIGHTEN = "lighten";
+ i++;
+ }
- BlendMode.MULTIPLY = "multiply";
+ this.setData(splitVerts, dataPerVertex);
+ }
+ }
+ };
- BlendMode.NORMAL = "normal";
+ VertexData.prototype.invalidateData = function () {
+ this._dataDirty = true;
+ };
- BlendMode.OVERLAY = "overlay";
+ VertexData.prototype.dispose = function () {
+ for (var i = 0; i < 8; ++i) {
+ if (this.stageGLs[i]) {
+ this.stageGLs[i].disposeVertexData(this);
+ this.stageGLs[i] = null;
+ }
+ }
+ };
- BlendMode.SCREEN = "screen";
+ /**
+ * @private
+ */
+ VertexData.prototype.disposeBuffers = function () {
+ for (var i = 0; i < 8; ++i) {
+ if (this.buffers[i]) {
+ this.buffers[i].dispose();
+ this.buffers[i] = null;
+ }
+ }
+ };
- BlendMode.SHADER = "shader";
+ /**
+ * @private
+ */
+ VertexData.prototype.invalidateBuffers = function () {
+ for (var i = 0; i < 8; ++i)
+ this.invalid[i] = true;
+ };
- BlendMode.SUBTRACT = "subtract";
- return BlendMode;
+ /**
+ *
+ * @param data
+ * @param dataPerVertex
+ * @private
+ */
+ VertexData.prototype.setData = function (data, dataPerVertex) {
+ if (this.data && this.data.length != data.length)
+ this.disposeBuffers();
+ else
+ this.invalidateBuffers();
+
+ this.data = data;
+ this.dataPerVertex = dataPerVertex;
+ };
+ return VertexData;
})();
- base.BlendMode = BlendMode;
- })(away.base || (away.base = {}));
- var base = away.base;
+ gl.VertexData = VertexData;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
})(away || (away = {}));
///
var away;
(function (away) {
/**
+ * @module away.base
*/
- (function (base) {
- var AlignmentMode = (function () {
- function AlignmentMode() {
+ (function (gl) {
+ /**
+ *
+ */
+ var VertexDataPool = (function () {
+ function VertexDataPool() {
}
- AlignmentMode.REGISTRATION_POINT = "registrationPoint";
+ VertexDataPool.getItem = function (id, level, dataType) {
+ var subGeometryDictionary = (VertexDataPool._pool[id] || (VertexDataPool._pool[id] = new Object()));
+ var subGeometryData = (subGeometryDictionary[dataType] || (subGeometryDictionary[dataType] = new Array()));
- AlignmentMode.PIVOT_POINT = "pivot";
- return AlignmentMode;
+ return subGeometryData[level] || (subGeometryData[level] = new away.gl.VertexData());
+ };
+
+ VertexDataPool.disposeItem = function (id, level, dataType) {
+ var subGeometryDictionary = VertexDataPool._pool[id];
+ var subGeometryData = subGeometryDictionary[dataType];
+
+ subGeometryData[level].dispose();
+ subGeometryData[level] = null;
+ };
+
+ VertexDataPool.prototype.disposeData = function (id) {
+ var subGeometryDictionary = VertexDataPool._pool[id];
+
+ for (var key in subGeometryDictionary) {
+ var subGeometryData = subGeometryDictionary[key];
+
+ var len = subGeometryData.length;
+ for (var i = 0; i < len; i++) {
+ subGeometryData[i].dispose();
+ subGeometryData[i] = null;
+ }
+ }
+
+ VertexDataPool._pool[id] = null;
+ };
+ VertexDataPool._pool = new Object();
+ return VertexDataPool;
})();
- base.AlignmentMode = AlignmentMode;
- })(away.base || (away.base = {}));
- var base = away.base;
+ gl.VertexDataPool = VertexDataPool;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
})(away || (away = {}));
///
var away;
(function (away) {
- /**
- */
- (function (base) {
- var OrientationMode = (function () {
- function OrientationMode() {
+ (function (gl) {
+ var IndexBuffer = (function () {
+ function IndexBuffer(gl, numIndices) {
+ this._gl = gl;
+ this._buffer = this._gl.createBuffer();
+ this._numIndices = numIndices;
}
- OrientationMode.DEFAULT = "default";
+ IndexBuffer.prototype.uploadFromArray = function (data, startOffset, count) {
+ this._gl.bindBuffer(this._gl.ELEMENT_ARRAY_BUFFER, this._buffer);
- OrientationMode.CAMERA_PLANE = "cameraPlane";
+ // TODO add index offsets
+ this._gl.bufferData(this._gl.ELEMENT_ARRAY_BUFFER, new Uint16Array(data), this._gl.STATIC_DRAW);
+ };
- OrientationMode.CAMERA_POSITION = "cameraPosition";
- return OrientationMode;
+ IndexBuffer.prototype.dispose = function () {
+ this._gl.deleteBuffer(this._buffer);
+ };
+
+ Object.defineProperty(IndexBuffer.prototype, "numIndices", {
+ get: function () {
+ return this._numIndices;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(IndexBuffer.prototype, "glBuffer", {
+ get: function () {
+ return this._buffer;
+ },
+ enumerable: true,
+ configurable: true
+ });
+ return IndexBuffer;
})();
- base.OrientationMode = OrientationMode;
- })(away.base || (away.base = {}));
- var base = away.base;
+ gl.IndexBuffer = IndexBuffer;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
})(away || (away = {}));
///
var away;
(function (away) {
- (function (base) {
+ /**
+ * @module away.base
+ */
+ (function (gl) {
/**
*
*/
- var BitmapData = (function () {
- /**
- *
- * @param width
- * @param height
- * @param transparent
- * @param fillColor
- */
- function BitmapData(width, height, transparent, fillColor) {
- if (typeof transparent === "undefined") { transparent = true; }
- if (typeof fillColor === "undefined") { fillColor = null; }
- this._alpha = 1;
- this._locked = false;
- this._transparent = transparent;
- this._imageCanvas = document.createElement("canvas");
- this._imageCanvas.width = width;
- this._imageCanvas.height = height;
- this._context = this._imageCanvas.getContext("2d");
- this._rect = new away.geom.Rectangle(0, 0, width, height);
-
- if (fillColor != null) {
- if (this._transparent) {
- this._alpha = away.utils.ColorUtils.float32ColorToARGB(fillColor)[0] / 255;
+ var IndexData = (function () {
+ function IndexData() {
+ this._dataDirty = true;
+ this.invalid = new Array(8);
+ this.stageGLs = new Array(8);
+ this.buffers = new Array(8);
+ }
+ IndexData.prototype.updateData = function (offset, indices, numVertices) {
+ if (this._dataDirty) {
+ this._dataDirty = false;
+
+ if (indices.length < IndexData.LIMIT_INDICES && numVertices < IndexData.LIMIT_VERTS) {
+ //shortcut for those buffers that fit into the maximum buffer sizes
+ this.indexMappings = null;
+ this.originalIndices = null;
+ this.setData(indices);
+ this.offset = indices.length;
} else {
- this._alpha = 1;
- }
+ var i;
+ var len;
+ var outIndex;
+ var j;
+ var k;
+ var splitIndices = new Array();
+
+ this.indexMappings = new Array(indices.length);
+ this.originalIndices = new Array();
+
+ i = this.indexMappings.length;
+
+ while (i--)
+ this.indexMappings[i] = -1;
+
+ var originalIndex;
+ var splitIndex;
+
+ // Loop over all triangles
+ outIndex = 0;
+ len = indices.length;
+ i = offset;
+ k = 0;
+ while (i < len && outIndex + 3 < IndexData.LIMIT_INDICES && k + 3 < IndexData.LIMIT_VERTS) {
+ for (j = 0; j < 3; j++) {
+ originalIndex = indices[i + j];
+
+ if (this.indexMappings[originalIndex] >= 0) {
+ splitIndex = this.indexMappings[originalIndex];
+ } else {
+ // This vertex does not yet exist in the split list and
+ // needs to be copied from the long list.
+ splitIndex = k++;
+ this.indexMappings[originalIndex] = splitIndex;
+ this.originalIndices.push(originalIndex);
+ }
- this.fillRect(this._rect, fillColor);
+ // Store new index, which may have come from the mapping look-up,
+ // or from copying a new set of vertex data from the original vector
+ splitIndices[outIndex + j] = splitIndex;
+ }
+
+ outIndex += 3;
+ i += 3;
+ }
+
+ this.setData(splitIndices);
+ this.offset = i;
+ }
}
- }
- /**
- *
- */
- BitmapData.prototype.dispose = function () {
- this._context = null;
- this._imageCanvas = null;
- this._imageData = null;
- this._rect = null;
- this._transparent = null;
- this._locked = null;
};
- /**
- *
- */
- BitmapData.prototype.lock = function () {
- this._locked = true;
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ IndexData.prototype.invalidateData = function () {
+ this._dataDirty = true;
};
- /**
- *
- */
- BitmapData.prototype.unlock = function () {
- this._locked = false;
-
- if (this._imageData) {
- this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
- this._imageData = null;
+ IndexData.prototype.dispose = function () {
+ for (var i = 0; i < 8; ++i) {
+ if (this.stageGLs[i]) {
+ this.stageGLs[i].disposeIndexData(this);
+ this.stageGLs[i] = null;
+ }
}
};
/**
- *
- * @param x
- * @param y
- * @param color
+ * @private
*/
- BitmapData.prototype.getPixel = function (x, y) {
- var r;
- var g;
- var b;
- var a;
-
- if (!this._locked) {
- var pixelData = this._context.getImageData(x, y, 1, 1);
-
- r = pixelData.data[0];
- g = pixelData.data[1];
- b = pixelData.data[2];
- a = pixelData.data[3];
- } else {
- var index = (x + y * this._imageCanvas.width) * 4;
-
- if (!this._imageData)
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
-
- r = this._imageData.data[index + 0];
- g = this._imageData.data[index + 1];
- b = this._imageData.data[index + 2];
- a = this._imageData.data[index + 3];
- }
-
- if (!this._locked) {
- this._imageData = null;
+ IndexData.prototype.disposeBuffers = function () {
+ for (var i = 0; i < 8; ++i) {
+ if (this.buffers[i]) {
+ this.buffers[i].dispose();
+ this.buffers[i] = null;
+ }
}
+ };
- return (a << 24) | (r << 16) | (g << 8) | b;
+ /**
+ * @private
+ */
+ IndexData.prototype.invalidateBuffers = function () {
+ for (var i = 0; i < 8; ++i)
+ this.invalid[i] = true;
};
/**
*
- * @param x
- * @param y
- * @param color
+ * @param data
+ * @private
*/
- BitmapData.prototype.setPixel = function (x, y, color) {
- var argb = away.utils.ColorUtils.float32ColorToARGB(color);
-
- if (!this._locked) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
+ IndexData.prototype.setData = function (data) {
+ if (this.data && this.data.length != data.length)
+ this.disposeBuffers();
+ else
+ this.invalidateBuffers();
- if (this._imageData) {
- var index = (x + y * this._imageCanvas.width) * 4;
+ this.data = data;
+ };
+ IndexData.LIMIT_VERTS = 0xffff;
- this._imageData.data[index + 0] = argb[1];
- this._imageData.data[index + 1] = argb[2];
- this._imageData.data[index + 2] = argb[3];
- this._imageData.data[index + 3] = 255;
- }
+ IndexData.LIMIT_INDICES = 0xffffff;
+ return IndexData;
+ })();
+ gl.IndexData = IndexData;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.base
+ */
+ (function (gl) {
+ /**
+ *
+ */
+ var IndexDataPool = (function () {
+ function IndexDataPool() {
+ }
+ IndexDataPool.getItem = function (id, level) {
+ var subGeometryData = (IndexDataPool._pool[id] || (IndexDataPool._pool[id] = new Array()));
- if (!this._locked) {
- this._context.putImageData(this._imageData, 0, 0);
- this._imageData = null;
- }
+ return subGeometryData[level] || (subGeometryData[level] = new away.gl.IndexData());
};
- /**
- *
- * @param rect
- * @param inputByteArray
- */
- BitmapData.prototype.setPixels = function (rect, inputByteArray) {
- if (!this._locked) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
+ IndexDataPool.disposeItem = function (id, level) {
+ var subGeometryData = this._pool[id];
- if (this._imageData) {
- inputByteArray.position = 0;
- var i, j, index;
- for (i = 0; i < rect.width; ++i) {
- for (j = 0; j < rect.height; ++j) {
- index = (i + rect.x + (j + rect.y) * this._imageCanvas.width) * 4;
+ subGeometryData[level].dispose();
+ subGeometryData[level] = null;
+ };
- this._imageData.data[index + 0] = inputByteArray.readUnsignedInt();
- this._imageData.data[index + 1] = inputByteArray.readUnsignedInt();
- this._imageData.data[index + 2] = inputByteArray.readUnsignedInt();
- this._imageData.data[index + 3] = inputByteArray.readUnsignedInt();
- }
- }
- }
+ IndexDataPool.prototype.disposeData = function (id) {
+ var subGeometryData = IndexDataPool._pool[id];
- if (!this._locked) {
- this._context.putImageData(this._imageData, 0, 0);
- this._imageData = null;
+ var len = subGeometryData.length;
+ for (var i = 0; i < len; i++) {
+ subGeometryData[i].dispose();
+ subGeometryData[i] = null;
}
+
+ IndexDataPool._pool[id] = null;
};
+ IndexDataPool._pool = new Object();
+ return IndexDataPool;
+ })();
+ gl.IndexDataPool = IndexDataPool;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var Program = (function () {
+ function Program(gl) {
+ this._gl = gl;
+ this._program = this._gl.createProgram();
+ }
+ Program.prototype.upload = function (vertexProgram, fragmentProgram) {
+ this._vertexShader = this._gl.createShader(this._gl.VERTEX_SHADER);
+ this._fragmentShader = this._gl.createShader(this._gl.FRAGMENT_SHADER);
- /**
- *
- * @param x
- * @param y
- * @param color
- */
- BitmapData.prototype.setPixel32 = function (x, y, color) {
- var argb = away.utils.ColorUtils.float32ColorToARGB(color);
+ this._gl.shaderSource(this._vertexShader, vertexProgram);
+ this._gl.compileShader(this._vertexShader);
- if (!this._locked) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ if (!this._gl.getShaderParameter(this._vertexShader, this._gl.COMPILE_STATUS)) {
+ alert(this._gl.getShaderInfoLog(this._vertexShader));
+ return null;
}
- if (this._imageData) {
- var index = (x + y * this._imageCanvas.width) * 4;
+ this._gl.shaderSource(this._fragmentShader, fragmentProgram);
+ this._gl.compileShader(this._fragmentShader);
- this._imageData.data[index + 0] = argb[1];
- this._imageData.data[index + 1] = argb[2];
- this._imageData.data[index + 2] = argb[3];
- this._imageData.data[index + 3] = argb[0];
+ if (!this._gl.getShaderParameter(this._fragmentShader, this._gl.COMPILE_STATUS)) {
+ alert(this._gl.getShaderInfoLog(this._fragmentShader));
+ return null;
}
- if (!this._locked) {
- this._context.putImageData(this._imageData, 0, 0);
- this._imageData = null;
+ this._gl.attachShader(this._program, this._vertexShader);
+ this._gl.attachShader(this._program, this._fragmentShader);
+ this._gl.linkProgram(this._program);
+
+ if (!this._gl.getProgramParameter(this._program, this._gl.LINK_STATUS)) {
+ alert("Could not link the program."); //TODO throw errors
}
};
- BitmapData.prototype.setVector = function (rect, inputVector) {
- if (!this._locked) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
+ Program.prototype.dispose = function () {
+ this._gl.deleteProgram(this._program);
+ };
- if (this._imageData) {
- var i, j, index, argb;
- for (i = 0; i < rect.width; ++i) {
- for (j = 0; j < rect.height; ++j) {
- argb = away.utils.ColorUtils.float32ColorToARGB(inputVector[i + j * rect.width]);
- index = (i + rect.x + (j + rect.y) * this._imageCanvas.width) * 4;
+ Program.prototype.focusProgram = function () {
+ this._gl.useProgram(this._program);
+ };
- this._imageData.data[index + 0] = argb[1];
- this._imageData.data[index + 1] = argb[2];
- this._imageData.data[index + 2] = argb[3];
- this._imageData.data[index + 3] = argb[0];
- }
- }
- }
+ Object.defineProperty(Program.prototype, "glProgram", {
+ get: function () {
+ return this._program;
+ },
+ enumerable: true,
+ configurable: true
+ });
+ return Program;
+ })();
+ gl.Program = Program;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var SamplerState = (function () {
+ function SamplerState() {
+ this.wrap = 0;
+ this.filter = 0;
+ this.mipfilter = 0;
+ }
+ return SamplerState;
+ })();
+ gl.SamplerState = SamplerState;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLTextureFormat = (function () {
+ function ContextGLTextureFormat() {
+ }
+ ContextGLTextureFormat.BGRA = "bgra";
+ ContextGLTextureFormat.BGRA_PACKED = "bgraPacked4444";
+ ContextGLTextureFormat.BGR_PACKED = "bgrPacked565";
+ ContextGLTextureFormat.COMPRESSED = "compressed";
+ ContextGLTextureFormat.COMPRESSED_ALPHA = "compressedAlpha";
+ return ContextGLTextureFormat;
+ })();
+ gl.ContextGLTextureFormat = ContextGLTextureFormat;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var TextureBase = (function () {
+ function TextureBase(gl) {
+ this.textureType = "";
+ this._gl = gl;
+ }
+ TextureBase.prototype.dispose = function () {
+ throw "Abstract method must be overridden.";
+ };
+ return TextureBase;
+ })();
+ gl.TextureBase = TextureBase;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var Texture = (function (_super) {
+ __extends(Texture, _super);
+ function Texture(gl, width, height) {
+ _super.call(this, gl);
+ this.textureType = "texture2d";
+ this._width = width;
+ this._height = height;
- if (!this._locked) {
- this._context.putImageData(this._imageData, 0, 0);
- this._imageData = null;
- }
+ this._glTexture = this._gl.createTexture();
+ }
+ Texture.prototype.dispose = function () {
+ this._gl.deleteTexture(this._glTexture);
};
- BitmapData.prototype.drawImage = function (img, sourceRect, destRect) {
- if (this._locked) {
- // If canvas is locked:
- //
- // 1) copy image data back to canvas
- // 2) draw object
- // 3) read _imageData back out
- if (this._imageData) {
- this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
- }
+ Object.defineProperty(Texture.prototype, "width", {
+ get: function () {
+ return this._width;
+ },
+ enumerable: true,
+ configurable: true
+ });
- this._drawImage(img, sourceRect, destRect);
+ Object.defineProperty(Texture.prototype, "height", {
+ get: function () {
+ return this._height;
+ },
+ enumerable: true,
+ configurable: true
+ });
- if (this._imageData) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
- } else {
- this._drawImage(img, sourceRect, destRect);
- }
- };
+ Object.defineProperty(Texture.prototype, "frameBuffer", {
+ get: function () {
+ return this._frameBuffer;
+ },
+ enumerable: true,
+ configurable: true
+ });
- BitmapData.prototype._drawImage = function (img, sourceRect, destRect) {
- if (img instanceof away.base.BitmapData) {
- this._context.drawImage(img.canvas, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
- } else if (img instanceof HTMLImageElement) {
- this._context.drawImage(img, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
- }
- };
+ Texture.prototype.uploadFromHTMLImageElement = function (image, miplevel) {
+ if (typeof miplevel === "undefined") { miplevel = 0; }
+ this._gl.bindTexture(this._gl.TEXTURE_2D, this._glTexture);
- BitmapData.prototype.copyPixels = function (bmpd, sourceRect, destRect) {
- if (this._locked) {
- // If canvas is locked:
- //
- // 1) copy image data back to canvas
- // 2) draw object
- // 3) read _imageData back out
- if (this._imageData) {
- this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
- }
+ //this._gl.pixelStorei( this._gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this._gl.ZERO );
+ this._gl.texImage2D(this._gl.TEXTURE_2D, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
+ this._gl.bindTexture(this._gl.TEXTURE_2D, null);
+ };
- this._copyPixels(bmpd, sourceRect, destRect);
+ Texture.prototype.uploadFromBitmapData = function (data, miplevel) {
+ if (typeof miplevel === "undefined") { miplevel = 0; }
+ this._gl.bindTexture(this._gl.TEXTURE_2D, this._glTexture);
- if (this._imageData) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
- } else {
- this._copyPixels(bmpd, sourceRect, destRect);
- }
+ //this._gl.pixelStorei( this._gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this._gl.ZERO );
+ this._gl.texImage2D(this._gl.TEXTURE_2D, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
+ this._gl.bindTexture(this._gl.TEXTURE_2D, null);
};
- BitmapData.prototype._copyPixels = function (bmpd, sourceRect, destRect) {
- if (bmpd instanceof away.base.BitmapData) {
- this._context.drawImage(bmpd.canvas, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
- } else if (bmpd instanceof HTMLImageElement) {
- this._context.drawImage(bmpd, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
- }
+ Texture.prototype.uploadCompressedTextureFromByteArray = function (data, byteArrayOffset /*uint*/ , async) {
+ if (typeof async === "undefined") { async = false; }
+ var ext = this._gl.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");
+ //this._gl.compressedTexImage2D(this._gl.TEXTURE_2D, 0, this)
};
- /**
- *
- * @param rect
- * @param color
- */
- BitmapData.prototype.fillRect = function (rect, color) {
- if (this._locked) {
- // If canvas is locked:
- //
- // 1) copy image data back to canvas
- // 2) apply fill
- // 3) read _imageData back out
- if (this._imageData) {
- this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
- }
+ Object.defineProperty(Texture.prototype, "glTexture", {
+ get: function () {
+ return this._glTexture;
+ },
+ enumerable: true,
+ configurable: true
+ });
- this._context.fillStyle = this.hexToRGBACSS(color);
- this._context.fillRect(rect.x, rect.y, rect.width, rect.height);
+ Texture.prototype.generateFromRenderBuffer = function (data) {
+ this._frameBuffer = this._gl.createFramebuffer();
+ this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, this._frameBuffer);
+ this._frameBuffer.width = this._width;
+ this._frameBuffer.height = this._height;
- if (this._imageData) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
- } else {
- this._context.fillStyle = this.hexToRGBACSS(color);
- this._context.fillRect(rect.x, rect.y, rect.width, rect.height);
- }
- };
+ this._gl.bindTexture(this._gl.TEXTURE_2D, this._glTexture);
- BitmapData.prototype.draw = function (source, matrix) {
- if (this._locked) {
- // If canvas is locked:
- //
- // 1) copy image data back to canvas
- // 2) draw object
- // 3) read _imageData back out
- if (this._imageData) {
- this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
- }
+ //this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, this._gl.LINEAR);
+ //this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, this._gl.LINEAR_MIPMAP_NEAREST);
+ //this._gl.generateMipmap(this._gl.TEXTURE_2D);
+ //this._gl.texImage2D( this._gl.TEXTURE_2D, 0, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData );
+ this._gl.texImage2D(this._gl.TEXTURE_2D, 0, this._gl.RGBA, this._width, this._height, 0, this._gl.RGBA, this._gl.UNSIGNED_BYTE, null);
- this._draw(source, matrix);
+ var renderBuffer = this._gl.createRenderbuffer();
+ this._gl.bindRenderbuffer(this._gl.RENDERBUFFER, renderBuffer);
+ this._gl.renderbufferStorage(this._gl.RENDERBUFFER, this._gl.DEPTH_COMPONENT16, this._width, this._height);
- if (this._imageData) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
- } else {
- this._draw(source, matrix);
- }
- };
-
- BitmapData.prototype._draw = function (source, matrix) {
- if (source instanceof away.base.BitmapData) {
- this._context.save();
-
- if (matrix != null)
- this._context.setTransform(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty);
-
- this._context.drawImage(source.canvas, 0, 0);
- this._context.restore();
- } else if (source instanceof HTMLImageElement) {
- this._context.save();
-
- if (matrix != null)
- this._context.setTransform(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty);
+ this._gl.framebufferTexture2D(this._gl.FRAMEBUFFER, this._gl.COLOR_ATTACHMENT0, this._gl.TEXTURE_2D, this._glTexture, 0);
+ this._gl.framebufferRenderbuffer(this._gl.FRAMEBUFFER, this._gl.DEPTH_ATTACHMENT, this._gl.RENDERBUFFER, renderBuffer);
- this._context.drawImage(source, 0, 0);
- this._context.restore();
- }
+ this._gl.bindTexture(this._gl.TEXTURE_2D, null);
+ this._gl.bindRenderbuffer(this._gl.RENDERBUFFER, null);
+ this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, null);
};
- BitmapData.prototype.copyChannel = function (sourceBitmap, sourceRect, destPoint, sourceChannel, destChannel) {
- var imageData = sourceBitmap.imageData;
-
- if (!this._locked) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
-
- if (this._imageData) {
- var sourceData = sourceBitmap.imageData.data;
- var destData = this._imageData.data;
+ Texture.prototype.generateMipmaps = function () {
+ //this._gl.bindTexture( this._gl.TEXTURE_2D, this._glTexture );
+ //this._gl.generateMipmap(this._gl.TEXTURE_2D);
+ //this._gl.bindTexture( this._gl.TEXTURE_2D, null );
+ };
+ return Texture;
+ })(away.gl.TextureBase);
+ gl.Texture = Texture;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var CubeTexture = (function (_super) {
+ __extends(CubeTexture, _super);
+ function CubeTexture(gl, size) {
+ _super.call(this, gl);
+ this.textureType = "textureCube";
+ this._size = size;
+ this._texture = this._gl.createTexture();
+ }
+ CubeTexture.prototype.dispose = function () {
+ this._gl.deleteTexture(this._texture);
+ };
- var sourceOffset = Math.round(Math.log(sourceChannel) / Math.log(2));
- var destOffset = Math.round(Math.log(destChannel) / Math.log(2));
+ CubeTexture.prototype.uploadFromHTMLImageElement = function (image, side, miplevel) {
+ if (typeof miplevel === "undefined") { miplevel = 0; }
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
- var i, j, sourceIndex, destIndex;
- for (i = 0; i < sourceRect.width; ++i) {
- for (j = 0; j < sourceRect.height; ++j) {
- sourceIndex = (i + sourceRect.x + (j + sourceRect.y) * sourceBitmap.width) * 4;
- destIndex = (i + destPoint.x + (j + destPoint.y) * this.width) * 4;
+ switch (side) {
+ case 0:
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
- destData[destIndex + destOffset] = sourceData[sourceIndex + sourceOffset];
- }
- }
+ break;
+ case 1:
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
+ break;
+ case 2:
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
+ break;
+ case 3:
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
+ break;
+ case 4:
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
+ break;
+ case 5:
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
+ break;
+ default:
+ throw "unknown side type";
}
- if (!this._locked) {
- this._context.putImageData(this._imageData, 0, 0);
- this._imageData = null;
- }
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
};
- BitmapData.prototype.colorTransform = function (rect, colorTransform) {
- if (!this._locked) {
- this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- }
-
- if (this._imageData) {
- var data = this._imageData.data;
-
- var i, j, index;
- for (i = 0; i < rect.width; ++i) {
- for (j = 0; j < rect.height; ++j) {
- index = (i + rect.x + (j + rect.y) * this.width) * 4;
-
- data[index] = data[index] * colorTransform.redMultiplier + colorTransform.redOffset;
- data[index + 1] = data[index + 1] * colorTransform.greenMultiplier + colorTransform.greenOffset;
- data[index + 2] = data[index + 2] * colorTransform.blueMultiplier + colorTransform.blueOffset;
- data[index + 3] = data[index + 3] * colorTransform.alphaMultiplier + colorTransform.alphaOffset;
- }
- }
- }
-
- if (!this._locked) {
- this._context.putImageData(this._imageData, 0, 0);
- this._imageData = null;
+ CubeTexture.prototype.uploadFromBitmapData = function (data, side, miplevel) {
+ if (typeof miplevel === "undefined") { miplevel = 0; }
+ switch (side) {
+ case 0:
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
+ break;
+ case 1:
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
+ break;
+ case 2:
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
+ break;
+ case 3:
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
+ break;
+ case 4:
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
+ break;
+ case 5:
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
+ this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
+ break;
+ default:
+ throw "unknown side type";
}
};
+ CubeTexture.prototype.uploadCompressedTextureFromByteArray = function (data, byteArrayOffset /*uint*/ , async) {
+ if (typeof async === "undefined") { async = false; }
+ };
- Object.defineProperty(BitmapData.prototype, "imageData", {
- /**
- *
- * @returns {ImageData}
- */
- get: function () {
- return this._context.getImageData(0, 0, this._rect.width, this._rect.height);
- },
- /**
- *
- * @param {ImageData}
- */
- set: function (value) {
- this._context.putImageData(value, 0, 0);
- },
- enumerable: true,
- configurable: true
- });
-
- Object.defineProperty(BitmapData.prototype, "width", {
- /**
- *
- * @returns {number}
- */
- get: function () {
- return this._imageCanvas.width;
- },
- /**
- *
- * @param {number}
- */
- set: function (value) {
- this._rect.width = value;
- this._imageCanvas.width = value;
- },
- enumerable: true,
- configurable: true
- });
-
-
- Object.defineProperty(BitmapData.prototype, "height", {
- /**
- *
- * @returns {number}
- */
- get: function () {
- return this._imageCanvas.height;
- },
- /**
- *
- * @param {number}
- */
- set: function (value) {
- this._rect.height = value;
- this._imageCanvas.height = value;
- },
- enumerable: true,
- configurable: true
- });
-
-
- Object.defineProperty(BitmapData.prototype, "rect", {
- /**
- *
- * @param {away.geom.Rectangle}
- */
- get: function () {
- return this._rect;
- },
- enumerable: true,
- configurable: true
- });
-
- Object.defineProperty(BitmapData.prototype, "canvas", {
- /**
- *
- * @returns {HTMLCanvasElement}
- */
+ Object.defineProperty(CubeTexture.prototype, "size", {
get: function () {
- return this._imageCanvas;
+ return this._size;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(BitmapData.prototype, "context", {
- /**
- *
- * @returns {HTMLCanvasElement}
- */
+ Object.defineProperty(CubeTexture.prototype, "glTexture", {
get: function () {
- return this._context;
+ return this._texture;
},
enumerable: true,
configurable: true
});
-
- // Private
- /**
- * convert decimal value to Hex
- */
- BitmapData.prototype.hexToRGBACSS = function (d) {
- var argb = away.utils.ColorUtils.float32ColorToARGB(d);
-
- if (this._transparent == false) {
- argb[0] = 1;
-
- return 'rgba(' + argb[1] + ',' + argb[2] + ',' + argb[3] + ',' + argb[0] + ')';
- }
-
- return 'rgba(' + argb[1] + ',' + argb[2] + ',' + argb[3] + ',' + argb[0] / 255 + ')';
- };
- return BitmapData;
+ return CubeTexture;
+ })(away.gl.TextureBase);
+ gl.CubeTexture = CubeTexture;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLTriangleFace = (function () {
+ function ContextGLTriangleFace() {
+ }
+ ContextGLTriangleFace.BACK = "back";
+ ContextGLTriangleFace.FRONT = "front";
+ ContextGLTriangleFace.FRONT_AND_BACK = "frontAndBack";
+ ContextGLTriangleFace.NONE = "none";
+ return ContextGLTriangleFace;
})();
- base.BitmapData = BitmapData;
- })(away.base || (away.base = {}));
- var base = away.base;
+ gl.ContextGLTriangleFace = ContextGLTriangleFace;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
})(away || (away = {}));
///
var away;
(function (away) {
- (function (base) {
- var BitmapDataChannel = (function () {
- function BitmapDataChannel() {
+ (function (gl) {
+ var ContextGLVertexBufferFormat = (function () {
+ function ContextGLVertexBufferFormat() {
}
- BitmapDataChannel.ALPHA = 8;
- BitmapDataChannel.BLUE = 4;
- BitmapDataChannel.GREEN = 2;
- BitmapDataChannel.RED = 1;
- return BitmapDataChannel;
+ ContextGLVertexBufferFormat.BYTES_4 = "bytes4";
+ ContextGLVertexBufferFormat.FLOAT_1 = "float1";
+ ContextGLVertexBufferFormat.FLOAT_2 = "float2";
+ ContextGLVertexBufferFormat.FLOAT_3 = "float3";
+ ContextGLVertexBufferFormat.FLOAT_4 = "float4";
+ return ContextGLVertexBufferFormat;
})();
- base.BitmapDataChannel = BitmapDataChannel;
- })(away.base || (away.base = {}));
- var base = away.base;
+ gl.ContextGLVertexBufferFormat = ContextGLVertexBufferFormat;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
})(away || (away = {}));
///
var away;
(function (away) {
- /**
- * The CapsStyle class is an enumeration of constant values that specify the
- * caps style to use in drawing lines. The constants are provided for use as
- * values in the caps parameter of the
- * flash.display.Graphics.lineStyle() method. You can specify the
- * following three types of caps:
- */
- (function (base) {
- var CapsStyle = (function () {
- function CapsStyle() {
+ (function (gl) {
+ var ContextGLProgramType = (function () {
+ function ContextGLProgramType() {
}
- CapsStyle.ROUND = "round";
-
- CapsStyle.NONE = "none";
-
- CapsStyle.SQUARE = "square";
- return CapsStyle;
+ ContextGLProgramType.FRAGMENT = "fragment";
+ ContextGLProgramType.VERTEX = "vertex";
+ return ContextGLProgramType;
})();
- base.CapsStyle = CapsStyle;
- })(away.base || (away.base = {}));
- var base = away.base;
+ gl.ContextGLProgramType = ContextGLProgramType;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLBlendFactor = (function () {
+ function ContextGLBlendFactor() {
+ }
+ ContextGLBlendFactor.DESTINATION_ALPHA = "destinationAlpha";
+ ContextGLBlendFactor.DESTINATION_COLOR = "destinationColor";
+ ContextGLBlendFactor.ONE = "one";
+ ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA = "oneMinusDestinationAlpha";
+ ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR = "oneMinusDestinationColor";
+ ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA = "oneMinusSourceAlpha";
+ ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR = "oneMinusSourceColor";
+ ContextGLBlendFactor.SOURCE_ALPHA = "sourceAlpha";
+ ContextGLBlendFactor.SOURCE_COLOR = "sourceColor";
+ ContextGLBlendFactor.ZERO = "zero";
+ return ContextGLBlendFactor;
+ })();
+ gl.ContextGLBlendFactor = ContextGLBlendFactor;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLCompareMode = (function () {
+ function ContextGLCompareMode() {
+ }
+ ContextGLCompareMode.ALWAYS = "always";
+ ContextGLCompareMode.EQUAL = "equal";
+ ContextGLCompareMode.GREATER = "greater";
+ ContextGLCompareMode.GREATER_EQUAL = "greaterEqual";
+ ContextGLCompareMode.LESS = "less";
+ ContextGLCompareMode.LESS_EQUAL = "lessEqual";
+ ContextGLCompareMode.NEVER = "never";
+ ContextGLCompareMode.NOT_EQUAL = "notEqual";
+ return ContextGLCompareMode;
+ })();
+ gl.ContextGLCompareMode = ContextGLCompareMode;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLMipFilter = (function () {
+ function ContextGLMipFilter() {
+ }
+ ContextGLMipFilter.MIPLINEAR = "miplinear";
+ ContextGLMipFilter.MIPNEAREST = "mipnearest";
+ ContextGLMipFilter.MIPNONE = "mipnone";
+ return ContextGLMipFilter;
+ })();
+ gl.ContextGLMipFilter = ContextGLMipFilter;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLProfile = (function () {
+ function ContextGLProfile() {
+ }
+ ContextGLProfile.BASELINE = "baseline";
+ ContextGLProfile.BASELINE_CONSTRAINED = "baselineConstrained";
+ ContextGLProfile.BASELINE_EXTENDED = "baselineExtended";
+ return ContextGLProfile;
+ })();
+ gl.ContextGLProfile = ContextGLProfile;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLStencilAction = (function () {
+ function ContextGLStencilAction() {
+ }
+ ContextGLStencilAction.DECREMENT_SATURATE = "decrementSaturate";
+ ContextGLStencilAction.DECREMENT_WRAP = "decrementWrap";
+ ContextGLStencilAction.INCREMENT_SATURATE = "incrementSaturate";
+ ContextGLStencilAction.INCREMENT_WRAP = "incrementWrap";
+ ContextGLStencilAction.INVERT = "invert";
+ ContextGLStencilAction.KEEP = "keep";
+ ContextGLStencilAction.SET = "set";
+ ContextGLStencilAction.ZERO = "zero";
+ return ContextGLStencilAction;
+ })();
+ gl.ContextGLStencilAction = ContextGLStencilAction;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+var away;
+(function (away) {
+ ///
+ (function (gl) {
+ var ContextGLTextureFilter = (function () {
+ function ContextGLTextureFilter() {
+ }
+ ContextGLTextureFilter.LINEAR = "linear";
+ ContextGLTextureFilter.NEAREST = "nearest";
+ return ContextGLTextureFilter;
+ })();
+ gl.ContextGLTextureFilter = ContextGLTextureFilter;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
})(away || (away = {}));
///
var away;
(function (away) {
- /**
- * The DisplayObject class is the base class for all objects that can be
- * placed on the display list. The display list manages all objects displayed
- * in flash. Use the DisplayObjectContainer class to arrange the
- * display objects in the display list. DisplayObjectContainer objects can
- * have child display objects, while other display objects, such as Shape and
- * TextField objects, are "leaf" nodes that have only parents and siblings, no
- * children.
- *
- *
The DisplayObject class supports basic functionality like the x
- * and y position of an object, as well as more advanced properties of
- * the object such as its transformation matrix.
- *
- *
DisplayObject is an abstract base class; therefore, you cannot call
- * DisplayObject directly. Invoking new DisplayObject() throws an
- * ArgumentError exception.
- *
- *
All display objects inherit from the DisplayObject class.
- *
- *
The DisplayObject class itself does not include any APIs for rendering
- * content onscreen. For that reason, if you want create a custom subclass of
- * the DisplayObject class, you will want to extend one of its subclasses that
- * do have APIs for rendering content onscreen, such as the Shape, Sprite,
- * Bitmap, SimpleButton, TextField, or MovieClip class.
- *
- *
The DisplayObject class contains several broadcast events. Normally, the
- * target of any particular event is a specific DisplayObject instance. For
- * example, the target of an added event is the specific
- * DisplayObject instance that was added to the display list. Having a single
- * target restricts the placement of event listeners to that target and in
- * some cases the target's ancestors on the display list. With broadcast
- * events, however, the target is not a specific DisplayObject instance, but
- * rather all DisplayObject instances, including those that are not on the
- * display list. This means that you can add a listener to any DisplayObject
- * instance to listen for broadcast events. In addition to the broadcast
- * events listed in the DisplayObject class's Events table, the DisplayObject
- * class also inherits two broadcast events from the EventDispatcher class:
- * activate and deactivate.
- *
- *
Some properties previously used in the ActionScript 1.0 and 2.0
- * MovieClip, TextField, and Button classes(such as _alpha,
- * _height, _name, _width,
- * _x, _y, and others) have equivalents in the
- * ActionScript 3.0 DisplayObject class that are renamed so that they no
- * longer begin with the underscore(_) character.
- *
- *
For more information, see the "Display Programming" chapter of the
- * ActionScript 3.0 Developer's Guide.
- *
- * @event added Dispatched when a display object is added to the
- * display list. The following methods trigger this
- * event:
- * DisplayObjectContainer.addChild(),
- * DisplayObjectContainer.addChildAt().
- * @event addedToStage Dispatched when a display object is added to the on
- * stage display list, either directly or through the
- * addition of a sub tree in which the display object
- * is contained. The following methods trigger this
+ (function (gl) {
+ var ContextGLWrapMode = (function () {
+ function ContextGLWrapMode() {
+ }
+ ContextGLWrapMode.CLAMP = "clamp";
+ ContextGLWrapMode.REPEAT = "repeat";
+ return ContextGLWrapMode;
+ })();
+ gl.ContextGLWrapMode = ContextGLWrapMode;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var ContextGL = (function () {
+ function ContextGL(canvas) {
+ this._currentWrap = 0;
+ this._currentFilter = 0;
+ this._currentMipFilter = 0;
+ this._indexBufferList = [];
+ this._vertexBufferList = [];
+ this._textureList = [];
+ this._programList = [];
+ this._samplerStates = [];
+ try {
+ this._gl = canvas.getContext("experimental-webgl", { premultipliedAlpha: false, alpha: false });
+ if (!this._gl) {
+ this._gl = canvas.getContext("webgl", { premultipliedAlpha: false, alpha: false });
+ }
+ } catch (e) {
+ //this.dispatchEvent( new away.events.AwayEvent( away.events.AwayEvent.INITIALIZE_FAILED, e ) );
+ }
+
+ if (this._gl) {
+ //this.dispatchEvent( new away.events.AwayEvent( away.events.AwayEvent.INITIALIZE_SUCCESS ) );
+ } else {
+ //this.dispatchEvent( new away.events.AwayEvent( away.events.AwayEvent.INITIALIZE_FAILED, e ) );
+ alert("WebGL is not available.");
+ }
+
+ for (var i = 0; i < ContextGL.MAX_SAMPLERS; ++i) {
+ this._samplerStates[i] = new away.gl.SamplerState();
+ this._samplerStates[i].wrap = this._gl.REPEAT;
+ this._samplerStates[i].filter = this._gl.LINEAR;
+ this._samplerStates[i].mipfilter = 0;
+ }
+ }
+ ContextGL.prototype.gl = function () {
+ return this._gl;
+ };
+
+ ContextGL.prototype.clear = function (red, green, blue, alpha, depth, stencil, mask) {
+ if (typeof red === "undefined") { red = 0; }
+ if (typeof green === "undefined") { green = 0; }
+ if (typeof blue === "undefined") { blue = 0; }
+ if (typeof alpha === "undefined") { alpha = 1; }
+ if (typeof depth === "undefined") { depth = 1; }
+ if (typeof stencil === "undefined") { stencil = 0; }
+ if (typeof mask === "undefined") { mask = away.gl.ContextGLClearMask.ALL; }
+ if (!this._drawing) {
+ this.updateBlendStatus();
+ this._drawing = true;
+ }
+ this._gl.clearColor(red, green, blue, alpha);
+ this._gl.clearDepth(depth);
+ this._gl.clearStencil(stencil);
+ this._gl.clear(mask);
+ };
+
+ ContextGL.prototype.configureBackBuffer = function (width, height, antiAlias, enableDepthAndStencil) {
+ if (typeof enableDepthAndStencil === "undefined") { enableDepthAndStencil = true; }
+ if (enableDepthAndStencil) {
+ this._gl.enable(this._gl.STENCIL_TEST);
+ this._gl.enable(this._gl.DEPTH_TEST);
+ }
+
+ this._gl.viewport['width'] = width;
+ this._gl.viewport['height'] = height;
+
+ this._gl.viewport(0, 0, width, height);
+ };
+
+ ContextGL.prototype.createCubeTexture = function (size, format, optimizeForRenderToTexture, streamingLevels) {
+ if (typeof streamingLevels === "undefined") { streamingLevels = 0; }
+ var texture = new away.gl.CubeTexture(this._gl, size);
+ this._textureList.push(texture);
+ return texture;
+ };
+
+ ContextGL.prototype.createIndexBuffer = function (numIndices) {
+ var indexBuffer = new away.gl.IndexBuffer(this._gl, numIndices);
+ this._indexBufferList.push(indexBuffer);
+ return indexBuffer;
+ };
+
+ ContextGL.prototype.createProgram = function () {
+ var program = new away.gl.Program(this._gl);
+ this._programList.push(program);
+ return program;
+ };
+
+ ContextGL.prototype.createTexture = function (width, height, format, optimizeForRenderToTexture, streamingLevels) {
+ if (typeof streamingLevels === "undefined") { streamingLevels = 0; }
+ //TODO streaming
+ var texture = new away.gl.Texture(this._gl, width, height);
+ this._textureList.push(texture);
+ return texture;
+ };
+
+ ContextGL.prototype.createVertexBuffer = function (numVertices, data32PerVertex) {
+ var vertexBuffer = new away.gl.VertexBuffer(this._gl, numVertices, data32PerVertex);
+ this._vertexBufferList.push(vertexBuffer);
+ return vertexBuffer;
+ };
+
+ ContextGL.prototype.dispose = function () {
+ var i;
+ for (i = 0; i < this._indexBufferList.length; ++i)
+ this._indexBufferList[i].dispose();
+
+ this._indexBufferList = null;
+
+ for (i = 0; i < this._vertexBufferList.length; ++i)
+ this._vertexBufferList[i].dispose();
+
+ this._vertexBufferList = null;
+
+ for (i = 0; i < this._textureList.length; ++i)
+ this._textureList[i].dispose();
+
+ this._textureList = null;
+
+ for (i = 0; i < this._programList.length; ++i)
+ this._programList[i].dispose();
+
+ for (i = 0; i < this._samplerStates.length; ++i)
+ this._samplerStates[i] = null;
+
+ this._programList = null;
+ };
+
+ ContextGL.prototype.drawToBitmapData = function (destination) {
+ var arrayBuffer = new ArrayBuffer(destination.width * destination.height * 4);
+
+ this._gl.readPixels(0, 0, destination.width, destination.height, this._gl.RGBA, this._gl.UNSIGNED_BYTE, new Uint8Array(arrayBuffer));
+
+ var byteArray = new away.utils.ByteArray();
+ byteArray.setArrayBuffer(arrayBuffer);
+
+ destination.setPixels(new away.geom.Rectangle(0, 0, destination.width, destination.height), byteArray);
+ };
+
+ ContextGL.prototype.drawTriangles = function (indexBuffer, firstIndex, numTriangles) {
+ if (typeof firstIndex === "undefined") { firstIndex = 0; }
+ if (typeof numTriangles === "undefined") { numTriangles = -1; }
+ if (!this._drawing)
+ throw "Need to clear before drawing if the buffer has not been cleared since the last present() call.";
+
+ this._gl.bindBuffer(this._gl.ELEMENT_ARRAY_BUFFER, indexBuffer.glBuffer);
+ this._gl.drawElements(this._gl.TRIANGLES, (numTriangles == -1) ? indexBuffer.numIndices : numTriangles * 3, this._gl.UNSIGNED_SHORT, firstIndex);
+ };
+
+ ContextGL.prototype.present = function () {
+ this._drawing = false;
+ //this._gl.useProgram( null );
+ };
+
+ ContextGL.prototype.setBlendFactors = function (sourceFactor, destinationFactor) {
+ //TODO optimise with table lookup
+ this._blendEnabled = true;
+
+ switch (sourceFactor) {
+ case away.gl.ContextGLBlendFactor.ONE:
+ this._blendSourceFactor = this._gl.ONE;
+ break;
+ case away.gl.ContextGLBlendFactor.DESTINATION_ALPHA:
+ this._blendSourceFactor = this._gl.DST_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.DESTINATION_COLOR:
+ this._blendSourceFactor = this._gl.DST_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE:
+ this._blendSourceFactor = this._gl.ONE;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA:
+ this._blendSourceFactor = this._gl.ONE_MINUS_DST_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR:
+ this._blendSourceFactor = this._gl.ONE_MINUS_DST_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA:
+ this._blendSourceFactor = this._gl.ONE_MINUS_SRC_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR:
+ this._blendSourceFactor = this._gl.ONE_MINUS_SRC_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.SOURCE_ALPHA:
+ this._blendSourceFactor = this._gl.SRC_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.SOURCE_COLOR:
+ this._blendSourceFactor = this._gl.SRC_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.ZERO:
+ this._blendSourceFactor = this._gl.ZERO;
+ break;
+ default:
+ throw "Unknown blend source factor";
+ break;
+ }
+
+ switch (destinationFactor) {
+ case away.gl.ContextGLBlendFactor.ONE:
+ this._blendDestinationFactor = this._gl.ONE;
+ break;
+ case away.gl.ContextGLBlendFactor.DESTINATION_ALPHA:
+ this._blendDestinationFactor = this._gl.DST_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.DESTINATION_COLOR:
+ this._blendDestinationFactor = this._gl.DST_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE:
+ this._blendDestinationFactor = this._gl.ONE;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA:
+ this._blendDestinationFactor = this._gl.ONE_MINUS_DST_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR:
+ this._blendDestinationFactor = this._gl.ONE_MINUS_DST_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA:
+ this._blendDestinationFactor = this._gl.ONE_MINUS_SRC_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR:
+ this._blendDestinationFactor = this._gl.ONE_MINUS_SRC_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.SOURCE_ALPHA:
+ this._blendDestinationFactor = this._gl.SRC_ALPHA;
+ break;
+ case away.gl.ContextGLBlendFactor.SOURCE_COLOR:
+ this._blendDestinationFactor = this._gl.SRC_COLOR;
+ break;
+ case away.gl.ContextGLBlendFactor.ZERO:
+ this._blendDestinationFactor = this._gl.ZERO;
+ break;
+ default:
+ throw "Unknown blend destination factor";
+ break;
+ }
+
+ this.updateBlendStatus();
+ };
+
+ ContextGL.prototype.setColorMask = function (red, green, blue, alpha) {
+ this._gl.colorMask(red, green, blue, alpha);
+ };
+
+ ContextGL.prototype.setCulling = function (triangleFaceToCull, coordinateSystem) {
+ if (typeof coordinateSystem === "undefined") { coordinateSystem = "leftHanded"; }
+ if (triangleFaceToCull == away.gl.ContextGLTriangleFace.NONE) {
+ this._gl.disable(this._gl.CULL_FACE);
+ } else {
+ this._gl.enable(this._gl.CULL_FACE);
+ switch (triangleFaceToCull) {
+ case away.gl.ContextGLTriangleFace.BACK:
+ this._gl.cullFace((coordinateSystem == "leftHanded") ? this._gl.FRONT : this._gl.BACK);
+ break;
+ case away.gl.ContextGLTriangleFace.FRONT:
+ this._gl.cullFace((coordinateSystem == "leftHanded") ? this._gl.BACK : this._gl.FRONT);
+ break;
+ case away.gl.ContextGLTriangleFace.FRONT_AND_BACK:
+ this._gl.cullFace(this._gl.FRONT_AND_BACK);
+ break;
+ default:
+ throw "Unknown ContextGLTriangleFace type.";
+ }
+ }
+ };
+
+ // TODO ContextGLCompareMode
+ ContextGL.prototype.setDepthTest = function (depthMask, passCompareMode) {
+ switch (passCompareMode) {
+ case away.gl.ContextGLCompareMode.ALWAYS:
+ this._gl.depthFunc(this._gl.ALWAYS);
+ break;
+ case away.gl.ContextGLCompareMode.EQUAL:
+ this._gl.depthFunc(this._gl.EQUAL);
+ break;
+ case away.gl.ContextGLCompareMode.GREATER:
+ this._gl.depthFunc(this._gl.GREATER);
+ break;
+ case away.gl.ContextGLCompareMode.GREATER_EQUAL:
+ this._gl.depthFunc(this._gl.GEQUAL);
+ break;
+ case away.gl.ContextGLCompareMode.LESS:
+ this._gl.depthFunc(this._gl.LESS);
+ break;
+ case away.gl.ContextGLCompareMode.LESS_EQUAL:
+ this._gl.depthFunc(this._gl.LEQUAL);
+ break;
+ case away.gl.ContextGLCompareMode.NEVER:
+ this._gl.depthFunc(this._gl.NEVER);
+ break;
+ case away.gl.ContextGLCompareMode.NOT_EQUAL:
+ this._gl.depthFunc(this._gl.NOTEQUAL);
+ break;
+ default:
+ throw "Unknown ContextGLCompareMode type.";
+ break;
+ }
+ this._gl.depthMask(depthMask);
+ };
+
+ ContextGL.prototype.setProgram = function (program) {
+ //TODO decide on construction/reference resposibilities
+ this._currentProgram = program;
+ program.focusProgram();
+ };
+
+ ContextGL.prototype.getUniformLocationNameFromAgalRegisterIndex = function (programType, firstRegister) {
+ switch (programType) {
+ case away.gl.ContextGLProgramType.VERTEX:
+ return "vc";
+ break;
+ case away.gl.ContextGLProgramType.FRAGMENT:
+ return "fc";
+ break;
+ default:
+ throw "Program Type " + programType + " not supported";
+ }
+ };
+
+ /*
+ public setProgramConstantsFromByteArray
+ */
+ ContextGL.prototype.setProgramConstantsFromMatrix = function (programType, firstRegister, matrix, transposedMatrix) {
+ if (typeof transposedMatrix === "undefined") { transposedMatrix = false; }
+ var locationName = this.getUniformLocationNameFromAgalRegisterIndex(programType, firstRegister);
+ this.setGLSLProgramConstantsFromMatrix(locationName, matrix, transposedMatrix);
+ };
+
+ ContextGL.prototype.setProgramConstantsFromArray = function (programType, firstRegister, data, numRegisters) {
+ if (typeof numRegisters === "undefined") { numRegisters = -1; }
+ for (var i = 0; i < numRegisters; ++i) {
+ var currentIndex = i * 4;
+ var locationName = this.getUniformLocationNameFromAgalRegisterIndex(programType, firstRegister + i) + (i + firstRegister);
+
+ this.setGLSLProgramConstantsFromArray(locationName, data, currentIndex);
+ }
+ };
+
+ /*
+ public setGLSLProgramConstantsFromByteArray
+
+ */
+ ContextGL.prototype.setGLSLProgramConstantsFromMatrix = function (locationName, matrix, transposedMatrix) {
+ if (typeof transposedMatrix === "undefined") { transposedMatrix = false; }
+ var location = this._gl.getUniformLocation(this._currentProgram.glProgram, locationName);
+ this._gl.uniformMatrix4fv(location, !transposedMatrix, new Float32Array(matrix.rawData));
+ };
+
+ ContextGL.prototype.setGLSLProgramConstantsFromArray = function (locationName, data, startIndex) {
+ if (typeof startIndex === "undefined") { startIndex = 0; }
+ var location = this._gl.getUniformLocation(this._currentProgram.glProgram, locationName);
+ this._gl.uniform4f(location, data[startIndex], data[startIndex + 1], data[startIndex + 2], data[startIndex + 3]);
+ };
+
+ ContextGL.prototype.setScissorRectangle = function (rectangle) {
+ if (!rectangle) {
+ this._gl.disable(this._gl.SCISSOR_TEST);
+ return;
+ }
+
+ this._gl.enable(this._gl.SCISSOR_TEST);
+ this._gl.scissor(rectangle.x, rectangle.y, rectangle.width, rectangle.height);
+ };
+
+ ContextGL.prototype.setTextureAt = function (sampler, texture) {
+ var locationName = "fs" + sampler;
+ this.setGLSLTextureAt(locationName, texture, sampler);
+ };
+
+ ContextGL.prototype.setGLSLTextureAt = function (locationName, texture, textureIndex) {
+ if (!texture) {
+ this._gl.activeTexture(this._gl.TEXTURE0 + (textureIndex));
+ this._gl.bindTexture(this._gl.TEXTURE_2D, null);
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
+ return;
+ }
+
+ switch (textureIndex) {
+ case 0:
+ this._gl.activeTexture(this._gl.TEXTURE0);
+ break;
+ case 1:
+ this._gl.activeTexture(this._gl.TEXTURE1);
+ break;
+ case 2:
+ this._gl.activeTexture(this._gl.TEXTURE2);
+ break;
+ case 3:
+ this._gl.activeTexture(this._gl.TEXTURE3);
+ break;
+ case 4:
+ this._gl.activeTexture(this._gl.TEXTURE4);
+ break;
+ case 5:
+ this._gl.activeTexture(this._gl.TEXTURE5);
+ break;
+ case 6:
+ this._gl.activeTexture(this._gl.TEXTURE6);
+ break;
+ case 7:
+ this._gl.activeTexture(this._gl.TEXTURE7);
+ break;
+ default:
+ throw "Texture " + textureIndex + " is out of bounds.";
+ }
+
+ var location = this._gl.getUniformLocation(this._currentProgram.glProgram, locationName);
+
+ if (texture.textureType == "texture2d") {
+ this._gl.bindTexture(this._gl.TEXTURE_2D, texture.glTexture);
+ this._gl.uniform1i(location, textureIndex);
+ var samplerState = this._samplerStates[textureIndex];
+
+ if (samplerState.wrap != this._currentWrap) {
+ //this._currentWrap = samplerState.wrap;
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_WRAP_S, samplerState.wrap);
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_WRAP_T, samplerState.wrap);
+ }
+
+ if (samplerState.filter != this._currentFilter) {
+ //this._currentFilter = samplerState.filter;
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, samplerState.filter);
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, samplerState.filter);
+ }
+
+ if (samplerState.mipfilter != this._currentMipFilter) {
+ //this._currentMipFilter = samplerState.mipfilter;
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, samplerState.mipfilter);
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, samplerState.mipfilter);
+ }
+ //this._gl.bindTexture( this._gl.TEXTURE_2D, null );
+ } else if (texture.textureType == "textureCube") {
+ this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, texture.glTexture);
+ this._gl.uniform1i(location, textureIndex);
+ var samplerState = this._samplerStates[textureIndex];
+
+ if (samplerState.wrap != this._currentWrap) {
+ //this._currentWrap = samplerState.wrap;
+ this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_WRAP_S, samplerState.wrap);
+ this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_WRAP_T, samplerState.wrap);
+ }
+
+ if (samplerState.filter != this._currentFilter) {
+ //this._currentFilter = samplerState.filter;
+ this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_MIN_FILTER, samplerState.filter);
+ this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_MAG_FILTER, samplerState.filter);
+ }
+
+ if (samplerState.mipfilter != this._currentMipFilter) {
+ //this._currentMipFilter = samplerState.mipfilter;
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, samplerState.mipfilter);
+ this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, samplerState.mipfilter);
+ }
+ //this._gl.bindTexture( this._gl.TEXTURE_CUBE_MAP, null );
+ }
+ };
+
+ ContextGL.prototype.setSamplerStateAt = function (sampler, wrap, filter, mipfilter) {
+ var glWrap = 0;
+ var glFilter = 0;
+ var glMipFilter = 0;
+
+ switch (wrap) {
+ case away.gl.ContextGLWrapMode.REPEAT:
+ glWrap = this._gl.REPEAT;
+ break;
+ case away.gl.ContextGLWrapMode.CLAMP:
+ glWrap = this._gl.CLAMP_TO_EDGE;
+ break;
+ default:
+ throw "Wrap is not supported: " + wrap;
+ }
+
+ switch (filter) {
+ case away.gl.ContextGLTextureFilter.LINEAR:
+ glFilter = this._gl.LINEAR;
+ break;
+ case away.gl.ContextGLTextureFilter.NEAREST:
+ glFilter = this._gl.NEAREST;
+ break;
+ default:
+ throw "Filter is not supported " + filter;
+ }
+
+ switch (mipfilter) {
+ case away.gl.ContextGLMipFilter.MIPNEAREST:
+ glMipFilter = this._gl.NEAREST_MIPMAP_NEAREST;
+ break;
+ case away.gl.ContextGLMipFilter.MIPLINEAR:
+ glMipFilter = this._gl.LINEAR_MIPMAP_LINEAR;
+ break;
+ case away.gl.ContextGLMipFilter.MIPNONE:
+ glMipFilter = this._gl.NONE;
+ break;
+ default:
+ throw "MipFilter is not supported " + mipfilter;
+ }
+
+ if (0 <= sampler && sampler < ContextGL.MAX_SAMPLERS) {
+ this._samplerStates[sampler].wrap = glWrap;
+ this._samplerStates[sampler].filter = glFilter;
+ this._samplerStates[sampler].mipfilter = glMipFilter;
+ } else {
+ throw "Sampler is out of bounds.";
+ }
+ };
+
+ ContextGL.prototype.setVertexBufferAt = function (index, buffer, bufferOffset, format) {
+ if (typeof bufferOffset === "undefined") { bufferOffset = 0; }
+ if (typeof format === "undefined") { format = null; }
+ var locationName = "va" + index;
+ this.setGLSLVertexBufferAt(locationName, buffer, bufferOffset, format);
+ };
+
+ ContextGL.prototype.setGLSLVertexBufferAt = function (locationName, buffer, bufferOffset, format) {
+ if (typeof bufferOffset === "undefined") { bufferOffset = 0; }
+ if (typeof format === "undefined") { format = null; }
+ //if ( buffer == null )return;
+ var location = this._currentProgram ? this._gl.getAttribLocation(this._currentProgram.glProgram, locationName) : -1;
+ if (!buffer) {
+ if (location > -1)
+ this._gl.disableVertexAttribArray(location);
+
+ return;
+ }
+
+ this._gl.bindBuffer(this._gl.ARRAY_BUFFER, buffer.glBuffer);
+
+ var dimension;
+ var type = this._gl.FLOAT;
+ var numBytes = 4;
+
+ switch (format) {
+ case away.gl.ContextGLVertexBufferFormat.BYTES_4:
+ dimension = 4;
+ break;
+ case away.gl.ContextGLVertexBufferFormat.FLOAT_1:
+ dimension = 1;
+ break;
+ case away.gl.ContextGLVertexBufferFormat.FLOAT_2:
+ dimension = 2;
+ break;
+ case away.gl.ContextGLVertexBufferFormat.FLOAT_3:
+ dimension = 3;
+ break;
+ case away.gl.ContextGLVertexBufferFormat.FLOAT_4:
+ dimension = 4;
+ break;
+ default:
+ throw "Buffer format " + format + " is not supported.";
+ }
+
+ this._gl.enableVertexAttribArray(location);
+ this._gl.vertexAttribPointer(location, dimension, type, false, buffer.data32PerVertex * numBytes, bufferOffset * numBytes);
+ };
+
+ ContextGL.prototype.setRenderToTexture = function (target, enableDepthAndStencil, antiAlias, surfaceSelector) {
+ if (typeof enableDepthAndStencil === "undefined") { enableDepthAndStencil = false; }
+ if (typeof antiAlias === "undefined") { antiAlias = 0; }
+ if (typeof surfaceSelector === "undefined") { surfaceSelector = 0; }
+ var frameBuffer = target.frameBuffer;
+ this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, frameBuffer);
+
+ if (enableDepthAndStencil) {
+ this._gl.enable(this._gl.STENCIL_TEST);
+ this._gl.enable(this._gl.DEPTH_TEST);
+ }
+
+ this._gl.viewport['width'] = frameBuffer.width;
+ this._gl.viewport['height'] = frameBuffer.height;
+
+ this._gl.viewport(0, 0, frameBuffer.width, frameBuffer.height);
+ };
+
+ ContextGL.prototype.setRenderToBackBuffer = function () {
+ this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, null);
+ };
+
+ ContextGL.prototype.updateBlendStatus = function () {
+ if (this._blendEnabled) {
+ this._gl.enable(this._gl.BLEND);
+ this._gl.blendEquation(this._gl.FUNC_ADD);
+ this._gl.blendFunc(this._blendSourceFactor, this._blendDestinationFactor);
+ } else {
+ this._gl.disable(this._gl.BLEND);
+ }
+ };
+ ContextGL.MAX_SAMPLERS = 8;
+
+ ContextGL.modulo = 0;
+ return ContextGL;
+ })();
+ gl.ContextGL = ContextGL;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (gl) {
+ var AGLSLContextGL = (function (_super) {
+ __extends(AGLSLContextGL, _super);
+ function AGLSLContextGL(canvas) {
+ _super.call(this, canvas);
+ }
+ //@override
+ AGLSLContextGL.prototype.setProgramConstantsFromMatrix = function (programType, firstRegister, matrix, transposedMatrix) {
+ if (typeof transposedMatrix === "undefined") { transposedMatrix = false; }
+ //TODO remove special case for WebGL matrix calls?
+ var d = matrix.rawData;
+ if (transposedMatrix) {
+ this.setProgramConstantsFromArray(programType, firstRegister, [d[0], d[4], d[8], d[12]], 1);
+ this.setProgramConstantsFromArray(programType, firstRegister + 1, [d[1], d[5], d[9], d[13]], 1);
+ this.setProgramConstantsFromArray(programType, firstRegister + 2, [d[2], d[6], d[10], d[14]], 1);
+ this.setProgramConstantsFromArray(programType, firstRegister + 3, [d[3], d[7], d[11], d[15]], 1);
+ } else {
+ this.setProgramConstantsFromArray(programType, firstRegister, [d[0], d[1], d[2], d[3]], 1);
+ this.setProgramConstantsFromArray(programType, firstRegister + 1, [d[4], d[5], d[6], d[7]], 1);
+ this.setProgramConstantsFromArray(programType, firstRegister + 2, [d[8], d[9], d[10], d[11]], 1);
+ this.setProgramConstantsFromArray(programType, firstRegister + 3, [d[12], d[13], d[14], d[15]], 1);
+ }
+ };
+ return AGLSLContextGL;
+ })(away.gl.ContextGL);
+ gl.AGLSLContextGL = AGLSLContextGL;
+ })(away.gl || (away.gl = {}));
+ var gl = away.gl;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * A class that provides constant values for visual blend mode effects. These
+ * constants are used in the following:
+ *
+ *
The blendMode property of the
+ * flash.display.DisplayObject class.
+ *
The blendMode parameter of the draw()
+ * method of the flash.display.BitmapData class
+ *
+ */
+ (function (base) {
+ var BlendMode = (function () {
+ function BlendMode() {
+ }
+ BlendMode.ADD = "add";
+
+ BlendMode.ALPHA = "alpha";
+
+ BlendMode.DARKEN = "darken";
+
+ BlendMode.DIFFERENCE = "difference";
+
+ BlendMode.ERASE = "erase";
+
+ BlendMode.HARDLIGHT = "hardlight";
+
+ BlendMode.INVERT = "invert";
+
+ BlendMode.LAYER = "layer";
+
+ BlendMode.LIGHTEN = "lighten";
+
+ BlendMode.MULTIPLY = "multiply";
+
+ BlendMode.NORMAL = "normal";
+
+ BlendMode.OVERLAY = "overlay";
+
+ BlendMode.SCREEN = "screen";
+
+ BlendMode.SHADER = "shader";
+
+ BlendMode.SUBTRACT = "subtract";
+ return BlendMode;
+ })();
+ base.BlendMode = BlendMode;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ */
+ (function (base) {
+ var AlignmentMode = (function () {
+ function AlignmentMode() {
+ }
+ AlignmentMode.REGISTRATION_POINT = "registrationPoint";
+
+ AlignmentMode.PIVOT_POINT = "pivot";
+ return AlignmentMode;
+ })();
+ base.AlignmentMode = AlignmentMode;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ */
+ (function (base) {
+ var OrientationMode = (function () {
+ function OrientationMode() {
+ }
+ OrientationMode.DEFAULT = "default";
+
+ OrientationMode.CAMERA_PLANE = "cameraPlane";
+
+ OrientationMode.CAMERA_POSITION = "cameraPosition";
+ return OrientationMode;
+ })();
+ base.OrientationMode = OrientationMode;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (base) {
+ /**
+ *
+ */
+ var BitmapData = (function () {
+ /**
+ *
+ * @param width
+ * @param height
+ * @param transparent
+ * @param fillColor
+ */
+ function BitmapData(width, height, transparent, fillColor) {
+ if (typeof transparent === "undefined") { transparent = true; }
+ if (typeof fillColor === "undefined") { fillColor = null; }
+ this._alpha = 1;
+ this._locked = false;
+ this._transparent = transparent;
+ this._imageCanvas = document.createElement("canvas");
+ this._imageCanvas.width = width;
+ this._imageCanvas.height = height;
+ this._context = this._imageCanvas.getContext("2d");
+ this._rect = new away.geom.Rectangle(0, 0, width, height);
+
+ if (fillColor != null) {
+ if (this._transparent) {
+ this._alpha = away.utils.ColorUtils.float32ColorToARGB(fillColor)[0] / 255;
+ } else {
+ this._alpha = 1;
+ }
+
+ this.fillRect(this._rect, fillColor);
+ }
+ }
+ /**
+ *
+ */
+ BitmapData.prototype.dispose = function () {
+ this._context = null;
+ this._imageCanvas = null;
+ this._imageData = null;
+ this._rect = null;
+ this._transparent = null;
+ this._locked = null;
+ };
+
+ /**
+ *
+ */
+ BitmapData.prototype.lock = function () {
+ this._locked = true;
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ };
+
+ /**
+ *
+ */
+ BitmapData.prototype.unlock = function () {
+ this._locked = false;
+
+ if (this._imageData) {
+ this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
+ this._imageData = null;
+ }
+ };
+
+ /**
+ *
+ * @param x
+ * @param y
+ * @param color
+ */
+ BitmapData.prototype.getPixel = function (x, y) {
+ var r;
+ var g;
+ var b;
+ var a;
+
+ if (!this._locked) {
+ var pixelData = this._context.getImageData(x, y, 1, 1);
+
+ r = pixelData.data[0];
+ g = pixelData.data[1];
+ b = pixelData.data[2];
+ a = pixelData.data[3];
+ } else {
+ var index = (x + y * this._imageCanvas.width) * 4;
+
+ if (!this._imageData)
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+
+ r = this._imageData.data[index + 0];
+ g = this._imageData.data[index + 1];
+ b = this._imageData.data[index + 2];
+ a = this._imageData.data[index + 3];
+ }
+
+ if (!this._locked) {
+ this._imageData = null;
+ }
+
+ return (a << 24) | (r << 16) | (g << 8) | b;
+ };
+
+ /**
+ *
+ * @param x
+ * @param y
+ * @param color
+ */
+ BitmapData.prototype.setPixel = function (x, y, color) {
+ var argb = away.utils.ColorUtils.float32ColorToARGB(color);
+
+ if (!this._locked) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+
+ if (this._imageData) {
+ var index = (x + y * this._imageCanvas.width) * 4;
+
+ this._imageData.data[index + 0] = argb[1];
+ this._imageData.data[index + 1] = argb[2];
+ this._imageData.data[index + 2] = argb[3];
+ this._imageData.data[index + 3] = 255;
+ }
+
+ if (!this._locked) {
+ this._context.putImageData(this._imageData, 0, 0);
+ this._imageData = null;
+ }
+ };
+
+ /**
+ *
+ * @param rect
+ * @param inputByteArray
+ */
+ BitmapData.prototype.setPixels = function (rect, inputByteArray) {
+ if (!this._locked) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+
+ if (this._imageData) {
+ inputByteArray.position = 0;
+ var i, j, index;
+ for (i = 0; i < rect.width; ++i) {
+ for (j = 0; j < rect.height; ++j) {
+ index = (i + rect.x + (j + rect.y) * this._imageCanvas.width) * 4;
+
+ this._imageData.data[index + 0] = inputByteArray.readUnsignedInt();
+ this._imageData.data[index + 1] = inputByteArray.readUnsignedInt();
+ this._imageData.data[index + 2] = inputByteArray.readUnsignedInt();
+ this._imageData.data[index + 3] = inputByteArray.readUnsignedInt();
+ }
+ }
+ }
+
+ if (!this._locked) {
+ this._context.putImageData(this._imageData, 0, 0);
+ this._imageData = null;
+ }
+ };
+
+ /**
+ *
+ * @param x
+ * @param y
+ * @param color
+ */
+ BitmapData.prototype.setPixel32 = function (x, y, color) {
+ var argb = away.utils.ColorUtils.float32ColorToARGB(color);
+
+ if (!this._locked) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+
+ if (this._imageData) {
+ var index = (x + y * this._imageCanvas.width) * 4;
+
+ this._imageData.data[index + 0] = argb[1];
+ this._imageData.data[index + 1] = argb[2];
+ this._imageData.data[index + 2] = argb[3];
+ this._imageData.data[index + 3] = argb[0];
+ }
+
+ if (!this._locked) {
+ this._context.putImageData(this._imageData, 0, 0);
+ this._imageData = null;
+ }
+ };
+
+ BitmapData.prototype.setVector = function (rect, inputVector) {
+ if (!this._locked) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+
+ if (this._imageData) {
+ var i, j, index, argb;
+ for (i = 0; i < rect.width; ++i) {
+ for (j = 0; j < rect.height; ++j) {
+ argb = away.utils.ColorUtils.float32ColorToARGB(inputVector[i + j * rect.width]);
+ index = (i + rect.x + (j + rect.y) * this._imageCanvas.width) * 4;
+
+ this._imageData.data[index + 0] = argb[1];
+ this._imageData.data[index + 1] = argb[2];
+ this._imageData.data[index + 2] = argb[3];
+ this._imageData.data[index + 3] = argb[0];
+ }
+ }
+ }
+
+ if (!this._locked) {
+ this._context.putImageData(this._imageData, 0, 0);
+ this._imageData = null;
+ }
+ };
+
+ BitmapData.prototype.drawImage = function (img, sourceRect, destRect) {
+ if (this._locked) {
+ // If canvas is locked:
+ //
+ // 1) copy image data back to canvas
+ // 2) draw object
+ // 3) read _imageData back out
+ if (this._imageData) {
+ this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
+ }
+
+ this._drawImage(img, sourceRect, destRect);
+
+ if (this._imageData) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+ } else {
+ this._drawImage(img, sourceRect, destRect);
+ }
+ };
+
+ BitmapData.prototype._drawImage = function (img, sourceRect, destRect) {
+ if (img instanceof away.base.BitmapData) {
+ this._context.drawImage(img.canvas, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
+ } else if (img instanceof HTMLImageElement) {
+ this._context.drawImage(img, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
+ }
+ };
+
+ BitmapData.prototype.copyPixels = function (bmpd, sourceRect, destRect) {
+ if (this._locked) {
+ // If canvas is locked:
+ //
+ // 1) copy image data back to canvas
+ // 2) draw object
+ // 3) read _imageData back out
+ if (this._imageData) {
+ this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
+ }
+
+ this._copyPixels(bmpd, sourceRect, destRect);
+
+ if (this._imageData) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+ } else {
+ this._copyPixels(bmpd, sourceRect, destRect);
+ }
+ };
+
+ BitmapData.prototype._copyPixels = function (bmpd, sourceRect, destRect) {
+ if (bmpd instanceof away.base.BitmapData) {
+ this._context.drawImage(bmpd.canvas, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
+ } else if (bmpd instanceof HTMLImageElement) {
+ this._context.drawImage(bmpd, sourceRect.x, sourceRect.y, sourceRect.width, sourceRect.height, destRect.x, destRect.y, destRect.width, destRect.height);
+ }
+ };
+
+ /**
+ *
+ * @param rect
+ * @param color
+ */
+ BitmapData.prototype.fillRect = function (rect, color) {
+ if (this._locked) {
+ // If canvas is locked:
+ //
+ // 1) copy image data back to canvas
+ // 2) apply fill
+ // 3) read _imageData back out
+ if (this._imageData) {
+ this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
+ }
+
+ this._context.fillStyle = this.hexToRGBACSS(color);
+ this._context.fillRect(rect.x, rect.y, rect.width, rect.height);
+
+ if (this._imageData) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+ } else {
+ this._context.fillStyle = this.hexToRGBACSS(color);
+ this._context.fillRect(rect.x, rect.y, rect.width, rect.height);
+ }
+ };
+
+ BitmapData.prototype.draw = function (source, matrix) {
+ if (this._locked) {
+ // If canvas is locked:
+ //
+ // 1) copy image data back to canvas
+ // 2) draw object
+ // 3) read _imageData back out
+ if (this._imageData) {
+ this._context.putImageData(this._imageData, 0, 0); // at coords 0,0
+ }
+
+ this._draw(source, matrix);
+
+ if (this._imageData) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+ } else {
+ this._draw(source, matrix);
+ }
+ };
+
+ BitmapData.prototype._draw = function (source, matrix) {
+ if (source instanceof away.base.BitmapData) {
+ this._context.save();
+
+ if (matrix != null)
+ this._context.setTransform(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty);
+
+ this._context.drawImage(source.canvas, 0, 0);
+ this._context.restore();
+ } else if (source instanceof HTMLImageElement) {
+ this._context.save();
+
+ if (matrix != null)
+ this._context.setTransform(matrix.a, matrix.b, matrix.c, matrix.d, matrix.tx, matrix.ty);
+
+ this._context.drawImage(source, 0, 0);
+ this._context.restore();
+ }
+ };
+
+ BitmapData.prototype.copyChannel = function (sourceBitmap, sourceRect, destPoint, sourceChannel, destChannel) {
+ var imageData = sourceBitmap.imageData;
+
+ if (!this._locked) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+
+ if (this._imageData) {
+ var sourceData = sourceBitmap.imageData.data;
+ var destData = this._imageData.data;
+
+ var sourceOffset = Math.round(Math.log(sourceChannel) / Math.log(2));
+ var destOffset = Math.round(Math.log(destChannel) / Math.log(2));
+
+ var i, j, sourceIndex, destIndex;
+ for (i = 0; i < sourceRect.width; ++i) {
+ for (j = 0; j < sourceRect.height; ++j) {
+ sourceIndex = (i + sourceRect.x + (j + sourceRect.y) * sourceBitmap.width) * 4;
+ destIndex = (i + destPoint.x + (j + destPoint.y) * this.width) * 4;
+
+ destData[destIndex + destOffset] = sourceData[sourceIndex + sourceOffset];
+ }
+ }
+ }
+
+ if (!this._locked) {
+ this._context.putImageData(this._imageData, 0, 0);
+ this._imageData = null;
+ }
+ };
+
+ BitmapData.prototype.colorTransform = function (rect, colorTransform) {
+ if (!this._locked) {
+ this._imageData = this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ }
+
+ if (this._imageData) {
+ var data = this._imageData.data;
+
+ var i, j, index;
+ for (i = 0; i < rect.width; ++i) {
+ for (j = 0; j < rect.height; ++j) {
+ index = (i + rect.x + (j + rect.y) * this.width) * 4;
+
+ data[index] = data[index] * colorTransform.redMultiplier + colorTransform.redOffset;
+ data[index + 1] = data[index + 1] * colorTransform.greenMultiplier + colorTransform.greenOffset;
+ data[index + 2] = data[index + 2] * colorTransform.blueMultiplier + colorTransform.blueOffset;
+ data[index + 3] = data[index + 3] * colorTransform.alphaMultiplier + colorTransform.alphaOffset;
+ }
+ }
+ }
+
+ if (!this._locked) {
+ this._context.putImageData(this._imageData, 0, 0);
+ this._imageData = null;
+ }
+ };
+
+
+ Object.defineProperty(BitmapData.prototype, "imageData", {
+ /**
+ *
+ * @returns {ImageData}
+ */
+ get: function () {
+ return this._context.getImageData(0, 0, this._rect.width, this._rect.height);
+ },
+ /**
+ *
+ * @param {ImageData}
+ */
+ set: function (value) {
+ this._context.putImageData(value, 0, 0);
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(BitmapData.prototype, "width", {
+ /**
+ *
+ * @returns {number}
+ */
+ get: function () {
+ return this._imageCanvas.width;
+ },
+ /**
+ *
+ * @param {number}
+ */
+ set: function (value) {
+ this._rect.width = value;
+ this._imageCanvas.width = value;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(BitmapData.prototype, "height", {
+ /**
+ *
+ * @returns {number}
+ */
+ get: function () {
+ return this._imageCanvas.height;
+ },
+ /**
+ *
+ * @param {number}
+ */
+ set: function (value) {
+ this._rect.height = value;
+ this._imageCanvas.height = value;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(BitmapData.prototype, "rect", {
+ /**
+ *
+ * @param {away.geom.Rectangle}
+ */
+ get: function () {
+ return this._rect;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(BitmapData.prototype, "canvas", {
+ /**
+ *
+ * @returns {HTMLCanvasElement}
+ */
+ get: function () {
+ return this._imageCanvas;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(BitmapData.prototype, "context", {
+ /**
+ *
+ * @returns {HTMLCanvasElement}
+ */
+ get: function () {
+ return this._context;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ // Private
+ /**
+ * convert decimal value to Hex
+ */
+ BitmapData.prototype.hexToRGBACSS = function (d) {
+ var argb = away.utils.ColorUtils.float32ColorToARGB(d);
+
+ if (this._transparent == false) {
+ argb[0] = 1;
+
+ return 'rgba(' + argb[1] + ',' + argb[2] + ',' + argb[3] + ',' + argb[0] + ')';
+ }
+
+ return 'rgba(' + argb[1] + ',' + argb[2] + ',' + argb[3] + ',' + argb[0] / 255 + ')';
+ };
+ return BitmapData;
+ })();
+ base.BitmapData = BitmapData;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (base) {
+ var BitmapDataChannel = (function () {
+ function BitmapDataChannel() {
+ }
+ BitmapDataChannel.ALPHA = 8;
+ BitmapDataChannel.BLUE = 4;
+ BitmapDataChannel.GREEN = 2;
+ BitmapDataChannel.RED = 1;
+ return BitmapDataChannel;
+ })();
+ base.BitmapDataChannel = BitmapDataChannel;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * The CapsStyle class is an enumeration of constant values that specify the
+ * caps style to use in drawing lines. The constants are provided for use as
+ * values in the caps parameter of the
+ * flash.display.Graphics.lineStyle() method. You can specify the
+ * following three types of caps:
+ */
+ (function (base) {
+ var CapsStyle = (function () {
+ function CapsStyle() {
+ }
+ CapsStyle.ROUND = "round";
+
+ CapsStyle.NONE = "none";
+
+ CapsStyle.SQUARE = "square";
+ return CapsStyle;
+ })();
+ base.CapsStyle = CapsStyle;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * The DisplayObject class is the base class for all objects that can be
+ * placed on the display list. The display list manages all objects displayed
+ * in flash. Use the DisplayObjectContainer class to arrange the
+ * display objects in the display list. DisplayObjectContainer objects can
+ * have child display objects, while other display objects, such as Shape and
+ * TextField objects, are "leaf" nodes that have only parents and siblings, no
+ * children.
+ *
+ *
The DisplayObject class supports basic functionality like the x
+ * and y position of an object, as well as more advanced properties of
+ * the object such as its transformation matrix.
+ *
+ *
DisplayObject is an abstract base class; therefore, you cannot call
+ * DisplayObject directly. Invoking new DisplayObject() throws an
+ * ArgumentError exception.
+ *
+ *
All display objects inherit from the DisplayObject class.
+ *
+ *
The DisplayObject class itself does not include any APIs for rendering
+ * content onscreen. For that reason, if you want create a custom subclass of
+ * the DisplayObject class, you will want to extend one of its subclasses that
+ * do have APIs for rendering content onscreen, such as the Shape, Sprite,
+ * Bitmap, SimpleButton, TextField, or MovieClip class.
+ *
+ *
The DisplayObject class contains several broadcast events. Normally, the
+ * target of any particular event is a specific DisplayObject instance. For
+ * example, the target of an added event is the specific
+ * DisplayObject instance that was added to the display list. Having a single
+ * target restricts the placement of event listeners to that target and in
+ * some cases the target's ancestors on the display list. With broadcast
+ * events, however, the target is not a specific DisplayObject instance, but
+ * rather all DisplayObject instances, including those that are not on the
+ * display list. This means that you can add a listener to any DisplayObject
+ * instance to listen for broadcast events. In addition to the broadcast
+ * events listed in the DisplayObject class's Events table, the DisplayObject
+ * class also inherits two broadcast events from the EventDispatcher class:
+ * activate and deactivate.
+ *
+ *
Some properties previously used in the ActionScript 1.0 and 2.0
+ * MovieClip, TextField, and Button classes(such as _alpha,
+ * _height, _name, _width,
+ * _x, _y, and others) have equivalents in the
+ * ActionScript 3.0 DisplayObject class that are renamed so that they no
+ * longer begin with the underscore(_) character.
+ *
+ *
For more information, see the "Display Programming" chapter of the
+ * ActionScript 3.0 Developer's Guide.
+ *
+ * @event added Dispatched when a display object is added to the
+ * display list. The following methods trigger this
+ * event:
+ * DisplayObjectContainer.addChild(),
+ * DisplayObjectContainer.addChildAt().
+ * @event addedToStage Dispatched when a display object is added to the on
+ * stage display list, either directly or through the
+ * addition of a sub tree in which the display object
+ * is contained. The following methods trigger this
* event:
* DisplayObjectContainer.addChild(),
* DisplayObjectContainer.addChildAt().
@@ -5602,16 +7219,17 @@ var away;
return this._pBounds;
},
set: function (value) {
- if (this._showBounds)
- this.removeBounds();
+ if (this._pBounds == value)
+ return;
this._pBounds = value;
+
this._worldBounds = value.clone();
this.pInvalidateBounds();
- if (this._showBounds)
- this.addBounds();
+ if (this._boundsVisible)
+ this._partitionNode._iUpdateEntityBounds();
},
enumerable: true,
configurable: true
@@ -6271,22 +7889,20 @@ var away;
configurable: true
});
- Object.defineProperty(DisplayObject.prototype, "showBounds", {
+ Object.defineProperty(DisplayObject.prototype, "boundsVisible", {
/**
*
*/
get: function () {
- return this._showBounds;
+ return this._boundsVisible;
},
set: function (value) {
- if (value == this._showBounds)
+ if (value == this._boundsVisible)
return;
- this._showBounds = value;
- // if (this._showBounds)
- // this.addChild(this._pBounds.boundingEntity);
- // else
- // this.removeBounds();
+ this._boundsVisible = value;
+
+ this._partitionNode.boundsVisible = value;
},
enumerable: true,
configurable: true
@@ -6398,6 +8014,12 @@ var away;
*
*/
get: function () {
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the bounds of the entity, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
+
if (this._worldBoundsInvalid) {
this._worldBoundsInvalid = false;
this._worldBounds.transformFrom(this.bounds, this.sceneTransform);
@@ -7344,16 +8966,6 @@ var away;
this.notifySceneChange();
};
- /**
- * @private
- */
- DisplayObject.prototype.addBounds = function () {
- if (!this._boundsIsShown) {
- this._boundsIsShown = true;
- // this.addChild(this._pBounds.boundingEntity);//TODO turn this into a Node-based bounding Entity
- }
- };
-
/**
* @private
*/
@@ -7454,54 +9066,193 @@ var away;
this.invalidateMatrix3D();
- if (this._listenToPositionChanged)
- this.notifyPositionChanged();
+ if (this._listenToPositionChanged)
+ this.notifyPositionChanged();
+ };
+
+ /**
+ * @private
+ */
+ DisplayObject.prototype.invalidateRotation = function () {
+ if (this._rotationDirty)
+ return;
+
+ this._rotationDirty = true;
+
+ this.invalidateMatrix3D();
+
+ if (this._listenToRotationChanged)
+ this.notifyRotationChanged();
+ };
+
+ /**
+ * @private
+ */
+ DisplayObject.prototype.invalidateScale = function () {
+ if (this._scaleDirty)
+ return;
+
+ this._scaleDirty = true;
+
+ this.invalidateMatrix3D();
+
+ if (this._listenToScaleChanged)
+ this.notifyScaleChanged();
+ };
+ return DisplayObject;
+ })(away.library.NamedAssetBase);
+ base.DisplayObject = DisplayObject;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.base
+ */
+ (function (base) {
+ /**
+ *
+ * Geometry is a collection of SubGeometries, each of which contain the actual geometrical data such as vertices,
+ * normals, uvs, etc. It also contains a reference to an animation class, which defines how the geometry moves.
+ * A Geometry object is assigned to a Mesh, a scene graph occurence of the geometry, which in turn assigns
+ * the SubGeometries to its respective TriangleSubMesh objects.
+ *
+ *
+ *
+ * @see away.core.base.SubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.Geometry
+ */
+ var Geometry = (function (_super) {
+ __extends(Geometry, _super);
+ /**
+ * Creates a new Geometry object.
+ */
+ function Geometry() {
+ _super.call(this);
+
+ this._subGeometries = new Array();
+ }
+ Object.defineProperty(Geometry.prototype, "assetType", {
+ get: function () {
+ return away.library.AssetType.GEOMETRY;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(Geometry.prototype, "subGeometries", {
+ /**
+ * A collection of TriangleSubGeometry objects, each of which contain geometrical data such as vertices, normals, etc.
+ */
+ get: function () {
+ return this._subGeometries;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Geometry.prototype.getSubGeometries = function () {
+ return this._subGeometries;
+ };
+
+ Geometry.prototype.applyTransformation = function (transform) {
+ var len = this._subGeometries.length;
+ for (var i = 0; i < len; ++i)
+ this._subGeometries[i].applyTransformation(transform);
+ };
+
+ /**
+ * Adds a new TriangleSubGeometry object to the list.
+ * @param subGeometry The TriangleSubGeometry object to be added.
+ */
+ Geometry.prototype.addSubGeometry = function (subGeometry) {
+ this._subGeometries.push(subGeometry);
+
+ subGeometry.parentGeometry = this;
+
+ if (this.hasEventListener(away.events.GeometryEvent.SUB_GEOMETRY_ADDED))
+ this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.SUB_GEOMETRY_ADDED, subGeometry));
+
+ this.iInvalidateBounds(subGeometry);
};
/**
- * @private
+ * Removes a new TriangleSubGeometry object from the list.
+ * @param subGeometry The TriangleSubGeometry object to be removed.
*/
- DisplayObject.prototype.invalidateRotation = function () {
- if (this._rotationDirty)
- return;
+ Geometry.prototype.removeSubGeometry = function (subGeometry) {
+ this._subGeometries.splice(this._subGeometries.indexOf(subGeometry), 1);
- this._rotationDirty = true;
+ subGeometry.parentGeometry = null;
- this.invalidateMatrix3D();
+ if (this.hasEventListener(away.events.GeometryEvent.SUB_GEOMETRY_REMOVED))
+ this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.SUB_GEOMETRY_REMOVED, subGeometry));
- if (this._listenToRotationChanged)
- this.notifyRotationChanged();
+ this.iInvalidateBounds(subGeometry);
};
/**
- * @private
+ * Clones the geometry.
+ * @return An exact duplicate of the current Geometry object.
*/
- DisplayObject.prototype.invalidateScale = function () {
- if (this._scaleDirty)
- return;
+ Geometry.prototype.clone = function () {
+ var clone = new Geometry();
+ var len = this._subGeometries.length;
- this._scaleDirty = true;
+ for (var i = 0; i < len; ++i)
+ clone.addSubGeometry(this._subGeometries[i].clone());
- this.invalidateMatrix3D();
+ return clone;
+ };
- if (this._listenToScaleChanged)
- this.notifyScaleChanged();
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ Geometry.prototype.scale = function (scale) {
+ var numSubGeoms = this._subGeometries.length;
+ for (var i = 0; i < numSubGeoms; ++i)
+ this._subGeometries[i].scale(scale);
};
/**
- * @private
+ * Clears all resources used by the Geometry object, including SubGeometries.
*/
- DisplayObject.prototype.removeBounds = function () {
- if (this._boundsIsShown) {
- this._boundsIsShown = false;
+ Geometry.prototype.dispose = function () {
+ var numSubGeoms = this._subGeometries.length;
- // this.removeChild(this._pBounds.boundingEntity);
- this._pBounds.disposeRenderable();
+ for (var i = 0; i < numSubGeoms; ++i) {
+ var subGeom = this._subGeometries[0];
+ this.removeSubGeometry(subGeom);
+ subGeom.dispose();
}
};
- return DisplayObject;
+
+ /**
+ * Scales the uv coordinates (tiling)
+ * @param scaleU The amount by which to scale on the u axis. Default is 1;
+ * @param scaleV The amount by which to scale on the v axis. Default is 1;
+ */
+ Geometry.prototype.scaleUV = function (scaleU, scaleV) {
+ if (typeof scaleU === "undefined") { scaleU = 1; }
+ if (typeof scaleV === "undefined") { scaleV = 1; }
+ var numSubGeoms = this._subGeometries.length;
+
+ for (var i = 0; i < numSubGeoms; ++i)
+ this._subGeometries[i].scaleUV(scaleU, scaleV);
+ };
+
+ Geometry.prototype.iInvalidateBounds = function (subGeom) {
+ if (this.hasEventListener(away.events.GeometryEvent.BOUNDS_INVALID))
+ this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.BOUNDS_INVALID, subGeom));
+ };
+ return Geometry;
})(away.library.NamedAssetBase);
- base.DisplayObject = DisplayObject;
+ base.Geometry = Geometry;
})(away.base || (away.base = {}));
var base = away.base;
})(away || (away = {}));
@@ -8420,10 +10171,365 @@ var away;
}
InterpolationMethod.LINEAR_RGB = "linearRGB";
- InterpolationMethod.RGB = "rgb";
- return InterpolationMethod;
- })();
- base.InterpolationMethod = InterpolationMethod;
+ InterpolationMethod.RGB = "rgb";
+ return InterpolationMethod;
+ })();
+ base.InterpolationMethod = InterpolationMethod;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+///
+///
+var away;
+(function (away) {
+ /**
+ * @module away.base
+ */
+ (function (base) {
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ var SubGeometryBase = (function (_super) {
+ __extends(SubGeometryBase, _super);
+ /**
+ *
+ */
+ function SubGeometryBase(concatenatedArrays) {
+ _super.call(this);
+ this._pStrideOffsetDirty = true;
+ this._pConcatenateArrays = true;
+ this._pStride = new Object();
+ this._pOffset = new Object();
+
+ this._pConcatenateArrays = concatenatedArrays;
+ }
+ SubGeometryBase.prototype._pUpdateStrideOffset = function () {
+ throw new away.errors.AbstractMethodError();
+ };
+
+ Object.defineProperty(SubGeometryBase.prototype, "subMeshClass", {
+ get: function () {
+ return this._pSubMeshClass;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(SubGeometryBase.prototype, "concatenateArrays", {
+ /**
+ *
+ */
+ get: function () {
+ return this._pConcatenateArrays;
+ },
+ set: function (value) {
+ if (this._pConcatenateArrays == value)
+ return;
+
+ this._pConcatenateArrays = value;
+
+ this._pStrideOffsetDirty = true;
+
+ if (value)
+ this._pNotifyVerticesUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(SubGeometryBase.prototype, "indices", {
+ /**
+ * The raw index data that define the faces.
+ */
+ get: function () {
+ return this._pIndices;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(SubGeometryBase.prototype, "vertices", {
+ /**
+ *
+ */
+ get: function () {
+ this.updateVertices();
+
+ return this._pVertices;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(SubGeometryBase.prototype, "numTriangles", {
+ /**
+ * The total amount of triangles in the TriangleSubGeometry.
+ */
+ get: function () {
+ return this._numTriangles;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(SubGeometryBase.prototype, "numVertices", {
+ get: function () {
+ return this._pNumVertices;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ /**
+ *
+ */
+ SubGeometryBase.prototype.getStride = function (dataType) {
+ if (this._pStrideOffsetDirty)
+ this._pUpdateStrideOffset();
+
+ return this._pStride[dataType];
+ };
+
+ /**
+ *
+ */
+ SubGeometryBase.prototype.getOffset = function (dataType) {
+ if (this._pStrideOffsetDirty)
+ this._pUpdateStrideOffset();
+
+ return this._pOffset[dataType];
+ };
+
+ SubGeometryBase.prototype.updateVertices = function () {
+ throw new away.errors.AbstractMethodError();
+ };
+
+ /**
+ *
+ */
+ SubGeometryBase.prototype.dispose = function () {
+ this._pIndices = null;
+ this._pVertices = null;
+ };
+
+ /**
+ * Updates the face indices of the TriangleSubGeometry.
+ *
+ * @param indices The face indices to upload.
+ */
+ SubGeometryBase.prototype.updateIndices = function (indices) {
+ this._pIndices = indices;
+ this._numIndices = indices.length;
+
+ this._numTriangles = this._numIndices / 3;
+
+ this.notifyIndicesUpdate();
+ };
+
+ /**
+ * @protected
+ */
+ SubGeometryBase.prototype.pInvalidateBounds = function () {
+ if (this.parentGeometry)
+ this.parentGeometry.iInvalidateBounds(this);
+ };
+
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ SubGeometryBase.prototype.clone = function () {
+ throw new away.errors.AbstractMethodError();
+ };
+
+ SubGeometryBase.prototype.applyTransformation = function (transform) {
+ };
+
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ SubGeometryBase.prototype.scale = function (scale) {
+ };
+
+ SubGeometryBase.prototype.scaleUV = function (scaleU, scaleV) {
+ if (typeof scaleU === "undefined") { scaleU = 1; }
+ if (typeof scaleV === "undefined") { scaleV = 1; }
+ };
+
+ SubGeometryBase.prototype.getBoundingPositions = function () {
+ throw new away.errors.AbstractMethodError();
+ };
+
+ SubGeometryBase.prototype.notifyIndicesUpdate = function () {
+ if (!this._indicesUpdated)
+ this._indicesUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.INDICES_UPDATED);
+
+ this.dispatchEvent(this._indicesUpdated);
+ };
+
+ SubGeometryBase.prototype._pNotifyVerticesUpdate = function () {
+ throw new away.errors.AbstractMethodError();
+ };
+ return SubGeometryBase;
+ })(away.library.NamedAssetBase);
+ base.SubGeometryBase = SubGeometryBase;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.base
+ */
+ (function (base) {
+ /**
+ * SubMeshBase wraps a TriangleSubGeometry as a scene graph instantiation. A SubMeshBase is owned by a Mesh object.
+ *
+ *
+ * @see away.base.TriangleSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.SubMeshBase
+ */
+ var SubMeshBase = (function (_super) {
+ __extends(SubMeshBase, _super);
+ /**
+ * Creates a new SubMeshBase object
+ */
+ function SubMeshBase() {
+ _super.call(this);
+ this._iIndex = 0;
+ this._renderables = new Array();
+ }
+ Object.defineProperty(SubMeshBase.prototype, "animator", {
+ //TODO test shader picking
+ // public get shaderPickingDetails():boolean
+ // {
+ //
+ // return this.sourceEntity.shaderPickingDetails;
+ // }
+ /**
+ * The animator object that provides the state for the TriangleSubMesh's animation.
+ */
+ get: function () {
+ return this._pParentMesh.animator;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(SubMeshBase.prototype, "material", {
+ /**
+ * The material used to render the current TriangleSubMesh. If set to null, its parent Mesh's material will be used instead.
+ */
+ get: function () {
+ return this._material || this._pParentMesh.material;
+ },
+ set: function (value) {
+ if (this.material)
+ this.material.iRemoveOwner(this);
+
+ this._material = value;
+
+ if (this.material)
+ this.material.iAddOwner(this);
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(SubMeshBase.prototype, "sceneTransform", {
+ /**
+ * The scene transform object that transforms from model to world space.
+ */
+ get: function () {
+ return this._pParentMesh.sceneTransform;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(SubMeshBase.prototype, "parentMesh", {
+ /**
+ * The entity that that initially provided the IRenderable to the render pipeline (ie: the owning Mesh object).
+ */
+ get: function () {
+ return this._pParentMesh;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(SubMeshBase.prototype, "uvTransform", {
+ /**
+ *
+ */
+ get: function () {
+ return this._uvTransform || this._pParentMesh.uvTransform;
+ },
+ set: function (value) {
+ this._uvTransform = value;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ /**
+ *
+ */
+ SubMeshBase.prototype.dispose = function () {
+ this.material = null;
+
+ var len = this._renderables.length;
+ for (var i = 0; i < len; i++)
+ this._renderables[i].dispose();
+ };
+
+ /**
+ *
+ * @param camera
+ * @returns {away.geom.Matrix3D}
+ */
+ SubMeshBase.prototype.getRenderSceneTransform = function (camera) {
+ return this._pParentMesh.getRenderSceneTransform(camera);
+ };
+
+ SubMeshBase.prototype._iAddRenderable = function (renderable) {
+ this._renderables.push(renderable);
+
+ return renderable;
+ };
+
+ SubMeshBase.prototype._iRemoveRenderable = function (renderable) {
+ var index = this._renderables.indexOf(renderable);
+
+ this._renderables.splice(index, 1);
+
+ return renderable;
+ };
+
+ SubMeshBase.prototype._iInvalidateRenderableGeometry = function () {
+ var len = this._renderables.length;
+ for (var i = 0; i < len; i++)
+ this._renderables[i].invalidateGeometry();
+ };
+
+ SubMeshBase.prototype._iCollectRenderable = function (renderer) {
+ throw new away.errors.AbstractMethodError();
+ };
+
+ SubMeshBase.prototype._iGetExplicitMaterial = function () {
+ return this._material;
+ };
+ return SubMeshBase;
+ })(away.library.NamedAssetBase);
+ base.SubMeshBase = SubMeshBase;
})(away.base || (away.base = {}));
var base = away.base;
})(away || (away = {}));
@@ -8479,6 +10585,505 @@ var away;
})(away || (away = {}));
///
var away;
+(function (away) {
+ /**
+ * @module away.base
+ */
+ (function (base) {
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ var LineSubGeometry = (function (_super) {
+ __extends(LineSubGeometry, _super);
+ /**
+ *
+ */
+ function LineSubGeometry() {
+ _super.call(this, true);
+ this._positionsDirty = true;
+ this._boundingPositionDirty = true;
+ this._thicknessDirty = true;
+ this._colorsDirty = true;
+
+ this._pSubMeshClass = away.base.LineSubMesh;
+ }
+ LineSubGeometry.prototype._pUpdateStrideOffset = function () {
+ this._pOffset[LineSubGeometry.VERTEX_DATA] = 0;
+
+ var stride = 0;
+ this._pOffset[LineSubGeometry.START_POSITION_DATA] = stride;
+ stride += 3;
+
+ this._pOffset[LineSubGeometry.END_POSITION_DATA] = stride;
+ stride += 3;
+
+ this._pOffset[LineSubGeometry.THICKNESS_DATA] = stride;
+ stride += 1;
+
+ this._pOffset[LineSubGeometry.COLOR_DATA] = stride;
+ stride += 4;
+
+ this._pStride[LineSubGeometry.VERTEX_DATA] = stride;
+ this._pStride[LineSubGeometry.START_POSITION_DATA] = stride;
+ this._pStride[LineSubGeometry.END_POSITION_DATA] = stride;
+ this._pStride[LineSubGeometry.THICKNESS_DATA] = stride;
+ this._pStride[LineSubGeometry.COLOR_DATA] = stride;
+
+ var len = this._pNumVertices * stride;
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(len);
+ else if (this._pVertices.length != len)
+ this._pVertices.length = len;
+
+ this._pStrideOffsetDirty = false;
+ };
+
+ Object.defineProperty(LineSubGeometry.prototype, "vertices", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._positionsDirty)
+ this.updatePositions(this._startPositions, this._endPositions);
+
+ if (this._thicknessDirty)
+ this.updateThickness(this._thickness);
+
+ if (this._colorsDirty)
+ this.updateColors(this._startColors, this._endColors);
+
+ return this._pVertices;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSubGeometry.prototype, "startPositions", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._positionsDirty)
+ this.updatePositions(this._startPositions, this._endPositions);
+
+ return this._startPositions;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSubGeometry.prototype, "endPositions", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._positionsDirty)
+ this.updatePositions(this._startPositions, this._endPositions);
+
+ return this._endPositions;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSubGeometry.prototype, "thickness", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._thicknessDirty)
+ this.updateThickness(this._thickness);
+
+ return this._thickness;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSubGeometry.prototype, "startColors", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._colorsDirty)
+ this.updateColors(this._startColors, this._endColors);
+
+ return this._startColors;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSubGeometry.prototype, "endColors", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._colorsDirty)
+ this.updateColors(this._startColors, this._endColors);
+
+ return this._endColors;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSubGeometry.prototype, "numSegments", {
+ /**
+ * The total amount of segments in the TriangleSubGeometry.
+ */
+ get: function () {
+ return this._numSegments;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ LineSubGeometry.prototype.getBoundingPositions = function () {
+ if (this._boundingPositionDirty)
+ this._boundingPositions = this.startPositions.concat(this.endPositions);
+
+ return this._boundingPositions;
+ };
+
+ /**
+ *
+ */
+ LineSubGeometry.prototype.updatePositions = function (startValues, endValues) {
+ var i;
+ var j;
+ var values;
+ var index;
+ var stride;
+ var positions;
+ var indices;
+
+ this._startPositions = startValues;
+
+ if (this._startPositions == null)
+ this._startPositions = new Array();
+
+ this._endPositions = endValues;
+
+ if (this._endPositions == null)
+ this._endPositions = new Array();
+
+ this._boundingPositionDirty = true;
+
+ this._numSegments = this._startPositions.length / 3;
+
+ this._pNumVertices = this._numSegments * 4;
+
+ var lenV = this._pNumVertices * this.getStride(LineSubGeometry.VERTEX_DATA);
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(lenV);
+ else if (this._pVertices.length != lenV)
+ this._pVertices.length = lenV;
+
+ i = 0;
+ j = 0;
+ index = this.getOffset(LineSubGeometry.START_POSITION_DATA);
+ stride = this.getStride(LineSubGeometry.START_POSITION_DATA);
+ positions = this._pVertices;
+ indices = new Array();
+
+ while (i < startValues.length) {
+ values = (index / stride & 1) ? endValues : startValues;
+ positions[index] = values[i];
+ positions[index + 1] = values[i + 1];
+ positions[index + 2] = values[i + 2];
+
+ values = (index / stride & 1) ? startValues : endValues;
+ positions[index + 3] = values[i];
+ positions[index + 4] = values[i + 1];
+ positions[index + 5] = values[i + 2];
+
+ if (++j == 4) {
+ var o = index / stride - 3;
+ indices.push(o, o + 1, o + 2, o + 3, o + 2, o + 1);
+ j = 0;
+ i += 3;
+ }
+
+ index += stride;
+ }
+
+ this.updateIndices(indices);
+
+ this.pInvalidateBounds();
+
+ this.notifyPositionsUpdate();
+
+ this._positionsDirty = false;
+ };
+
+ /**
+ * Updates the thickness.
+ */
+ LineSubGeometry.prototype.updateThickness = function (values) {
+ var i;
+ var j;
+ var index;
+ var offset;
+ var stride;
+ var thickness;
+
+ this._thickness = values;
+
+ if (values != null) {
+ i = 0;
+ j = 0;
+ offset = this.getOffset(LineSubGeometry.THICKNESS_DATA);
+ stride = this.getStride(LineSubGeometry.THICKNESS_DATA);
+ thickness = this._pVertices;
+
+ index = offset;
+ while (i < values.length) {
+ thickness[index] = (Math.floor(0.5 * (index - offset) / stride + 0.5) & 1) ? -values[i] : values[i];
+
+ if (++j == 4) {
+ j = 0;
+ i++;
+ }
+ index += stride;
+ }
+ }
+
+ this.notifyThicknessUpdate();
+
+ this._thicknessDirty = false;
+ };
+
+ /**
+ *
+ */
+ LineSubGeometry.prototype.updateColors = function (startValues, endValues) {
+ var i;
+ var j;
+ var values;
+ var index;
+ var offset;
+ var stride;
+ var colors;
+
+ this._startColors = startValues;
+
+ this._endColors = endValues;
+
+ //default to white
+ if (this._startColors == null) {
+ this._startColors = new Array(this._numSegments * 4);
+
+ i = 0;
+ while (i < this._startColors.length)
+ this._startColors[i++] = 1;
+ }
+
+ if (this._endColors == null) {
+ this._endColors = new Array(this._numSegments * 4);
+
+ i = 0;
+ while (i < this._endColors.length)
+ this._endColors[i++] = 1;
+ }
+
+ i = 0;
+ j = 0;
+ offset = this.getOffset(LineSubGeometry.COLOR_DATA);
+ stride = this.getStride(LineSubGeometry.COLOR_DATA);
+ colors = this._pVertices;
+
+ index = offset;
+
+ while (i < this._startColors.length) {
+ values = ((index - offset) / stride & 1) ? this._endColors : this._startColors;
+ colors[index] = values[i];
+ colors[index + 1] = values[i + 1];
+ colors[index + 2] = values[i + 2];
+ colors[index + 3] = values[i + 3];
+
+ if (++j == 4) {
+ j = 0;
+ i += 4;
+ }
+
+ index += stride;
+ }
+
+ this.notifyColorsUpdate();
+
+ this._colorsDirty = false;
+ };
+
+ /**
+ *
+ */
+ LineSubGeometry.prototype.dispose = function () {
+ _super.prototype.dispose.call(this);
+
+ this._startPositions = null;
+ this._endPositions = null;
+ this._thickness = null;
+ this._startColors = null;
+ this._endColors = null;
+ };
+
+ /**
+ * @protected
+ */
+ LineSubGeometry.prototype.pInvalidateBounds = function () {
+ if (this.parentGeometry)
+ this.parentGeometry.iInvalidateBounds(this);
+ };
+
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ LineSubGeometry.prototype.clone = function () {
+ var clone = new LineSubGeometry();
+ clone.updateIndices(this._pIndices.concat());
+ clone.updatePositions(this._startPositions.concat(), this._endPositions.concat());
+ clone.updateThickness(this._thickness.concat());
+ clone.updatePositions(this._startPositions.concat(), this._endPositions.concat());
+
+ return clone;
+ };
+
+ LineSubGeometry.prototype._pNotifyVerticesUpdate = function () {
+ this._pStrideOffsetDirty = true;
+
+ this.notifyPositionsUpdate();
+ this.notifyThicknessUpdate();
+ this.notifyColorsUpdate();
+ };
+
+ LineSubGeometry.prototype.notifyPositionsUpdate = function () {
+ if (this._positionsDirty)
+ return;
+
+ this._positionsDirty = true;
+
+ if (!this._positionsUpdated)
+ this._positionsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, away.base.TriangleSubGeometry.POSITION_DATA);
+
+ this.dispatchEvent(this._positionsUpdated);
+ };
+
+ LineSubGeometry.prototype.notifyThicknessUpdate = function () {
+ if (this._thicknessDirty)
+ return;
+
+ this._thicknessDirty = true;
+
+ if (!this._thicknessUpdated)
+ this._thicknessUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, LineSubGeometry.THICKNESS_DATA);
+
+ this.dispatchEvent(this._thicknessUpdated);
+ };
+
+ LineSubGeometry.prototype.notifyColorsUpdate = function () {
+ if (this._colorsDirty)
+ return;
+
+ this._colorsDirty = true;
+
+ if (!this._colorUpdated)
+ this._colorUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, LineSubGeometry.COLOR_DATA);
+
+ this.dispatchEvent(this._colorUpdated);
+ };
+ LineSubGeometry.VERTEX_DATA = "vertices";
+ LineSubGeometry.START_POSITION_DATA = "startPositions";
+ LineSubGeometry.END_POSITION_DATA = "endPositions";
+ LineSubGeometry.THICKNESS_DATA = "thickness";
+ LineSubGeometry.COLOR_DATA = "colors";
+
+ LineSubGeometry.POSITION_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ LineSubGeometry.COLOR_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_4;
+ LineSubGeometry.THICKNESS_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_1;
+ return LineSubGeometry;
+ })(away.base.SubGeometryBase);
+ base.LineSubGeometry = LineSubGeometry;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.base
+ */
+ (function (base) {
+ /**
+ * LineSubMesh wraps a LineSubGeometry as a scene graph instantiation. A LineSubMesh is owned by a Mesh object.
+ *
+ *
+ * @see away.base.LineSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.LineSubMesh
+ */
+ var LineSubMesh = (function (_super) {
+ __extends(LineSubMesh, _super);
+ /**
+ * Creates a new LineSubMesh object
+ * @param subGeometry The LineSubGeometry object which provides the geometry data for this LineSubMesh.
+ * @param parentMesh The Mesh object to which this LineSubMesh belongs.
+ * @param material An optional material used to render this LineSubMesh.
+ */
+ function LineSubMesh(subGeometry, parentMesh, material) {
+ if (typeof material === "undefined") { material = null; }
+ _super.call(this);
+
+ this._pParentMesh = parentMesh;
+ this._subGeometry = subGeometry;
+ this.material = material;
+ }
+ Object.defineProperty(LineSubMesh.prototype, "assetType", {
+ /**
+ *
+ */
+ get: function () {
+ return away.library.AssetType.LINE_SUB_MESH;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSubMesh.prototype, "subGeometry", {
+ /**
+ * The LineSubGeometry object which provides the geometry data for this LineSubMesh.
+ */
+ get: function () {
+ return this._subGeometry;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ /**
+ *
+ */
+ LineSubMesh.prototype.dispose = function () {
+ this.material = null;
+
+ _super.prototype.dispose.call(this);
+ };
+
+ LineSubMesh.prototype._iCollectRenderable = function (renderer) {
+ renderer.applyLineSubMesh(this);
+ };
+ return LineSubMesh;
+ })(away.base.SubMeshBase);
+ base.LineSubMesh = LineSubMesh;
+ })(away.base || (away.base = {}));
+ var base = away.base;
+})(away || (away = {}));
+///
+var away;
(function (away) {
/**
* The LoaderInfo class provides information about a loaded SWF file or a
@@ -9289,6 +11894,64 @@ var away;
});
+ /**
+ * Assigns an attribute stream
+ *
+ * @param index The attribute stream index for the vertex shader
+ * @param buffer
+ * @param offset
+ * @param stride
+ * @param format
+ */
+ StageGL.prototype.activateBuffer = function (index, buffer, offset, format) {
+ if (!buffer.stageGLs[this._iStageGLIndex])
+ buffer.stageGLs[this._iStageGLIndex] = this;
+
+ if (!buffer.buffers[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex] = this._contextGL.createVertexBuffer(buffer.data.length / buffer.dataPerVertex, buffer.dataPerVertex);
+ buffer.invalid[this._iStageGLIndex] = true;
+ }
+
+ if (buffer.invalid[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex].uploadFromArray(buffer.data, 0, buffer.data.length / buffer.dataPerVertex);
+ buffer.invalid[this._iStageGLIndex] = false;
+ }
+
+ this._contextGL.setVertexBufferAt(index, buffer.buffers[this._iStageGLIndex], offset, format);
+ };
+
+ StageGL.prototype.disposeVertexData = function (buffer) {
+ buffer.buffers[this._iStageGLIndex].dispose();
+ buffer.buffers[this._iStageGLIndex] = null;
+ };
+
+ /**
+ * Retrieves the VertexBuffer object that contains triangle indices.
+ * @param context The ContextGL for which we request the buffer
+ * @return The VertexBuffer object that contains triangle indices.
+ */
+ StageGL.prototype.getIndexBuffer = function (buffer) {
+ if (!buffer.stageGLs[this._iStageGLIndex])
+ buffer.stageGLs[this._iStageGLIndex] = this;
+
+ if (!buffer.buffers[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex] = this._contextGL.createIndexBuffer(buffer.data.length / 3);
+ buffer.invalid[this._iStageGLIndex] = true;
+ }
+
+ if (buffer.invalid[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex].uploadFromArray(buffer.data, 0, buffer.data.length / 3);
+ buffer.invalid[this._iStageGLIndex] = false;
+ }
+
+ return buffer.buffers[this._iStageGLIndex];
+ };
+
+ StageGL.prototype.disposeIndexData = function (buffer) {
+ buffer.buffers[this._iStageGLIndex].dispose();
+ buffer.buffers[this._iStageGLIndex] = null;
+ };
+
/*
* Access to fire mouseevents across multiple layered view3D instances
*/
@@ -9409,3150 +12072,3581 @@ var away;
TriangleCulling.NONE = "none";
- TriangleCulling.POSITIVE = "positive";
- return TriangleCulling;
- })();
- base.TriangleCulling = TriangleCulling;
- })(away.base || (away.base = {}));
- var base = away.base;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.pool
- */
- (function (pool) {
- /**
- * @class away.pool.EntityListItem
- */
- var EntityListItem = (function () {
- function EntityListItem() {
- }
- return EntityListItem;
- })();
- pool.EntityListItem = EntityListItem;
- })(away.pool || (away.pool = {}));
- var pool = away.pool;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.pool
- */
- (function (pool) {
- /**
- * @class away.pool.EntityListItemPool
- */
- var EntityListItemPool = (function () {
- /**
- *
- */
- function EntityListItemPool() {
- this._index = 0;
- this._poolSize = 0;
- this._pool = [];
- }
- /**
- *
- */
- EntityListItemPool.prototype.getItem = function () {
- var item;
- if (this._index == this._poolSize) {
- item = new away.pool.EntityListItem();
- this._pool[this._index++] = item;
- ++this._poolSize;
- } else {
- item = this._pool[this._index++];
- }
- return item;
- };
-
- /**
- *
- */
- EntityListItemPool.prototype.freeAll = function () {
- this._index = 0;
- };
-
- EntityListItemPool.prototype.dispose = function () {
- this._pool.length = 0;
- };
- return EntityListItemPool;
- })();
- pool.EntityListItemPool = EntityListItemPool;
- })(away.pool || (away.pool = {}));
- var pool = away.pool;
-})(away || (away = {}));
-///
-///
-///
-var away;
-(function (away) {
- /**
- * @module away.pool
- */
- (function (pool) {
- /**
- * @class away.pool.RenderablePool
- */
- var RenderablePool = (function () {
- /**
- * //TODO
- *
- * @param renderableClass
- */
- function RenderablePool(renderableClass) {
- this._pool = new Object();
- this._renderableClass = renderableClass;
- }
- /**
- * //TODO
- *
- * @param materialOwner
- * @returns IRenderable
- */
- RenderablePool.prototype.getItem = function (materialOwner) {
- return (this._pool[materialOwner.id] || (this._pool[materialOwner.id] = materialOwner._iAddRenderable(new this._renderableClass(this, materialOwner))));
- };
-
- /**
- * //TODO
- *
- * @param materialOwner
- */
- RenderablePool.prototype.disposeItem = function (materialOwner) {
- materialOwner._iRemoveRenderable(this._pool[materialOwner.id]);
-
- this._pool[materialOwner.id] = null;
- };
-
- /**
- * //TODO
- *
- * @param renderableClass
- * @returns RenderablePool
- */
- RenderablePool.getPool = function (renderableClass) {
- var pool = RenderablePool._pools[renderableClass.id];
-
- if (pool != undefined)
- return pool;
-
- return (RenderablePool._pools[renderableClass.id] = new RenderablePool(renderableClass));
- };
-
- /**
- * //TODO
- *
- * @param renderableClass
- */
- RenderablePool.disposePool = function (renderableClass) {
- if (RenderablePool._pools[renderableClass.id])
- RenderablePool._pools[renderableClass.id] = undefined;
- };
- RenderablePool._pools = new Object();
- return RenderablePool;
- })();
- pool.RenderablePool = RenderablePool;
- })(away.pool || (away.pool = {}));
- var pool = away.pool;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.data
- */
- (function (pool) {
- /**
- * @class away.pool.RenderableListItem
- */
- var CSSRenderableBase = (function () {
- /**
- *
- * @param sourceEntity
- * @param material
- * @param animator
- */
- function CSSRenderableBase(pool, sourceEntity, materialOwner) {
- //store a reference to the pool for later disposal
- this._pool = pool;
-
- this.sourceEntity = sourceEntity;
- this.materialOwner = materialOwner;
- }
- /**
- *
- */
- CSSRenderableBase.prototype.dispose = function () {
- this._pool.disposeItem(this.materialOwner);
- };
-
- /**
- *
- */
- CSSRenderableBase.prototype._iUpdate = function () {
- //nothing to do here
- };
- return CSSRenderableBase;
- })();
- pool.CSSRenderableBase = CSSRenderableBase;
- })(away.pool || (away.pool = {}));
- var pool = away.pool;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.data
- */
- (function (pool) {
- /**
- * @class away.pool.RenderableListItem
- */
- var CSSBillboardRenderable = (function (_super) {
- __extends(CSSBillboardRenderable, _super);
- function CSSBillboardRenderable(pool, billboard) {
- _super.call(this, pool, billboard, billboard);
-
- var div = document.createElement("div");
- div.onmousedown = function (event) {
- return false;
- };
-
- this.htmlElement = div;
-
- var style = div.style;
-
- style.position = "absolute";
- style.transformOrigin = style["-webkit-transform-origin"] = style["-moz-transform-origin"] = style["-o-transform-origin"] = style["-ms-transform-origin"] = "0% 0%";
-
- var img = document.createElement("div");
-
- div.appendChild(img);
-
- img.className = "material" + billboard.material.id;
- }
- CSSBillboardRenderable.id = "billboard";
- return CSSBillboardRenderable;
- })(away.pool.CSSRenderableBase);
- pool.CSSBillboardRenderable = CSSBillboardRenderable;
- })(away.pool || (away.pool = {}));
- var pool = away.pool;
+ TriangleCulling.POSITIVE = "positive";
+ return TriangleCulling;
+ })();
+ base.TriangleCulling = TriangleCulling;
+ })(away.base || (away.base = {}));
+ var base = away.base;
})(away || (away = {}));
///
-///
var away;
(function (away) {
/**
- * @module away.traverse
+ * @module away.base
*/
- (function (traverse) {
+ (function (base) {
/**
- * @class away.traverse.CollectorBase
+ * @class away.base.TriangleSubGeometry
*/
- var CollectorBase = (function () {
- function CollectorBase() {
- this._numCullPlanes = 0;
- this._pNumEntities = 0;
- this._pNumInteractiveEntities = 0;
- this._pEntityListItemPool = new away.pool.EntityListItemPool();
+ var TriangleSubGeometry = (function (_super) {
+ __extends(TriangleSubGeometry, _super);
+ /**
+ *
+ */
+ function TriangleSubGeometry(concatenatedArrays) {
+ _super.call(this, concatenatedArrays);
+ this._positionsDirty = true;
+ this._faceNormalsDirty = true;
+ this._faceTangentsDirty = true;
+ this._vertexNormalsDirty = true;
+ this._vertexTangentsDirty = true;
+ this._uvsDirty = true;
+ this._secondaryUVsDirty = true;
+ this._jointIndicesDirty = true;
+ this._jointWeightsDirty = true;
+ this._concatenateArrays = true;
+ this._autoDeriveNormals = true;
+ this._autoDeriveTangents = true;
+ this._autoDeriveUVs = false;
+ this._useFaceWeights = false;
+ this._scaleU = 1;
+ this._scaleV = 1;
+
+ this._pSubMeshClass = away.base.TriangleSubMesh;
}
- Object.defineProperty(CollectorBase.prototype, "camera", {
+ Object.defineProperty(TriangleSubGeometry.prototype, "scaleU", {
/**
*
*/
get: function () {
- return this._pCamera;
+ return this._scaleU;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(TriangleSubGeometry.prototype, "scaleV", {
+ /**
+ *
+ */
+ get: function () {
+ return this._scaleV;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(TriangleSubGeometry.prototype, "useCondensedIndices", {
+ /**
+ * Offers the option of enabling GPU accelerated animation on skeletons larger than 32 joints
+ * by condensing the number of joint index values required per mesh. Only applicable to
+ * skeleton animations that utilise more than one mesh object. Defaults to false.
+ */
+ get: function () {
+ return this._useCondensedIndices;
},
set: function (value) {
- this._pCamera = value;
- this._cullPlanes = this._pCamera.frustumPlanes;
+ if (this._useCondensedIndices == value)
+ return;
+
+ this._useCondensedIndices = value;
+
+ this.notifyJointIndicesUpdate();
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CollectorBase.prototype, "cullPlanes", {
+ TriangleSubGeometry.prototype._pUpdateStrideOffset = function () {
+ if (this._concatenateArrays) {
+ this._pOffset[TriangleSubGeometry.VERTEX_DATA] = 0;
+
+ //always have positions
+ this._pOffset[TriangleSubGeometry.POSITION_DATA] = 0;
+ var stride = 3;
+
+ if (this._vertexNormals != null) {
+ this._pOffset[TriangleSubGeometry.NORMAL_DATA] = stride;
+ stride += 3;
+ }
+
+ if (this._vertexTangents != null) {
+ this._pOffset[TriangleSubGeometry.TANGENT_DATA] = stride;
+ stride += 3;
+ }
+
+ if (this._uvs != null) {
+ this._pOffset[TriangleSubGeometry.UV_DATA] = stride;
+ stride += 2;
+ }
+
+ if (this._secondaryUVs != null) {
+ this._pOffset[TriangleSubGeometry.SECONDARY_UV_DATA] = stride;
+ stride += 2;
+ }
+
+ if (this._jointIndices != null) {
+ this._pOffset[TriangleSubGeometry.JOINT_INDEX_DATA] = stride;
+ stride += this._jointsPerVertex;
+ }
+
+ if (this._jointWeights != null) {
+ this._pOffset[TriangleSubGeometry.JOINT_WEIGHT_DATA] = stride;
+ stride += this._jointsPerVertex;
+ }
+
+ this._pStride[TriangleSubGeometry.VERTEX_DATA] = stride;
+ this._pStride[TriangleSubGeometry.POSITION_DATA] = stride;
+ this._pStride[TriangleSubGeometry.NORMAL_DATA] = stride;
+ this._pStride[TriangleSubGeometry.TANGENT_DATA] = stride;
+ this._pStride[TriangleSubGeometry.UV_DATA] = stride;
+ this._pStride[TriangleSubGeometry.SECONDARY_UV_DATA] = stride;
+ this._pStride[TriangleSubGeometry.JOINT_INDEX_DATA] = stride;
+ this._pStride[TriangleSubGeometry.JOINT_WEIGHT_DATA] = stride;
+
+ var len = this._pNumVertices * stride;
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(len);
+ else if (this._pVertices.length != len)
+ this._pVertices.length = len;
+ } else {
+ this._pOffset[TriangleSubGeometry.POSITION_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.NORMAL_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.TANGENT_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.UV_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.SECONDARY_UV_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.JOINT_INDEX_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.JOINT_WEIGHT_DATA] = 0;
+
+ this._pStride[TriangleSubGeometry.POSITION_DATA] = 3;
+ this._pStride[TriangleSubGeometry.NORMAL_DATA] = 3;
+ this._pStride[TriangleSubGeometry.TANGENT_DATA] = 3;
+ this._pStride[TriangleSubGeometry.UV_DATA] = 2;
+ this._pStride[TriangleSubGeometry.SECONDARY_UV_DATA] = 2;
+ this._pStride[TriangleSubGeometry.JOINT_INDEX_DATA] = this._jointsPerVertex;
+ this._pStride[TriangleSubGeometry.JOINT_WEIGHT_DATA] = this._jointsPerVertex;
+ }
+
+ this._pStrideOffsetDirty = false;
+ };
+
+ Object.defineProperty(TriangleSubGeometry.prototype, "jointsPerVertex", {
/**
*
*/
get: function () {
- return this._customCullPlanes;
+ return this._jointsPerVertex;
},
set: function (value) {
- this._customCullPlanes = value;
+ if (this._jointsPerVertex == value)
+ return;
+
+ this._jointsPerVertex = value;
+
+ this._pStrideOffsetDirty = true;
+
+ if (this._pConcatenateArrays)
+ this._pNotifyVerticesUpdate();
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CollectorBase.prototype, "entityHead", {
+ Object.defineProperty(TriangleSubGeometry.prototype, "autoDeriveUVs", {
+ /**
+ * Defines whether a UV buffer should be automatically generated to contain dummy UV coordinates.
+ * Set to true if a geometry lacks UV data but uses a material that requires it, or leave as false
+ * in cases where UV data is explicitly defined or the material does not require UV data.
+ */
+ get: function () {
+ return this._autoDeriveUVs;
+ },
+ set: function (value) {
+ if (this._autoDeriveUVs == value)
+ return;
+
+ this._autoDeriveUVs = value;
+
+ if (value)
+ this.notifyUVsUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(TriangleSubGeometry.prototype, "autoDeriveNormals", {
+ /**
+ * True if the vertex normals should be derived from the geometry, false if the vertex normals are set
+ * explicitly.
+ */
+ get: function () {
+ return this._autoDeriveNormals;
+ },
+ set: function (value) {
+ if (this._autoDeriveNormals == value)
+ return;
+
+ this._autoDeriveNormals = value;
+
+ if (value)
+ this.notifyNormalsUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(TriangleSubGeometry.prototype, "autoDeriveTangents", {
+ /**
+ * True if the vertex tangents should be derived from the geometry, false if the vertex normals are set
+ * explicitly.
+ */
+ get: function () {
+ return this._autoDeriveTangents;
+ },
+ set: function (value) {
+ if (this._autoDeriveTangents == value)
+ return;
+
+ this._autoDeriveTangents = value;
+
+ if (value)
+ this.notifyTangentsUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(TriangleSubGeometry.prototype, "vertices", {
/**
*
*/
get: function () {
- return this._pEntityHead;
+ if (this._positionsDirty)
+ this.updatePositions(this._positions);
+
+ if (this._vertexNormalsDirty)
+ this.updateVertexNormals(this._vertexNormals);
+
+ if (this._vertexTangentsDirty)
+ this.updateVertexTangents(this._vertexTangents);
+
+ if (this._uvsDirty)
+ this.updateUVs(this._uvs);
+
+ if (this._secondaryUVsDirty)
+ this.updateSecondaryUVs(this._secondaryUVs);
+
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ if (this._jointWeightsDirty)
+ this.updateJointWeights(this._jointWeights);
+
+ return this._pVertices;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CollectorBase.prototype, "numEntities", {
+ Object.defineProperty(TriangleSubGeometry.prototype, "positions", {
/**
*
*/
get: function () {
- return this._pNumEntities;
+ if (this._positionsDirty)
+ this.updatePositions(this._positions);
+
+ return this._positions;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CollectorBase.prototype, "numInteractiveEntities", {
+ Object.defineProperty(TriangleSubGeometry.prototype, "vertexNormals", {
/**
*
*/
get: function () {
- return this._pNumInteractiveEntities;
+ if (this._vertexNormalsDirty)
+ this.updateVertexNormals(this._vertexNormals);
+
+ return this._vertexNormals;
},
enumerable: true,
configurable: true
});
- /**
- *
- */
- CollectorBase.prototype.clear = function () {
- this._pNumEntities = this._pNumInteractiveEntities = 0;
- this._cullPlanes = this._customCullPlanes ? this._customCullPlanes : (this._pCamera ? this._pCamera.frustumPlanes : null);
- this._numCullPlanes = this._cullPlanes ? this._cullPlanes.length : 0;
- this._pEntityHead = null;
- this._pEntityListItemPool.freeAll();
- };
+ Object.defineProperty(TriangleSubGeometry.prototype, "vertexTangents", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._vertexTangentsDirty)
+ this.updateVertexTangents(this._vertexTangents);
- /**
- *
- * @param node
- * @returns {boolean}
- */
- CollectorBase.prototype.enterNode = function (node) {
- var enter = this.scene._iCollectionMark != node._iCollectionMark && node.isInFrustum(this._cullPlanes, this._numCullPlanes);
+ return this._vertexTangents;
+ },
+ enumerable: true,
+ configurable: true
+ });
- node._iCollectionMark = this.scene._iCollectionMark;
+ Object.defineProperty(TriangleSubGeometry.prototype, "faceNormals", {
+ /**
+ * The raw data of the face normals, in the same order as the faces are listed in the index list.
+ */
+ get: function () {
+ if (this._faceNormalsDirty)
+ this.updateFaceNormals();
- return enter;
- };
+ return this._faceNormals;
+ },
+ enumerable: true,
+ configurable: true
+ });
- /**
- *
- * @param entity
- */
- CollectorBase.prototype.applyDirectionalLight = function (entity) {
- //don't do anything here
- };
+ Object.defineProperty(TriangleSubGeometry.prototype, "faceTangents", {
+ /**
+ * The raw data of the face tangets, in the same order as the faces are listed in the index list.
+ */
+ get: function () {
+ if (this._faceTangentsDirty)
+ this.updateFaceTangents();
- /**
- *
- * @param entity
- */
- CollectorBase.prototype.applyEntity = function (entity) {
- this._pNumEntities++;
+ return this._faceTangents;
+ },
+ enumerable: true,
+ configurable: true
+ });
- if (entity._iIsMouseEnabled())
- this._pNumInteractiveEntities++;
+ Object.defineProperty(TriangleSubGeometry.prototype, "uvs", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._uvsDirty)
+ this.updateUVs(this._uvs);
- var item = this._pEntityListItemPool.getItem();
- item.entity = entity;
+ return this._uvs;
+ },
+ enumerable: true,
+ configurable: true
+ });
- item.next = this._pEntityHead;
- this._pEntityHead = item;
- };
+ Object.defineProperty(TriangleSubGeometry.prototype, "secondaryUVs", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._secondaryUVsDirty)
+ this.updateSecondaryUVs(this._secondaryUVs);
- /**
- *
- * @param entity
- */
- CollectorBase.prototype.applyLightProbe = function (entity) {
- //don't do anything here
- };
+ return this._secondaryUVs;
+ },
+ enumerable: true,
+ configurable: true
+ });
- /**
- *
- * @param entity
- */
- CollectorBase.prototype.applyPointLight = function (entity) {
- //don't do anything here
- };
- return CollectorBase;
- })();
- traverse.CollectorBase = CollectorBase;
- })(away.traverse || (away.traverse = {}));
- var traverse = away.traverse;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.traverse
- */
- (function (traverse) {
- /**
- * The RaycastCollector class is a traverser for scene partitions that collects all scene graph entities that are
- * considered intersecting with the defined ray.
- *
- * @see away.partition.Partition
- * @see away.entities.IEntity
- *
- * @class away.traverse.RaycastCollector
- */
- var RaycastCollector = (function (_super) {
- __extends(RaycastCollector, _super);
- /**
- * Creates a new RaycastCollector object.
- */
- function RaycastCollector() {
- _super.call(this);
- this._rayPosition = new away.geom.Vector3D();
- this._rayDirection = new away.geom.Vector3D();
- this._iCollectionMark = 0;
- }
- Object.defineProperty(RaycastCollector.prototype, "rayPosition", {
+ Object.defineProperty(TriangleSubGeometry.prototype, "jointIndices", {
/**
- * Provides the starting position of the ray.
+ *
*/
get: function () {
- return this._rayPosition;
- },
- set: function (value) {
- this._rayPosition = value;
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ if (this._useCondensedIndices)
+ return this._condensedJointIndices;
+
+ return this._jointIndices;
},
enumerable: true,
configurable: true
});
-
- Object.defineProperty(RaycastCollector.prototype, "rayDirection", {
+ Object.defineProperty(TriangleSubGeometry.prototype, "jointWeights", {
/**
- * Provides the direction vector of the ray.
+ *
*/
get: function () {
- return this._rayDirection;
- },
- set: function (value) {
- this._rayDirection = value;
+ if (this._jointWeightsDirty)
+ this.updateJointWeights(this._jointWeights);
+
+ return this._jointWeights;
},
enumerable: true,
configurable: true
});
-
- /**
- * Returns true if the current node is at least partly in the frustum. If so, the partition node knows to pass on the traverser to its children.
- *
- * @param node The Partition3DNode object to frustum-test.
- */
- RaycastCollector.prototype.enterNode = function (node) {
- return node.isIntersectingRay(this._rayPosition, this._rayDirection);
- };
- return RaycastCollector;
- })(away.traverse.CollectorBase);
- traverse.RaycastCollector = RaycastCollector;
- })(away.traverse || (away.traverse = {}));
- var traverse = away.traverse;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.traverse
- */
- (function (traverse) {
- /**
- * @class away.traverse.CSSEntityCollector
- */
- var CSSEntityCollector = (function (_super) {
- __extends(CSSEntityCollector, _super);
- function CSSEntityCollector() {
- _super.call(this);
- }
- return CSSEntityCollector;
- })(away.traverse.CollectorBase);
- traverse.CSSEntityCollector = CSSEntityCollector;
- })(away.traverse || (away.traverse = {}));
- var traverse = away.traverse;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.partition
- */
- (function (partition) {
- /**
- * @class away.partition.NodeBase
- */
- var NodeBase = (function () {
- /**
- *
- */
- function NodeBase() {
- this._pNumChildNodes = 0;
- this._iNumEntities = 0;
- this._pChildNodes = new Array();
- }
- Object.defineProperty(NodeBase.prototype, "showDebugBounds", {
+ Object.defineProperty(TriangleSubGeometry.prototype, "useFaceWeights", {
/**
- *
+ * Indicates whether or not to take the size of faces into account when auto-deriving vertex normals and tangents.
*/
get: function () {
- return this._pDebugPrimitive != null;
+ return this._useFaceWeights;
},
set: function (value) {
- if (this._pDebugPrimitive && value == true)
+ if (this._useFaceWeights == value)
return;
- if (!this._pDebugPrimitive && value == false)
- return;
+ this._useFaceWeights = value;
- if (value) {
- this._pDebugPrimitive = this.pCreateDebugBounds();
- } else {
- this._pDebugPrimitive.dispose();
- this._pDebugPrimitive = null;
- }
+ if (this._autoDeriveNormals)
+ this.notifyNormalsUpdate();
- for (var i = 0; i < this._pNumChildNodes; ++i)
- this._pChildNodes[i].showDebugBounds = value;
+ if (this._autoDeriveTangents)
+ this.notifyTangentsUpdate();
+
+ this._faceNormalsDirty = true;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(NodeBase.prototype, "parent", {
- /**
- *
- */
+ Object.defineProperty(TriangleSubGeometry.prototype, "numCondensedJoints", {
get: function () {
- return this._iParent;
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ return this._numCondensedJoints;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(NodeBase.prototype, "_pNumEntities", {
- /**
- *
- * @protected
- */
+ Object.defineProperty(TriangleSubGeometry.prototype, "condensedIndexLookUp", {
get: function () {
- return this._iNumEntities;
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ return this._condensedIndexLookUp;
},
enumerable: true,
configurable: true
});
+ TriangleSubGeometry.prototype.getBoundingPositions = function () {
+ if (this._positionsDirty)
+ this.updatePositions(this._positions);
+
+ return this._positions;
+ };
+
/**
*
- * @param planes
- * @param numPlanes
- * @returns {boolean}
- * @internal
*/
- NodeBase.prototype.isInFrustum = function (planes, numPlanes) {
- return true;
+ TriangleSubGeometry.prototype.updatePositions = function (values) {
+ var i;
+ var index;
+ var stride;
+ var positions;
+
+ this._positions = values;
+
+ if (this._positions == null)
+ this._positions = new Array();
+
+ this._pNumVertices = this._positions.length / 3;
+
+ if (this._concatenateArrays) {
+ var len = this._pNumVertices * this.getStride(TriangleSubGeometry.VERTEX_DATA);
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(len);
+ else if (this._pVertices.length != len)
+ this._pVertices.length = len;
+
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.POSITION_DATA);
+ stride = this.getStride(TriangleSubGeometry.POSITION_DATA);
+ positions = this._pVertices;
+
+ while (i < values.length) {
+ positions[index] = values[i++];
+ positions[index + 1] = values[i++];
+ positions[index + 2] = values[i++];
+ index += stride;
+ }
+ }
+
+ if (this._autoDeriveNormals)
+ this.notifyNormalsUpdate();
+
+ if (this._autoDeriveTangents)
+ this.notifyTangentsUpdate();
+
+ if (this._autoDeriveUVs)
+ this.notifyUVsUpdate();
+
+ this.pInvalidateBounds();
+
+ this.notifyPositionsUpdate();
+
+ this._positionsDirty = false;
+ };
+
+ /**
+ * Updates the vertex normals based on the geometry.
+ */
+ TriangleSubGeometry.prototype.updateVertexNormals = function (values) {
+ var i;
+ var index;
+ var offset;
+ var stride;
+ var normals;
+
+ if (!this._autoDeriveNormals) {
+ if ((this._vertexNormals == null || values == null) && (this._vertexNormals != null || values != null)) {
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ this._vertexNormals = values;
+
+ if (values != null && this._concatenateArrays) {
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.NORMAL_DATA);
+ stride = this.getStride(TriangleSubGeometry.NORMAL_DATA);
+ normals = this._pVertices;
+
+ while (i < values.length) {
+ normals[index] = values[i++];
+ normals[index + 1] = values[i++];
+ normals[index + 2] = values[i++];
+ index += stride;
+ }
+ }
+ } else {
+ if (this._vertexNormals == null) {
+ this._vertexNormals = new Array(this._positions.length);
+
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ if (this._faceNormalsDirty)
+ this.updateFaceNormals();
+
+ offset = this.getOffset(TriangleSubGeometry.NORMAL_DATA);
+ stride = this.getStride(TriangleSubGeometry.NORMAL_DATA);
+
+ //autoderived normals
+ normals = this._concatenateArrays ? this._pVertices : this._vertexNormals;
+
+ var f1 = 0;
+ var f2 = 1;
+ var f3 = 2;
+
+ index = offset;
+
+ //clear normal values
+ var lenV = normals.length;
+ while (index < lenV) {
+ normals[index] = 0;
+ normals[index + 1] = 0;
+ normals[index + 2] = 0;
+ index += stride;
+ }
+
+ var k = 0;
+ var lenI = this._pIndices.length;
+ var weight;
+
+ i = 0;
+
+ while (i < lenI) {
+ weight = this._useFaceWeights ? this._faceWeights[k++] : 1;
+ index = offset + this._pIndices[i++] * stride;
+ normals[index] += this._faceNormals[f1] * weight;
+ normals[index + 1] += this._faceNormals[f2] * weight;
+ normals[index + 2] += this._faceNormals[f3] * weight;
+ index = offset + this._pIndices[i++] * stride;
+ normals[index] += this._faceNormals[f1] * weight;
+ normals[index + 1] += this._faceNormals[f2] * weight;
+ normals[index + 2] += this._faceNormals[f3] * weight;
+ index = offset + this._pIndices[i++] * stride;
+ normals[index] += this._faceNormals[f1] * weight;
+ normals[index + 1] += this._faceNormals[f2] * weight;
+ normals[index + 2] += this._faceNormals[f3] * weight;
+ f1 += 3;
+ f2 += 3;
+ f3 += 3;
+ }
+
+ i = 0;
+ index = offset;
+
+ while (index < lenV) {
+ var vx = normals[index];
+ var vy = normals[index + 1];
+ var vz = normals[index + 2];
+ var d = 1.0 / Math.sqrt(vx * vx + vy * vy + vz * vz);
+
+ if (this._concatenateArrays) {
+ this._vertexNormals[i++] = normals[index] = vx * d;
+ this._vertexNormals[i++] = normals[index + 1] = vy * d;
+ this._vertexNormals[i++] = normals[index + 2] = vz * d;
+ } else {
+ normals[index] = vx * d;
+ normals[index + 1] = vy * d;
+ normals[index + 2] = vz * d;
+ }
+
+ index += stride;
+ }
+ }
+
+ this.notifyNormalsUpdate();
+
+ this._vertexNormalsDirty = false;
+ };
+
+ /**
+ * Updates the vertex tangents based on the geometry.
+ */
+ TriangleSubGeometry.prototype.updateVertexTangents = function (values) {
+ var i;
+ var index;
+ var offset;
+ var stride;
+ var tangents;
+
+ if (!this._autoDeriveTangents) {
+ if ((this._vertexTangents == null || values == null) && (this._vertexTangents != null || values != null)) {
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ this._vertexTangents = values;
+
+ if (values != null && this._concatenateArrays) {
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.TANGENT_DATA);
+ stride = this.getStride(TriangleSubGeometry.TANGENT_DATA);
+ tangents = this._pVertices;
+
+ while (i < values.length) {
+ tangents[index] = values[i++];
+ tangents[index + 1] = values[i++];
+ tangents[index + 2] = values[i++];
+ index += stride;
+ }
+ }
+ } else {
+ if (this._vertexTangents == null) {
+ this._vertexTangents = new Array(this._positions.length);
+
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ if (this._faceTangentsDirty)
+ this.updateFaceTangents();
+
+ offset = this.getOffset(TriangleSubGeometry.TANGENT_DATA);
+ stride = this.getStride(TriangleSubGeometry.TANGENT_DATA);
+
+ //autoderived tangents
+ tangents = this._concatenateArrays ? this._pVertices : this._vertexTangents;
+
+ index = offset;
+
+ //clear tangent values
+ var lenV = tangents.length;
+ while (index < lenV) {
+ tangents[index] = 0;
+ tangents[index + 1] = 0;
+ tangents[index + 2] = 0;
+
+ index += stride;
+ }
+
+ var k = 0;
+ var weight;
+ var f1 = 0;
+ var f2 = 1;
+ var f3 = 2;
+
+ i = 0;
+
+ //collect face tangents
+ var lenI = this._pIndices.length;
+ while (i < lenI) {
+ weight = this._useFaceWeights ? this._faceWeights[k++] : 1;
+ index = offset + this._pIndices[i++] * stride;
+ tangents[index++] += this._faceTangents[f1] * weight;
+ tangents[index++] += this._faceTangents[f2] * weight;
+ tangents[index] += this._faceTangents[f3] * weight;
+ index = offset + this._pIndices[i++] * stride;
+ tangents[index++] += this._faceTangents[f1] * weight;
+ tangents[index++] += this._faceTangents[f2] * weight;
+ tangents[index] += this._faceTangents[f3] * weight;
+ index = offset + this._pIndices[i++] * stride;
+ tangents[index++] += this._faceTangents[f1] * weight;
+ tangents[index++] += this._faceTangents[f2] * weight;
+ tangents[index] += this._faceTangents[f3] * weight;
+ f1 += 3;
+ f2 += 3;
+ f3 += 3;
+ }
+
+ i = 0;
+ index = offset;
+
+ while (index < lenV) {
+ var vx = tangents[index];
+ var vy = tangents[index + 1];
+ var vz = tangents[index + 2];
+ var d = 1.0 / Math.sqrt(vx * vx + vy * vy + vz * vz);
+
+ if (this._concatenateArrays) {
+ this._vertexTangents[i++] = tangents[index] = vx * d;
+ this._vertexTangents[i++] = tangents[index + 1] = vy * d;
+ this._vertexTangents[i++] = tangents[index + 2] = vz * d;
+ } else {
+ tangents[index] = vx * d;
+ tangents[index + 1] = vy * d;
+ tangents[index + 2] = vz * d;
+ }
+
+ index += stride;
+ }
+ }
+
+ this.notifyTangentsUpdate();
+
+ this._vertexTangentsDirty = false;
+ };
+
+ /**
+ * Updates the uvs based on the geometry.
+ */
+ TriangleSubGeometry.prototype.updateUVs = function (values) {
+ var i;
+ var index;
+ var offset;
+ var stride;
+ var uvs;
+
+ if (!this._autoDeriveUVs) {
+ if ((this._uvs == null || values == null) && (this._uvs != null || values != null)) {
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ this._uvs = values;
+
+ if (values != null && this._concatenateArrays) {
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.UV_DATA);
+ stride = this.getStride(TriangleSubGeometry.UV_DATA);
+ uvs = this._pVertices;
+
+ while (i < values.length) {
+ uvs[index] = values[i++];
+ uvs[index + 1] = values[i++];
+ index += stride;
+ }
+ }
+ } else {
+ if (this._uvs == null) {
+ this._uvs = new Array(this._positions.length * 2 / 3);
+
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ offset = this.getOffset(TriangleSubGeometry.UV_DATA);
+ stride = this.getStride(TriangleSubGeometry.UV_DATA);
+
+ //autoderived uvs
+ uvs = this._concatenateArrays ? this._pVertices : this._uvs;
+
+ i = 0;
+ index = offset;
+ var uvIdx = 0;
+
+ //clear uv values
+ var lenV = uvs.length;
+ while (index < lenV) {
+ if (this._concatenateArrays) {
+ this._uvs[i++] = uvs[index] = uvIdx * .5;
+ this._uvs[i++] = uvs[index + 1] = 1.0 - (uvIdx & 1);
+ } else {
+ uvs[index] = uvIdx * .5;
+ uvs[index + 1] = 1.0 - (uvIdx & 1);
+ }
+
+ if (++uvIdx == 3)
+ uvIdx = 0;
+
+ index += stride;
+ }
+ }
+
+ if (this._autoDeriveTangents)
+ this.notifyTangentsUpdate();
+
+ this.notifyUVsUpdate();
+
+ this._uvsDirty = false;
+ };
+
+ /**
+ * Updates the secondary uvs based on the geometry.
+ */
+ TriangleSubGeometry.prototype.updateSecondaryUVs = function (values) {
+ var i;
+ var index;
+ var offset;
+ var stride;
+ var uvs;
+
+ if (this._concatenateArrays && (this._secondaryUVs == null || values == null) && (this._secondaryUVs != null || values != null))
+ this._pNotifyVerticesUpdate();
+
+ this._secondaryUVs = values;
+
+ if (values != null && this._concatenateArrays) {
+ offset = this.getOffset(TriangleSubGeometry.SECONDARY_UV_DATA);
+ stride = this.getStride(TriangleSubGeometry.SECONDARY_UV_DATA);
+
+ i = 0;
+ index = offset;
+ uvs = this._pVertices;
+
+ while (i < values.length) {
+ uvs[index] = values[i++];
+ uvs[index + 1] = values[i++];
+ index += stride;
+ }
+ }
+
+ this.notifySecondaryUVsUpdate();
+
+ this._secondaryUVsDirty = false;
+ };
+
+ /**
+ * Updates the joint indices
+ */
+ TriangleSubGeometry.prototype.updateJointIndices = function (values) {
+ var i;
+ var j;
+ var index;
+ var offset;
+ var stride;
+ var jointIndices;
+
+ if (this._concatenateArrays && (this._jointIndices == null || values == null) && (this._jointIndices != null || values != null))
+ this._pNotifyVerticesUpdate();
+
+ this._jointIndices = values;
+
+ if (values != null) {
+ offset = this.getOffset(TriangleSubGeometry.JOINT_INDEX_DATA);
+ stride = this.getStride(TriangleSubGeometry.JOINT_INDEX_DATA);
+ if (this._useCondensedIndices) {
+ i = 0;
+ j = 0;
+ index = offset;
+ jointIndices = this._concatenateArrays ? this._pVertices : this._condensedJointIndices;
+ var oldIndex;
+ var newIndex = 0;
+ var dic = new Object();
+
+ if (!this._concatenateArrays)
+ this._condensedJointIndices = new Array(values.length);
+
+ this._condensedIndexLookUp = new Array();
+
+ while (i < values.length) {
+ for (j = 0; j < this._jointsPerVertex; j++) {
+ oldIndex = values[i++];
+
+ // if we encounter a new index, assign it a new condensed index
+ if (dic[oldIndex] == undefined) {
+ dic[oldIndex] = newIndex * 3; //3 required for the three vectors that store the matrix
+ this._condensedIndexLookUp[newIndex++] = oldIndex;
+ }
+ jointIndices[index + j] = dic[oldIndex];
+ }
+ index += stride;
+ }
+ this._numCondensedJoints = newIndex;
+ } else if (this._concatenateArrays) {
+ i = 0;
+ index = offset;
+ jointIndices = this._pVertices;
+
+ while (i < values.length) {
+ j = 0;
+ while (j < this._jointsPerVertex)
+ jointIndices[index + j++] = values[i++];
+ index += stride;
+ }
+ }
+ }
+
+ this.notifyJointIndicesUpdate();
+
+ this._jointIndicesDirty = false;
+ };
+
+ /**
+ * Updates the joint weights.
+ */
+ TriangleSubGeometry.prototype.updateJointWeights = function (values) {
+ var i;
+ var j;
+ var index;
+ var offset;
+ var stride;
+ var jointWeights;
+
+ if (this._concatenateArrays && (this._jointWeights == null || values == null) && (this._jointWeights != null || values != null))
+ this._pNotifyVerticesUpdate();
+
+ this._jointWeights = values;
+
+ if (values != null && this._concatenateArrays) {
+ offset = this.getOffset(TriangleSubGeometry.JOINT_WEIGHT_DATA);
+ stride = this.getStride(TriangleSubGeometry.JOINT_WEIGHT_DATA);
+
+ i = 0;
+ index = offset;
+ jointWeights = this._pVertices;
+
+ while (i < values.length) {
+ j = 0;
+ while (j < this._jointsPerVertex)
+ jointWeights[index + j++] = values[i++];
+ index += stride;
+ }
+ }
+
+ this.notifyJointWeightsUpdate();
+
+ this._jointWeightsDirty = false;
};
/**
*
- * @param rayPosition
- * @param rayDirection
- * @returns {boolean}
*/
- NodeBase.prototype.isIntersectingRay = function (rayPosition, rayDirection) {
- return true;
+ TriangleSubGeometry.prototype.dispose = function () {
+ _super.prototype.dispose.call(this);
+
+ this._positions = null;
+ this._vertexNormals = null;
+ this._vertexTangents = null;
+ this._uvs = null;
+ this._secondaryUVs = null;
+ this._jointIndices = null;
+ this._jointWeights = null;
+
+ this._faceNormals = null;
+ this._faceWeights = null;
+ this._faceTangents = null;
};
/**
+ * Updates the face indices of the TriangleSubGeometry.
*
- * @returns {boolean}
+ * @param indices The face indices to upload.
*/
- NodeBase.prototype.isCastingShadow = function () {
- return true;
+ TriangleSubGeometry.prototype.updateIndices = function (indices) {
+ _super.prototype.updateIndices.call(this, indices);
+
+ this._faceNormalsDirty = true;
+
+ if (this._autoDeriveNormals)
+ this._vertexNormalsDirty = true;
+
+ if (this._autoDeriveTangents)
+ this._vertexTangentsDirty = true;
+
+ if (this._autoDeriveUVs)
+ this._uvsDirty = true;
};
/**
- *
- * @param entity
- * @returns {away.partition.NodeBase}
+ * Clones the current object
+ * @return An exact duplicate of the current object.
*/
- NodeBase.prototype.findPartitionForEntity = function (entity) {
- return this;
+ TriangleSubGeometry.prototype.clone = function () {
+ var clone = new TriangleSubGeometry(this._concatenateArrays);
+ clone.updateIndices(this._pIndices.concat());
+ clone.updatePositions(this._positions.concat());
+
+ if (this._vertexNormals && !this._autoDeriveNormals)
+ clone.updateVertexNormals(this._vertexNormals.concat());
+ else
+ clone.updateVertexNormals(null);
+
+ if (this._uvs && !this._autoDeriveUVs)
+ clone.updateUVs(this._uvs.concat());
+ else
+ clone.updateUVs(null);
+
+ if (this._vertexTangents && !this._autoDeriveTangents)
+ clone.updateVertexTangents(this._vertexTangents.concat());
+ else
+ clone.updateVertexTangents(null);
+
+ if (this._secondaryUVs)
+ clone.updateSecondaryUVs(this._secondaryUVs.concat());
+
+ if (this._jointIndices) {
+ clone.jointsPerVertex = this._jointsPerVertex;
+ clone.updateJointIndices(this._jointIndices.concat());
+ }
+
+ if (this._jointWeights)
+ clone.updateJointWeights(this._jointWeights.concat());
+
+ return clone;
};
- /**
- *
- * @param traverser
- */
- NodeBase.prototype.acceptTraverser = function (traverser) {
- if (this._pNumEntities == 0 && !this._pDebugPrimitive)
- return;
+ TriangleSubGeometry.prototype.scaleUV = function (scaleU, scaleV) {
+ if (typeof scaleU === "undefined") { scaleU = 1; }
+ if (typeof scaleV === "undefined") { scaleV = 1; }
+ var index;
+ var offset;
+ var stride;
+ var uvs;
- if (traverser.enterNode(this)) {
- var i = 0;
+ uvs = this._uvs;
- while (i < this._pNumChildNodes)
- this._pChildNodes[i++].acceptTraverser(traverser);
+ var ratioU = scaleU / this._scaleU;
+ var ratioV = scaleV / this._scaleV;
+
+ this._scaleU = scaleU;
+ this._scaleV = scaleV;
+
+ var len = uvs.length;
+
+ offset = 0;
+ stride = 2;
- if (this._pDebugPrimitive)
- this._pDebugPrimitive.partitionNode.acceptTraverser(traverser);
+ index = offset;
+
+ while (index < len) {
+ uvs[index] *= ratioU;
+ uvs[index + 1] *= ratioV;
+ index += stride;
}
+
+ this.notifyUVsUpdate();
};
/**
- *
- * @protected
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
*/
- NodeBase.prototype.pCreateDebugBounds = function () {
- return null;
+ TriangleSubGeometry.prototype.scale = function (scale) {
+ var i;
+ var index;
+ var offset;
+ var stride;
+ var positions;
+
+ positions = this._positions;
+
+ var len = positions.length;
+
+ offset = 0;
+ stride = 3;
+
+ i = 0;
+ index = offset;
+ while (i < len) {
+ positions[index] *= scale;
+ positions[index + 1] *= scale;
+ positions[index + 2] *= scale;
+
+ i += 3;
+ index += stride;
+ }
+
+ this.notifyPositionsUpdate();
+ };
+
+ TriangleSubGeometry.prototype.applyTransformation = function (transform) {
+ var positions;
+ var normals;
+ var tangents;
+
+ if (this._concatenateArrays) {
+ positions = this._pVertices;
+ normals = this._pVertices;
+ tangents = this._pVertices;
+ } else {
+ positions = this._positions;
+ normals = this._vertexNormals;
+ tangents = this._vertexTangents;
+ }
+
+ var len = this._positions.length / 3;
+ var i;
+ var i1;
+ var i2;
+ var vector = new away.geom.Vector3D();
+
+ var bakeNormals = this._vertexNormals != null;
+ var bakeTangents = this._vertexTangents != null;
+ var invTranspose;
+
+ if (bakeNormals || bakeTangents) {
+ invTranspose = transform.clone();
+ invTranspose.invert();
+ invTranspose.transpose();
+ }
+
+ var vi0 = this.getOffset(TriangleSubGeometry.POSITION_DATA);
+ var ni0 = this.getOffset(TriangleSubGeometry.NORMAL_DATA);
+ var ti0 = this.getOffset(TriangleSubGeometry.TANGENT_DATA);
+
+ var vStride = this.getStride(TriangleSubGeometry.POSITION_DATA);
+ var nStride = this.getStride(TriangleSubGeometry.NORMAL_DATA);
+ var tStride = this.getStride(TriangleSubGeometry.TANGENT_DATA);
+
+ for (i = 0; i < len; ++i) {
+ i1 = vi0 + 1;
+ i2 = vi0 + 2;
+
+ // bake position
+ vector.x = positions[vi0];
+ vector.y = positions[i1];
+ vector.z = positions[i2];
+ vector = transform.transformVector(vector);
+ positions[vi0] = vector.x;
+ positions[i1] = vector.y;
+ positions[i2] = vector.z;
+ vi0 += vStride;
+
+ // bake normal
+ if (bakeNormals) {
+ i1 = ni0 + 1;
+ i2 = ni0 + 2;
+ vector.x = normals[ni0];
+ vector.y = normals[i1];
+ vector.z = normals[i2];
+ vector = invTranspose.deltaTransformVector(vector);
+ vector.normalize();
+ normals[ni0] = vector.x;
+ normals[i1] = vector.y;
+ normals[i2] = vector.z;
+ ni0 += nStride;
+ }
+
+ // bake tangent
+ if (bakeTangents) {
+ i1 = ti0 + 1;
+ i2 = ti0 + 2;
+ vector.x = tangents[ti0];
+ vector.y = tangents[i1];
+ vector.z = tangents[i2];
+ vector = invTranspose.deltaTransformVector(vector);
+ vector.normalize();
+ tangents[ti0] = vector.x;
+ tangents[i1] = vector.y;
+ tangents[i2] = vector.z;
+ ti0 += tStride;
+ }
+ }
+
+ this.notifyPositionsUpdate();
+ this.notifyNormalsUpdate();
+ this.notifyTangentsUpdate();
};
/**
- *
- * @param node
- * @internal
+ * Updates the tangents for each face.
*/
- NodeBase.prototype.iAddNode = function (node) {
- node._iParent = this;
- this._iNumEntities += node._pNumEntities;
- this._pChildNodes[this._pNumChildNodes++] = node;
- node.showDebugBounds = this._pDebugPrimitive != null;
+ TriangleSubGeometry.prototype.updateFaceTangents = function () {
+ var i = 0;
+ var index1;
+ var index2;
+ var index3;
+ var vi;
+ var v0;
+ var dv1;
+ var dv2;
+ var denom;
+ var x0, y0, z0;
+ var dx1, dy1, dz1;
+ var dx2, dy2, dz2;
+ var cx, cy, cz;
+
+ var positions = this._positions;
+ var uvs = this._uvs;
+
+ var len = this._pIndices.length;
+
+ if (this._faceTangents == null)
+ this._faceTangents = new Array(len);
- var numEntities = node._pNumEntities;
- node = this;
+ while (i < len) {
+ index1 = this._pIndices[i];
+ index2 = this._pIndices[i + 1];
+ index3 = this._pIndices[i + 2];
- do {
- node._iNumEntities += numEntities;
- } while((node = node._iParent) != null);
+ v0 = uvs[index1 * 2 + 1];
+ dv1 = uvs[index2 * 2 + 1] - v0;
+ dv2 = uvs[index3 * 2 + 1] - v0;
+
+ vi = index1 * 3;
+ x0 = positions[vi];
+ y0 = positions[vi + 1];
+ z0 = positions[vi + 2];
+ vi = index2 * 3;
+ dx1 = positions[vi] - x0;
+ dy1 = positions[vi + 1] - y0;
+ dz1 = positions[vi + 2] - z0;
+ vi = index3 * 3;
+ dx2 = positions[vi] - x0;
+ dy2 = positions[vi + 1] - y0;
+ dz2 = positions[vi + 2] - z0;
+
+ cx = dv2 * dx1 - dv1 * dx2;
+ cy = dv2 * dy1 - dv1 * dy2;
+ cz = dv2 * dz1 - dv1 * dz2;
+ denom = 1 / Math.sqrt(cx * cx + cy * cy + cz * cz);
+
+ this._faceTangents[i++] = denom * cx;
+ this._faceTangents[i++] = denom * cy;
+ this._faceTangents[i++] = denom * cz;
+ }
+
+ this._faceTangentsDirty = false;
};
/**
- *
- * @param node
- * @internal
+ * Updates the normals for each face.
*/
- NodeBase.prototype.iRemoveNode = function (node) {
- var index = this._pChildNodes.indexOf(node);
- this._pChildNodes[index] = this._pChildNodes[--this._pNumChildNodes];
- this._pChildNodes.pop();
+ TriangleSubGeometry.prototype.updateFaceNormals = function () {
+ var i = 0;
+ var j = 0;
+ var k = 0;
+ var index;
+ var offset;
+ var stride;
- var numEntities = node._pNumEntities;
- node = this;
+ var x1, x2, x3;
+ var y1, y2, y3;
+ var z1, z2, z3;
+ var dx1, dy1, dz1;
+ var dx2, dy2, dz2;
+ var cx, cy, cz;
+ var d;
- do {
- node._pNumEntities -= numEntities;
- } while((node = node._iParent) != null);
+ var positions = this._positions;
+
+ var len = this._pIndices.length;
+
+ if (this._faceNormals == null)
+ this._faceNormals = new Array(len);
+
+ if (this._useFaceWeights && this._faceWeights == null)
+ this._faceWeights = new Array(len / 3);
+
+ while (i < len) {
+ index = this._pIndices[i++] * 3;
+ x1 = positions[index];
+ y1 = positions[index + 1];
+ z1 = positions[index + 2];
+ index = this._pIndices[i++] * 3;
+ x2 = positions[index];
+ y2 = positions[index + 1];
+ z2 = positions[index + 2];
+ index = this._pIndices[i++] * 3;
+ x3 = positions[index];
+ y3 = positions[index + 1];
+ z3 = positions[index + 2];
+ dx1 = x3 - x1;
+ dy1 = y3 - y1;
+ dz1 = z3 - z1;
+ dx2 = x2 - x1;
+ dy2 = y2 - y1;
+ dz2 = z2 - z1;
+ cx = dz1 * dy2 - dy1 * dz2;
+ cy = dx1 * dz2 - dz1 * dx2;
+ cz = dy1 * dx2 - dx1 * dy2;
+ d = Math.sqrt(cx * cx + cy * cy + cz * cz);
+
+ // length of cross product = 2*triangle area
+ if (this._useFaceWeights) {
+ var w = d * 10000;
+
+ if (w < 1)
+ w = 1;
+
+ this._faceWeights[k++] = w;
+ }
+
+ d = 1 / d;
+
+ this._faceNormals[j++] = cx * d;
+ this._faceNormals[j++] = cy * d;
+ this._faceNormals[j++] = cz * d;
+ }
+
+ this._faceNormalsDirty = false;
};
- return NodeBase;
- })();
- partition.NodeBase = NodeBase;
- })(away.partition || (away.partition = {}));
- var partition = away.partition;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.partition
- */
- (function (partition) {
- /**
- * @class away.partition.NullNode
- */
- var NullNode = (function () {
- function NullNode() {
- }
- return NullNode;
- })();
- partition.NullNode = NullNode;
- })(away.partition || (away.partition = {}));
- var partition = away.partition;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- /**
- * @module away.partition
- */
- (function (partition) {
- /**
- * @class away.partition.Partition
- */
- var Partition = (function () {
- function Partition(rootNode) {
- this._updatesMade = false;
- this._rootNode = rootNode || new away.partition.NullNode();
- }
- Object.defineProperty(Partition.prototype, "rootNode", {
- get: function () {
- return this._rootNode;
- },
- enumerable: true,
- configurable: true
- });
- Partition.prototype.traverse = function (traverser) {
- if (this._updatesMade)
- this.updateEntities();
+ TriangleSubGeometry.prototype._pNotifyVerticesUpdate = function () {
+ this._pStrideOffsetDirty = true;
- this._rootNode.acceptTraverser(traverser);
+ this.notifyPositionsUpdate();
+ this.notifyNormalsUpdate();
+ this.notifyTangentsUpdate();
+ this.notifyUVsUpdate();
+ this.notifySecondaryUVsUpdate();
+ this.notifyJointIndicesUpdate();
+ this.notifyJointWeightsUpdate();
};
- Partition.prototype.iMarkForUpdate = function (entity) {
- var node = entity.partitionNode;
- var t = this._updateQueue;
+ TriangleSubGeometry.prototype.notifyPositionsUpdate = function () {
+ if (this._positionsDirty)
+ return;
- while (t) {
- if (node == t)
- return;
+ this._positionsDirty = true;
- t = t._iUpdateQueueNext;
- }
+ if (!this._positionsUpdated)
+ this._positionsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.POSITION_DATA);
- node._iUpdateQueueNext = this._updateQueue;
+ this.dispatchEvent(this._positionsUpdated);
+ };
- this._updateQueue = node;
- this._updatesMade = true;
+ TriangleSubGeometry.prototype.notifyNormalsUpdate = function () {
+ if (this._vertexNormalsDirty)
+ return;
+
+ this._vertexNormalsDirty = true;
+
+ if (!this._normalsUpdated)
+ this._normalsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.NORMAL_DATA);
+
+ this.dispatchEvent(this._normalsUpdated);
};
- Partition.prototype.iRemoveEntity = function (entity) {
- var node = entity.partitionNode;
- var t;
+ TriangleSubGeometry.prototype.notifyTangentsUpdate = function () {
+ if (this._vertexTangentsDirty)
+ return;
- node.removeFromParent();
+ this._vertexTangentsDirty = true;
- if (node == this._updateQueue) {
- this._updateQueue = node._iUpdateQueueNext;
- } else {
- t = this._updateQueue;
- while (t && t._iUpdateQueueNext != node)
- t = t._iUpdateQueueNext;
+ if (!this._tangentsUpdated)
+ this._tangentsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.TANGENT_DATA);
- if (t)
- t._iUpdateQueueNext = node._iUpdateQueueNext;
- }
+ this.dispatchEvent(this._tangentsUpdated);
+ };
- node._iUpdateQueueNext = null;
+ TriangleSubGeometry.prototype.notifyUVsUpdate = function () {
+ if (this._uvsDirty)
+ return;
- if (!this._updateQueue)
- this._updatesMade = false;
+ this._uvsDirty = true;
+
+ if (!this._uvsUpdated)
+ this._uvsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.UV_DATA);
+
+ this.dispatchEvent(this._uvsUpdated);
};
- Partition.prototype.updateEntities = function () {
- var node = this._updateQueue;
- var targetNode;
- var t;
- this._updateQueue = null;
- this._updatesMade = false;
+ TriangleSubGeometry.prototype.notifySecondaryUVsUpdate = function () {
+ if (this._secondaryUVsDirty)
+ return;
- do {
- targetNode = this._rootNode.findPartitionForEntity(node.entity);
+ this._secondaryUVsDirty = true;
- if (node.parent != targetNode) {
- if (node)
- node.removeFromParent();
+ if (!this._secondaryUVsUpdated)
+ this._secondaryUVsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.SECONDARY_UV_DATA);
- targetNode.iAddNode(node);
- }
+ this.dispatchEvent(this._secondaryUVsUpdated);
+ };
- t = node._iUpdateQueueNext;
- node._iUpdateQueueNext = null;
+ TriangleSubGeometry.prototype.notifyJointIndicesUpdate = function () {
+ if (this._jointIndicesDirty)
+ return;
- //required for controllers with autoUpdate set to true
- node.entity._iInternalUpdate();
- } while((node = t) != null);
+ this._jointIndicesDirty = true;
+
+ if (!this._jointIndicesUpdated)
+ this._jointIndicesUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.JOINT_INDEX_DATA);
+
+ this.dispatchEvent(this._jointIndicesUpdated);
};
- return Partition;
- })();
- partition.Partition = Partition;
- })(away.partition || (away.partition = {}));
- var partition = away.partition;
+
+ TriangleSubGeometry.prototype.notifyJointWeightsUpdate = function () {
+ if (this._jointWeightsDirty)
+ return;
+
+ this._jointWeightsDirty = true;
+
+ if (!this._jointWeightsUpdated)
+ this._jointWeightsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.JOINT_WEIGHT_DATA);
+
+ this.dispatchEvent(this._jointWeightsUpdated);
+ };
+ TriangleSubGeometry.VERTEX_DATA = "vertices";
+ TriangleSubGeometry.POSITION_DATA = "positions";
+ TriangleSubGeometry.NORMAL_DATA = "vertexNormals";
+ TriangleSubGeometry.TANGENT_DATA = "vertexTangents";
+ TriangleSubGeometry.UV_DATA = "uvs";
+ TriangleSubGeometry.SECONDARY_UV_DATA = "secondaryUVs";
+ TriangleSubGeometry.JOINT_INDEX_DATA = "jointIndices";
+ TriangleSubGeometry.JOINT_WEIGHT_DATA = "jointWeights";
+
+ TriangleSubGeometry.POSITION_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ TriangleSubGeometry.NORMAL_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ TriangleSubGeometry.TANGENT_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ TriangleSubGeometry.UV_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_2;
+ TriangleSubGeometry.SECONDARY_UV_FORMAT = away.gl.ContextGLVertexBufferFormat.FLOAT_2;
+ return TriangleSubGeometry;
+ })(away.base.SubGeometryBase);
+ base.TriangleSubGeometry = TriangleSubGeometry;
+ })(away.base || (away.base = {}));
+ var base = away.base;
})(away || (away = {}));
///
var away;
(function (away) {
/**
- * @module away.partition
+ * @module away.base
*/
- (function (partition) {
+ (function (base) {
/**
- * @class away.partition.EntityNode
+ * TriangleSubMesh wraps a TriangleSubGeometry as a scene graph instantiation. A TriangleSubMesh is owned by a Mesh object.
+ *
+ *
+ * @see away.base.TriangleSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.TriangleSubMesh
*/
- var EntityNode = (function (_super) {
- __extends(EntityNode, _super);
- function EntityNode(entity) {
+ var TriangleSubMesh = (function (_super) {
+ __extends(TriangleSubMesh, _super);
+ /**
+ * Creates a new TriangleSubMesh object
+ * @param subGeometry The TriangleSubGeometry object which provides the geometry data for this TriangleSubMesh.
+ * @param parentMesh The Mesh object to which this TriangleSubMesh belongs.
+ * @param material An optional material used to render this TriangleSubMesh.
+ */
+ function TriangleSubMesh(subGeometry, parentMesh, material) {
+ if (typeof material === "undefined") { material = null; }
_super.call(this);
- this._entity = entity;
- this._iNumEntities = 1;
+
+ this._pParentMesh = parentMesh;
+ this._subGeometry = subGeometry;
+ this.material = material;
}
- Object.defineProperty(EntityNode.prototype, "entity", {
+ Object.defineProperty(TriangleSubMesh.prototype, "assetType", {
+ /**
+ *
+ */
get: function () {
- return this._entity;
+ return away.library.AssetType.TRIANGLE_SUB_MESH;
},
enumerable: true,
configurable: true
});
- EntityNode.prototype.removeFromParent = function () {
- if (this._iParent)
- this._iParent.iRemoveNode(this);
-
- this._iParent = null;
- };
-
- /**
- *
- * @returns {boolean}
- */
- EntityNode.prototype.isCastingShadow = function () {
- return this.entity.castsShadows;
- };
+ Object.defineProperty(TriangleSubMesh.prototype, "subGeometry", {
+ /**
+ * The TriangleSubGeometry object which provides the geometry data for this TriangleSubMesh.
+ */
+ get: function () {
+ return this._subGeometry;
+ },
+ enumerable: true,
+ configurable: true
+ });
/**
*
- * @param planes
- * @param numPlanes
- * @returns {boolean}
- */
- EntityNode.prototype.isInFrustum = function (planes, numPlanes) {
- if (!this._entity._iIsVisible())
- return false;
-
- return this._entity.worldBounds.isInFrustum(planes, numPlanes);
- };
-
- /**
- * @inheritDoc
*/
- EntityNode.prototype.acceptTraverser = function (traverser) {
- if (traverser.enterNode(this))
- traverser.applyEntity(this._entity);
+ TriangleSubMesh.prototype.dispose = function () {
+ _super.prototype.dispose.call(this);
};
- /**
- * @inheritDoc
- */
- EntityNode.prototype.isIntersectingRay = function (rayPosition, rayDirection) {
- if (!this._entity._iIsVisible())
- return false;
-
- return this._entity.isIntersectingRay(rayPosition, rayDirection);
+ TriangleSubMesh.prototype._iCollectRenderable = function (renderer) {
+ renderer.applyTriangleSubMesh(this);
};
- return EntityNode;
- })(away.partition.NodeBase);
- partition.EntityNode = EntityNode;
- })(away.partition || (away.partition = {}));
- var partition = away.partition;
+ return TriangleSubMesh;
+ })(away.base.SubMeshBase);
+ base.TriangleSubMesh = TriangleSubMesh;
+ })(away.base || (away.base = {}));
+ var base = away.base;
})(away || (away = {}));
///
var away;
(function (away) {
/**
- * @module away.partition
+ * @module away.pool
*/
- (function (partition) {
+ (function (pool) {
/**
- * @class away.partition.CameraNode
+ * @class away.pool.EntityListItem
*/
- var CameraNode = (function (_super) {
- __extends(CameraNode, _super);
- function CameraNode(camera) {
- _super.call(this, camera);
+ var EntityListItem = (function () {
+ function EntityListItem() {
}
+ return EntityListItem;
+ })();
+ pool.EntityListItem = EntityListItem;
+ })(away.pool || (away.pool = {}));
+ var pool = away.pool;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.pool
+ */
+ (function (pool) {
+ /**
+ * @class away.pool.EntityListItemPool
+ */
+ var EntityListItemPool = (function () {
/**
- * @inheritDoc
+ *
*/
- CameraNode.prototype.acceptTraverser = function (traverser) {
- // todo: dead end for now, if it has a debug mesh, then sure accept that
+ function EntityListItemPool() {
+ this._index = 0;
+ this._poolSize = 0;
+ this._pool = [];
+ }
+ /**
+ *
+ */
+ EntityListItemPool.prototype.getItem = function () {
+ var item;
+ if (this._index == this._poolSize) {
+ item = new away.pool.EntityListItem();
+ this._pool[this._index++] = item;
+ ++this._poolSize;
+ } else {
+ item = this._pool[this._index++];
+ }
+ return item;
};
- return CameraNode;
- })(away.partition.EntityNode);
- partition.CameraNode = CameraNode;
- })(away.partition || (away.partition = {}));
- var partition = away.partition;
+
+ /**
+ *
+ */
+ EntityListItemPool.prototype.freeAll = function () {
+ this._index = 0;
+ };
+
+ EntityListItemPool.prototype.dispose = function () {
+ this._pool.length = 0;
+ };
+ return EntityListItemPool;
+ })();
+ pool.EntityListItemPool = EntityListItemPool;
+ })(away.pool || (away.pool = {}));
+ var pool = away.pool;
})(away || (away = {}));
///
///
+///
var away;
(function (away) {
- ///
/**
- * @module away.pick
+ * @module away.pool
*/
- (function (pick) {
+ (function (pool) {
/**
- * Value object for a picking collision returned by a picking collider. Created as unique objects on display objects
- *
- * @see away.base.DisplayObject#pickingCollisionVO
- * @see away.core.pick.IPickingCollider
- *
- * @class away.pick.PickingCollisionVO
+ * @class away.pool.RenderablePool
*/
- var PickingCollisionVO = (function () {
+ var RenderablePool = (function () {
/**
- * Creates a new PickingCollisionVO object.
+ * //TODO
*
- * @param entity The entity to which this collision object belongs.
+ * @param renderableClass
*/
- function PickingCollisionVO(displayObject) {
- this.displayObject = displayObject;
+ function RenderablePool(renderableClass) {
+ this._pool = new Object();
+ this._renderableClass = renderableClass;
}
- return PickingCollisionVO;
+ /**
+ * //TODO
+ *
+ * @param materialOwner
+ * @returns IRenderable
+ */
+ RenderablePool.prototype.getItem = function (materialOwner) {
+ return (this._pool[materialOwner.id] || (this._pool[materialOwner.id] = materialOwner._iAddRenderable(new this._renderableClass(this, materialOwner))));
+ };
+
+ /**
+ * //TODO
+ *
+ * @param materialOwner
+ */
+ RenderablePool.prototype.disposeItem = function (materialOwner) {
+ materialOwner._iRemoveRenderable(this._pool[materialOwner.id]);
+
+ this._pool[materialOwner.id] = null;
+ };
+
+ /**
+ * //TODO
+ *
+ * @param renderableClass
+ * @returns RenderablePool
+ */
+ RenderablePool.getPool = function (renderableClass) {
+ var pool = RenderablePool._pools[renderableClass.id];
+
+ if (pool != undefined)
+ return pool;
+
+ return (RenderablePool._pools[renderableClass.id] = new RenderablePool(renderableClass));
+ };
+
+ /**
+ * //TODO
+ *
+ * @param renderableClass
+ */
+ RenderablePool.disposePool = function (renderableClass) {
+ if (RenderablePool._pools[renderableClass.id])
+ RenderablePool._pools[renderableClass.id] = undefined;
+ };
+ RenderablePool._pools = new Object();
+ return RenderablePool;
})();
- pick.PickingCollisionVO = PickingCollisionVO;
- })(away.pick || (away.pick = {}));
- var pick = away.pick;
+ pool.RenderablePool = RenderablePool;
+ })(away.pool || (away.pool = {}));
+ var pool = away.pool;
})(away || (away = {}));
///
var away;
(function (away) {
/**
- * @module away.pick
+ * @module away.data
*/
- (function (pick) {
+ (function (pool) {
/**
- * Picks a 3d object from a view or scene by 3D raycast calculations.
- * Performs an initial coarse boundary calculation to return a subset of entities whose bounding volumes intersect with the specified ray,
- * then triggers an optional picking collider on individual entity objects to further determine the precise values of the picking ray collision.
- *
- * @class away.pick.RaycastPicker
+ * @class away.pool.RenderableListItem
*/
- var RaycastPicker = (function () {
+ var CSSRenderableBase = (function () {
/**
- * Creates a new RaycastPicker object.
*
- * @param findClosestCollision Determines whether the picker searches for the closest bounds collision along the ray,
- * or simply returns the first collision encountered. Defaults to false.
+ * @param sourceEntity
+ * @param material
+ * @param animator
*/
- function RaycastPicker(findClosestCollision) {
- if (typeof findClosestCollision === "undefined") { findClosestCollision = false; }
- this._ignoredEntities = [];
- this._onlyMouseEnabled = true;
- this._numEntities = 0;
- this._raycastCollector = new away.traverse.RaycastCollector();
+ function CSSRenderableBase(pool, sourceEntity, materialOwner) {
+ //store a reference to the pool for later disposal
+ this._pool = pool;
- this._findClosestCollision = findClosestCollision;
- this._entities = new Array();
+ this.sourceEntity = sourceEntity;
+ this.materialOwner = materialOwner;
}
- Object.defineProperty(RaycastPicker.prototype, "onlyMouseEnabled", {
- /**
- * @inheritDoc
- */
- get: function () {
- return this._onlyMouseEnabled;
- },
- set: function (value) {
- this._onlyMouseEnabled = value;
- },
- enumerable: true,
- configurable: true
- });
-
+ /**
+ *
+ */
+ CSSRenderableBase.prototype.dispose = function () {
+ this._pool.disposeItem(this.materialOwner);
+ };
/**
- * @inheritDoc
+ *
*/
- RaycastPicker.prototype.getViewCollision = function (x, y, view) {
- //update ray
- var rayPosition = view.unproject(x, y, 0);
- var rayDirection = view.unproject(x, y, 1).subtract(rayPosition);
-
- return this.getSceneCollision(rayPosition, rayDirection, view.scene);
+ CSSRenderableBase.prototype.invalidateGeometry = function () {
};
/**
- * @inheritDoc
+ *
*/
- RaycastPicker.prototype.getSceneCollision = function (rayPosition, rayDirection, scene) {
- //clear collector
- this._raycastCollector.clear();
-
- //setup ray vectors
- this._raycastCollector.rayPosition = rayPosition;
- this._raycastCollector.rayDirection = rayDirection;
-
- // collect entities to test
- scene.traversePartitions(this._raycastCollector);
-
- this._numEntities = 0;
- var node = this._raycastCollector.entityHead;
- var entity;
-
- while (node) {
- if (!this.isIgnored(entity = node.entity))
- this._entities[this._numEntities++] = entity;
-
- node = node.next;
- }
-
- //early out if no collisions detected
- if (!this._numEntities)
- return null;
-
- return this.getPickingCollisionVO(this._raycastCollector);
+ CSSRenderableBase.prototype.invalidateIndexData = function () {
};
- // public getEntityCollision(position:away.geom.Vector3D, direction:away.geom.Vector3D, entities:Array):PickingCollisionVO
- // {
- // this._numEntities = 0;
- //
- // var entity:away.entities.IEntity;
- // var l:number = entities.length;
- //
- // for (var c:number = 0; c < l; c++) {
- // entity = entities[c];
- //
- // if (entity.isIntersectingRay(position, direction))
- // this._entities[this._numEntities++] = entity;
- // }
- //
- // return this.getPickingCollisionVO(this._raycastCollector);
- // }
- RaycastPicker.prototype.setIgnoreList = function (entities) {
- this._ignoredEntities = entities;
+ /**
+ *
+ */
+ CSSRenderableBase.prototype.invalidateVertexData = function (dataType) {
};
+ return CSSRenderableBase;
+ })();
+ pool.CSSRenderableBase = CSSRenderableBase;
+ })(away.pool || (away.pool = {}));
+ var pool = away.pool;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.data
+ */
+ (function (pool) {
+ /**
+ * @class away.pool.RenderableListItem
+ */
+ var CSSBillboardRenderable = (function (_super) {
+ __extends(CSSBillboardRenderable, _super);
+ function CSSBillboardRenderable(pool, billboard) {
+ _super.call(this, pool, billboard, billboard);
- RaycastPicker.prototype.isIgnored = function (entity) {
- if (this._onlyMouseEnabled && !entity._iIsMouseEnabled())
- return true;
+ var div = document.createElement("div");
+ div.onmousedown = function (event) {
+ return false;
+ };
- var len = this._ignoredEntities.length;
- for (var i = 0; i < len; i++)
- if (this._ignoredEntities[i] == entity)
- return true;
+ this.htmlElement = div;
- return false;
- };
+ var style = div.style;
- RaycastPicker.prototype.sortOnNearT = function (entity1, entity2) {
- return entity1._iPickingCollisionVO.rayEntryDistance > entity2._iPickingCollisionVO.rayEntryDistance ? 1 : -1;
- };
+ style.position = "absolute";
+ style.transformOrigin = style["-webkit-transform-origin"] = style["-moz-transform-origin"] = style["-o-transform-origin"] = style["-ms-transform-origin"] = "0% 0%";
- RaycastPicker.prototype.getPickingCollisionVO = function (collector) {
- // trim before sorting
- this._entities.length = this._numEntities;
+ var img = document.createElement("div");
- // Sort entities from closest to furthest.
- this._entities = this._entities.sort(this.sortOnNearT); // TODO - test sort filter in JS
+ div.appendChild(img);
- // ---------------------------------------------------------------------
- // Evaluate triangle collisions when needed.
- // Replaces collision data provided by bounds collider with more precise data.
- // ---------------------------------------------------------------------
- var shortestCollisionDistance = Number.MAX_VALUE;
- var bestCollisionVO;
- var pickingCollisionVO;
- var entity;
- var i;
+ img.className = "material" + billboard.material.id;
+ }
+ CSSBillboardRenderable.id = "billboard";
+ return CSSBillboardRenderable;
+ })(away.pool.CSSRenderableBase);
+ pool.CSSBillboardRenderable = CSSBillboardRenderable;
+ })(away.pool || (away.pool = {}));
+ var pool = away.pool;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.data
+ */
+ (function (pool) {
+ /**
+ * @class away.pool.RenderableListItem
+ */
+ var CSSLineSegmentRenderable = (function (_super) {
+ __extends(CSSLineSegmentRenderable, _super);
+ function CSSLineSegmentRenderable(pool, lineSegment) {
+ _super.call(this, pool, lineSegment, lineSegment);
- for (i = 0; i < this._numEntities; ++i) {
- entity = this._entities[i];
- pickingCollisionVO = entity._iPickingCollisionVO;
- if (entity.pickingCollider) {
- // If a collision exists, update the collision data and stop all checks.
- if ((bestCollisionVO == null || pickingCollisionVO.rayEntryDistance < bestCollisionVO.rayEntryDistance) && entity._iTestCollision(shortestCollisionDistance, this._findClosestCollision)) {
- shortestCollisionDistance = pickingCollisionVO.rayEntryDistance;
- bestCollisionVO = pickingCollisionVO;
- if (!this._findClosestCollision) {
- this.updateLocalPosition(pickingCollisionVO);
- return pickingCollisionVO;
- }
- }
- } else if (bestCollisionVO == null || pickingCollisionVO.rayEntryDistance < bestCollisionVO.rayEntryDistance) {
- // Note: a bounds collision with a ray origin inside its bounds is ONLY ever used
- // to enable the detection of a corresponsding triangle collision.
- // Therefore, bounds collisions with a ray origin inside its bounds can be ignored
- // if it has been established that there is NO triangle collider to test
- if (!pickingCollisionVO.rayOriginIsInsideBounds) {
- this.updateLocalPosition(pickingCollisionVO);
- return pickingCollisionVO;
- }
- }
- }
+ var div = document.createElement("div");
+ div.onmousedown = function (event) {
+ return false;
+ };
- return bestCollisionVO;
- };
+ this.htmlElement = div;
- RaycastPicker.prototype.updateLocalPosition = function (pickingCollisionVO) {
- var collisionPos = (pickingCollisionVO.localPosition == null) ? new away.geom.Vector3D() : pickingCollisionVO.localPosition;
+ var style = div.style;
- var rayDir = pickingCollisionVO.localRayDirection;
- var rayPos = pickingCollisionVO.localRayPosition;
- var t = pickingCollisionVO.rayEntryDistance;
- collisionPos.x = rayPos.x + t * rayDir.x;
- collisionPos.y = rayPos.y + t * rayDir.y;
- collisionPos.z = rayPos.z + t * rayDir.z;
- };
+ style.position = "absolute";
+ style.transformOrigin = style["-webkit-transform-origin"] = style["-moz-transform-origin"] = style["-o-transform-origin"] = style["-ms-transform-origin"] = "0% 0%";
- RaycastPicker.prototype.dispose = function () {
- //TODO
- };
- return RaycastPicker;
- })();
- pick.RaycastPicker = RaycastPicker;
- })(away.pick || (away.pick = {}));
- var pick = away.pick;
+ var img = document.createElement("div");
+
+ div.appendChild(img);
+
+ img.className = "material" + lineSegment.material.id;
+ }
+ CSSLineSegmentRenderable.id = "lineSegment";
+ return CSSLineSegmentRenderable;
+ })(away.pool.CSSRenderableBase);
+ pool.CSSLineSegmentRenderable = CSSLineSegmentRenderable;
+ })(away.pool || (away.pool = {}));
+ var pool = away.pool;
})(away || (away = {}));
///
///
var away;
(function (away) {
/**
- * @module away.render
+ * @module away.traverse
*/
- (function (render) {
+ (function (traverse) {
/**
- * RendererBase forms an abstract base class for classes that are used in the rendering pipeline to render the
- * contents of a partition
- *
- * @class away.render.RendererBase
+ * @class away.traverse.CollectorBase
*/
- var CSSRendererBase = (function (_super) {
- __extends(CSSRendererBase, _super);
- /**
- * Creates a new RendererBase object.
- */
- function CSSRendererBase(renderToTexture, forceSoftware, profile) {
- if (typeof renderToTexture === "undefined") { renderToTexture = false; }
- if (typeof forceSoftware === "undefined") { forceSoftware = false; }
- if (typeof profile === "undefined") { profile = "baseline"; }
- _super.call(this);
- this._backgroundR = 0;
- this._backgroundG = 0;
- this._backgroundB = 0;
- this._backgroundAlpha = 1;
- this._shareContext = false;
- this._pBackBufferInvalid = true;
- this._depthTextureInvalid = true;
-
- this._billboardRenderablePool = away.pool.RenderablePool.getPool(away.pool.CSSBillboardRenderable);
+ var CollectorBase = (function () {
+ function CollectorBase() {
+ this._numCullPlanes = 0;
+ this._pNumEntities = 0;
+ this._pNumInteractiveEntities = 0;
+ this._pEntityListItemPool = new away.pool.EntityListItemPool();
}
- Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundR", {
+ Object.defineProperty(CollectorBase.prototype, "camera", {
/**
- * The background color's red component, used when clearing.
*
- * @private
*/
get: function () {
- return this._backgroundR;
+ return this._pCamera;
},
set: function (value) {
- if (this._backgroundR == value)
- return;
+ this._pCamera = value;
+ this._cullPlanes = this._pCamera.frustumPlanes;
+ },
+ enumerable: true,
+ configurable: true
+ });
- this._backgroundR = value;
- this._pBackBufferInvalid = true;
+ Object.defineProperty(CollectorBase.prototype, "cullPlanes", {
+ /**
+ *
+ */
+ get: function () {
+ return this._customCullPlanes;
+ },
+ set: function (value) {
+ this._customCullPlanes = value;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundG", {
+ Object.defineProperty(CollectorBase.prototype, "entityHead", {
/**
- * The background color's green component, used when clearing.
*
- * @private
*/
get: function () {
- return this._backgroundG;
- },
- set: function (value) {
- if (this._backgroundG == value)
- return;
-
- this._backgroundG = value;
-
- this._pBackBufferInvalid = true;
+ return this._pEntityHead;
},
enumerable: true,
configurable: true
});
-
- Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundB", {
+ Object.defineProperty(CollectorBase.prototype, "numEntities", {
/**
- * The background color's blue component, used when clearing.
*
- * @private
*/
get: function () {
- return this._backgroundB;
- },
- set: function (value) {
- if (this._backgroundB == value)
- return;
-
- this._backgroundB = value;
-
- this._pBackBufferInvalid = true;
+ return this._pNumEntities;
},
enumerable: true,
configurable: true
});
-
- Object.defineProperty(CSSRendererBase.prototype, "shareContext", {
+ Object.defineProperty(CollectorBase.prototype, "numInteractiveEntities", {
+ /**
+ *
+ */
get: function () {
- return this._shareContext;
- },
- set: function (value) {
- if (this._shareContext == value)
- return;
-
- this._shareContext = value;
-
- this.updateGlobalPos();
+ return this._pNumInteractiveEntities;
},
enumerable: true,
configurable: true
});
-
/**
- * Disposes the resources used by the RendererBase.
+ *
*/
- CSSRendererBase.prototype.dispose = function () {
- /*
- if (_backgroundImageRenderer) {
- _backgroundImageRenderer.dispose();
- _backgroundImageRenderer = null;
- }
- */
- };
-
- CSSRendererBase.prototype.render = function (entityCollector) {
+ CollectorBase.prototype.clear = function () {
+ this._pNumEntities = this._pNumInteractiveEntities = 0;
+ this._cullPlanes = this._customCullPlanes ? this._customCullPlanes : (this._pCamera ? this._pCamera.frustumPlanes : null);
+ this._numCullPlanes = this._cullPlanes ? this._cullPlanes.length : 0;
+ this._pEntityHead = null;
+ this._pEntityListItemPool.freeAll();
};
/**
- * Renders the potentially visible geometry to the back buffer or texture.
- * @param entityCollector The EntityCollector object containing the potentially visible geometry.
- * @param scissorRect
+ *
+ * @param node
+ * @returns {boolean}
*/
- CSSRendererBase.prototype._iRender = function (entityCollector, scissorRect) {
- if (typeof scissorRect === "undefined") { scissorRect = null; }
- if (!entityCollector.entityHead)
- return;
-
- this.pExecuteRender(entityCollector, scissorRect);
- };
-
- CSSRendererBase.prototype.pCollectRenderables = function (entityCollector) {
- //reset head values
- this._renderableHead = null;
-
- //grab entity head
- var entity = entityCollector.entityHead;
+ CollectorBase.prototype.enterNode = function (node) {
+ var enter = this.scene._iCollectionMark != node._iCollectionMark && node.isInFrustum(this._cullPlanes, this._numCullPlanes);
- //set temp values for entry point and camera forward vector
- this._pCamera = entityCollector.camera;
- this._iEntryPoint = this._pCamera.scenePosition;
- this._pCameraForward = this._pCamera.transform.forwardVector;
+ node._iCollectionMark = this.scene._iCollectionMark;
- while (entity) {
- this.pFindRenderables(entity.entity);
- entity = entity.next;
- }
+ return enter;
};
/**
- * Renders the potentially visible geometry to the back buffer or texture. Only executed if everything is set up.
- * @param entityCollector The EntityCollector object containing the potentially visible geometry.
- * @param scissorRect
+ *
+ * @param entity
*/
- CSSRendererBase.prototype.pExecuteRender = function (entityCollector, scissorRect) {
- if (typeof scissorRect === "undefined") { scissorRect = null; }
- this.pCollectRenderables(entityCollector);
-
- this.pDraw(entityCollector);
+ CollectorBase.prototype.applyDirectionalLight = function (entity) {
+ //don't do anything here
};
/**
- * Performs the actual drawing of dom objects to the target.
*
- * @param entityCollector The EntityCollector object containing the potentially visible dom objects.
+ * @param entity
*/
- CSSRendererBase.prototype.pDraw = function (entityCollector) {
- throw new away.errors.AbstractMethodError();
- };
-
- Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundAlpha", {
- get: function () {
- return this._backgroundAlpha;
- },
- set: function (value) {
- if (this._backgroundAlpha == value)
- return;
-
- this._backgroundAlpha = value;
-
- this._pBackBufferInvalid = true;
- },
- enumerable: true,
- configurable: true
- });
+ CollectorBase.prototype.applyEntity = function (entity) {
+ this._pNumEntities++;
+ if (entity._iIsMouseEnabled())
+ this._pNumInteractiveEntities++;
- /**
- *
- */
- CSSRendererBase.prototype.updateGlobalPos = function () {
- };
+ var item = this._pEntityListItemPool.getItem();
+ item.entity = entity;
- /**
- *
- * @param billboard
- * @protected
- */
- CSSRendererBase.prototype.applyBillboard = function (billboard) {
- this.applyRenderable(this._billboardRenderablePool.getItem(billboard));
+ item.next = this._pEntityHead;
+ this._pEntityHead = item;
};
/**
*
- * @param renderable
- * @private
+ * @param entity
*/
- CSSRendererBase.prototype.applyRenderable = function (renderable) {
- var material = renderable.materialOwner.material;
- var entity = renderable.sourceEntity;
- var position = entity.scenePosition;
-
- if (material) {
- //set ids for faster referencing
- renderable.materialId = material._iMaterialId;
- renderable.renderOrderId = material._iRenderOrderId;
- renderable.cascaded = false;
-
- // project onto camera's z-axis
- position = this._iEntryPoint.subtract(position);
- renderable.zIndex = entity.zOffset - position.dotProduct(this._pCameraForward);
-
- //store reference to scene transform
- renderable.renderSceneTransform = renderable.sourceEntity.getRenderSceneTransform(this._pCamera);
-
- //store reference to next item in list
- renderable.next = this._renderableHead;
- this._renderableHead = renderable;
- }
+ CollectorBase.prototype.applyLightProbe = function (entity) {
+ //don't do anything here
};
/**
*
* @param entity
*/
- CSSRendererBase.prototype.pFindRenderables = function (entity) {
- //TODO abstract conditional in the entity with a callback to IRenderer
- if (entity.assetType === away.library.AssetType.BILLBOARD) {
- this.applyBillboard(entity);
- }
+ CollectorBase.prototype.applyPointLight = function (entity) {
+ //don't do anything here
};
- return CSSRendererBase;
- })(away.events.EventDispatcher);
- render.CSSRendererBase = CSSRendererBase;
- })(away.render || (away.render = {}));
- var render = away.render;
+ return CollectorBase;
+ })();
+ traverse.CollectorBase = CollectorBase;
+ })(away.traverse || (away.traverse = {}));
+ var traverse = away.traverse;
})(away || (away = {}));
///
var away;
(function (away) {
/**
- * @module away.render
+ * @module away.traverse
*/
- (function (render) {
+ (function (traverse) {
/**
- * The DefaultRenderer class provides the default rendering method. It renders the scene graph objects using the
- * materials assigned to them.
+ * The RaycastCollector class is a traverser for scene partitions that collects all scene graph entities that are
+ * considered intersecting with the defined ray.
*
- * @class away.render.DefaultRenderer
+ * @see away.partition.Partition
+ * @see away.entities.IEntity
+ *
+ * @class away.traverse.RaycastCollector
*/
- var CSSDefaultRenderer = (function (_super) {
- __extends(CSSDefaultRenderer, _super);
+ var RaycastCollector = (function (_super) {
+ __extends(RaycastCollector, _super);
/**
- * Creates a new CSSDefaultRenderer object.
+ * Creates a new RaycastCollector object.
*/
- function CSSDefaultRenderer() {
+ function RaycastCollector() {
_super.call(this);
- this._contextMatrix = new away.geom.Matrix3D();
- this._skyboxProjection = new away.geom.Matrix3D();
- this._transform = new away.geom.Matrix3D();
- this._viewPort = new away.geom.Rectangle();
- this._scissorRect = new away.geom.Rectangle();
- this._localPos = new away.geom.Point();
- this._globalPos = new away.geom.Point();
-
- //create container for the renderer
- this._container = document.createElement("div");
- this._container.style.overflow = "hidden";
- this._container.style.position = "absolute";
-
- //add container to body
- document.body.appendChild(this._container);
-
- //create conxtext for the renderer
- this._context = document.createElement("div");
- this._contextStyle = this._context.style;
- this._contextStyle.position = "absolute";
- this._contextStyle.transformStyle = this._contextStyle["-webkit-transform-style"] = this._contextStyle["-moz-transform-style"] = this._contextStyle["-o-transform-style"] = this._contextStyle["-ms-transform-style"] = "preserve-3d";
- this._contextStyle.transformOrigin = this._contextStyle["-webkit-transform-origin"] = this._contextStyle["-moz-transform-origin"] = this._contextStyle["-o-transform-origin"] = this._contextStyle["-ms-transform-origin"] = "0% 0%";
-
- //add context to container
- this._container.appendChild(this._context);
-
- this._viewPort = new away.geom.Rectangle();
-
- if (this._width == 0)
- this.width = window.innerWidth;
-
- if (this._height == 0)
- this.height = window.innerHeight;
+ this._rayPosition = new away.geom.Vector3D();
+ this._rayDirection = new away.geom.Vector3D();
+ this._iCollectionMark = 0;
}
- Object.defineProperty(CSSDefaultRenderer.prototype, "viewPort", {
+ Object.defineProperty(RaycastCollector.prototype, "rayPosition", {
/**
- * A viewPort rectangle equivalent of the StageGL size and position.
+ * Provides the starting position of the ray.
*/
get: function () {
- return this._viewPort;
+ return this._rayPosition;
+ },
+ set: function (value) {
+ this._rayPosition = value;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CSSDefaultRenderer.prototype, "scissorRect", {
+
+ Object.defineProperty(RaycastCollector.prototype, "rayDirection", {
/**
- * A scissor rectangle equivalent of the view size and position.
+ * Provides the direction vector of the ray.
*/
get: function () {
- return this._scissorRect;
+ return this._rayDirection;
+ },
+ set: function (value) {
+ this._rayDirection = value;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CSSDefaultRenderer.prototype, "x", {
+
+ /**
+ * Returns true if the current node is at least partly in the frustum. If so, the partition node knows to pass on the traverser to its children.
+ *
+ * @param node The Partition3DNode object to frustum-test.
+ */
+ RaycastCollector.prototype.enterNode = function (node) {
+ return node.isIntersectingRay(this._rayPosition, this._rayDirection);
+ };
+ return RaycastCollector;
+ })(away.traverse.CollectorBase);
+ traverse.RaycastCollector = RaycastCollector;
+ })(away.traverse || (away.traverse = {}));
+ var traverse = away.traverse;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.traverse
+ */
+ (function (traverse) {
+ /**
+ * @class away.traverse.CSSEntityCollector
+ */
+ var CSSEntityCollector = (function (_super) {
+ __extends(CSSEntityCollector, _super);
+ function CSSEntityCollector() {
+ _super.call(this);
+ }
+ return CSSEntityCollector;
+ })(away.traverse.CollectorBase);
+ traverse.CSSEntityCollector = CSSEntityCollector;
+ })(away.traverse || (away.traverse = {}));
+ var traverse = away.traverse;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.partition
+ */
+ (function (partition) {
+ /**
+ * @class away.partition.NodeBase
+ */
+ var NodeBase = (function () {
+ /**
+ *
+ */
+ function NodeBase() {
+ this._pNumChildNodes = 0;
+ this._iNumEntities = 0;
+ this._pChildNodes = new Array();
+ }
+ Object.defineProperty(NodeBase.prototype, "boundsVisible", {
/**
*
*/
get: function () {
- return this._localPos.x;
+ return this._explicitBoundsVisible;
},
set: function (value) {
- if (this.x == value)
+ if (this._explicitBoundsVisible == value)
return;
- this.updateGlobalPos();
+ this._explicitBoundsVisible = value;
+
+ this._iUpdateImplicitBoundsVisible(this._iParent ? this._iParent.boundsChildrenVisible : false);
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CSSDefaultRenderer.prototype, "y", {
- /**
- *
- */
+ Object.defineProperty(NodeBase.prototype, "boundsChildrenVisible", {
get: function () {
- return this._localPos.y;
+ return this._boundsChildrenVisible;
},
set: function (value) {
- if (this.y == value)
+ if (this._boundsChildrenVisible == value)
return;
- this._globalPos.y = this._localPos.y = value;
+ this._boundsChildrenVisible = value;
- this.updateGlobalPos();
+ for (var i = 0; i < this._pNumChildNodes; ++i)
+ this._pChildNodes[i]._iUpdateImplicitBoundsVisible(this._boundsChildrenVisible);
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CSSDefaultRenderer.prototype, "width", {
+ Object.defineProperty(NodeBase.prototype, "parent", {
/**
*
*/
get: function () {
- return this._width;
- },
- set: function (value) {
- if (this._width == value)
- return;
-
- this._width = value;
- this._scissorRect.width = value;
- this._viewPort.width = value;
-
- this._pBackBufferInvalid = true;
- this._depthTextureInvalid = true;
-
- this.notifyViewportUpdate();
- this.notifyScissorUpdate();
+ return this._iParent;
},
enumerable: true,
configurable: true
});
-
- Object.defineProperty(CSSDefaultRenderer.prototype, "height", {
+ Object.defineProperty(NodeBase.prototype, "_pNumEntities", {
/**
*
+ * @protected
*/
get: function () {
- return this._height;
- },
- set: function (value) {
- if (this._height == value)
- return;
-
- this._height = value;
- this._scissorRect.height = value;
- this._viewPort.height = value;
-
- this._pBackBufferInvalid = true;
- this._depthTextureInvalid = true;
-
- this.notifyViewportUpdate();
- this.notifyScissorUpdate();
+ return this._iNumEntities;
},
enumerable: true,
configurable: true
});
-
/**
*
- * @param entityCollector
- */
- CSSDefaultRenderer.prototype.render = function (entityCollector) {
- this._viewportDirty = false;
- this._scissorDirty = false;
-
- if (this._pBackBufferInvalid)
- this.pUpdateBackBuffer();
-
- this._iRender(entityCollector);
-
- this._pBackBufferInvalid = false;
- };
-
- /**
- * @inheritDoc
- */
- CSSDefaultRenderer.prototype.pDraw = function (entityCollector) {
- // if (entityCollector.skyBox) {
- // if (this._activeMaterial)
- // this._activeMaterial.iDeactivate(this._pStageGL);
- //
- // this._activeMaterial = null;
- //
- // this._pContext.setDepthTest(false, away.gl.ContextGLCompareMode.ALWAYS);
- // this.drawSkyBox(entityCollector);
- //
- // }
- //
- // var which:number = target? DefaultRenderer.SCREEN_PASSES : DefaultRenderer.ALL_PASSES;
- var sheet = document.styleSheets[document.styleSheets.length - 1];
-
- for (var i = 0; i < sheet.cssRules.length; i++) {
- var style = sheet.cssRules[i].style;
- style.transform = style["-webkit-transform"] = style["-moz-transform"] = style["-o-transform"] = style["-ms-transform"] = (entityCollector.camera.projection.coordinateSystem == away.projections.CoordinateSystem.RIGHT_HANDED) ? "" : "scale3d(1, -1, 1) translateY(-" + style.height + ")";
- }
-
- this.drawRenderables(this._renderableHead, entityCollector);
-
- // if (this._activeMaterial)
- // this._activeMaterial.iDeactivate(this._pStageGL);
- this._activeMaterial = null;
- };
-
- /**
- * Updates the backbuffer properties.
- */
- CSSDefaultRenderer.prototype.pUpdateBackBuffer = function () {
- this._container.style.width = this._width + "px";
- this._container.style.height = this._height + "px";
- this._container.style.clip = "rect(0px, " + this._width + "px, " + this._height + "px, 0px)";
-
- //update context matrix
- this._contextMatrix.rawData[0] = this._width / 2;
- this._contextMatrix.rawData[5] = -this._height / 2;
- this._contextMatrix.rawData[10] = -1; //fix for innaccurate z-sort
- this._contextMatrix.rawData[12] = this._width / 2;
- this._contextMatrix.rawData[13] = this._height / 2;
-
- //update context tranform
- this._contextStyle.transform = this._contextStyle["-webkit-transform"] = this._contextStyle["-moz-transform"] = this._contextStyle["-o-transform"] = this._contextStyle["-ms-transform"] = this._contextMatrix.toString();
-
- this._pBackBufferInvalid = false;
- };
-
- /**
- * Draw the skybox if present.
- * @param entityCollector The EntityCollector containing all potentially visible information.
+ * @param planes
+ * @param numPlanes
+ * @returns {boolean}
+ * @internal
*/
- CSSDefaultRenderer.prototype.drawSkyBox = function (entityCollector) {
- //TODO
+ NodeBase.prototype.isInFrustum = function (planes, numPlanes) {
+ return true;
};
/**
- * Draw a list of renderables.
- * @param renderables The renderables to draw.
- * @param entityCollector The EntityCollector containing all potentially visible information.
+ *
+ * @param rayPosition
+ * @param rayDirection
+ * @returns {boolean}
*/
- CSSDefaultRenderer.prototype.drawRenderables = function (item, entityCollector) {
- var viewProjection = entityCollector.camera.viewProjection.clone();
-
- while (item) {
- this._activeMaterial = item.materialOwner.material;
-
- //serialise transform and apply to html element
- this._transform.copyRawDataFrom(item.renderSceneTransform.rawData);
- this._transform.append(viewProjection);
-
- var style = item.htmlElement.style;
-
- style.transform = style["-webkit-transform"] = style["-moz-transform"] = style["-o-transform"] = style["-ms-transform"] = this._transform.toString();
-
- style.transformStyle = style["-webkit-transform-style"] = style["-moz-transform-style"] = style["-o-transform-style"] = style["-ms-transform-style"] = "preserve-3d";
-
- //check if child requires adding to the view
- if (!this._context.contains(item.htmlElement))
- this._context.appendChild(item.htmlElement);
-
- item = item.next;
- }
- // var numPasses:number;
- // var j:number;
- // var camera:away.entities.Camera = entityCollector.camera;
- // var item2:away.render.CSSRenderableBase;
- //
- // while (item) {
- // this._activeMaterial = item.material;
- //
- // this._activeMaterial.iUpdateMaterial(this._pContext);
- //
- // numPasses = this._activeMaterial._iNumPasses;
- //
- // j = 0;
- //
- // do {
- // item2 = item;
- //
- // var rttMask:number = this._activeMaterial.iPassRendersToTexture(j)? 1 : 2;
- //
- // if ((rttMask & which) != 0) {
- // this._activeMaterial.iActivatePass(j, this._pStageGL, camera);
- //
- // do {
- // this._activeMaterial.iRenderPass(j, item2, this._pStageGL, entityCollector);
- //
- // item2 = item2.next;
- //
- // } while (item2 && item2.material == this._activeMaterial);
- //
- // this._activeMaterial.iDeactivatePass(j, this._pStageGL);
- //
- // } else {
- // do {
- // item2 = item2.next;
- //
- // } while (item2 && item2.renderable.material == this._activeMaterial);
- // }
- // } while (++j < numPasses);
- //
- // item = item2;
- // }
- };
-
- CSSDefaultRenderer.prototype.dispose = function () {
- _super.prototype.dispose.call(this);
- //TODO
+ NodeBase.prototype.isIntersectingRay = function (rayPosition, rayDirection) {
+ return true;
};
/**
- * @private
+ *
+ * @returns {boolean}
*/
- CSSDefaultRenderer.prototype.notifyScissorUpdate = function () {
- if (this._scissorDirty)
- return;
-
- this._scissorDirty = true;
-
- if (!this._scissorUpdated)
- this._scissorUpdated = new away.events.RendererEvent(away.events.RendererEvent.SCISSOR_UPDATED);
+ NodeBase.prototype.isCastingShadow = function () {
+ return true;
+ };
- this.dispatchEvent(this._scissorUpdated);
+ /**
+ *
+ * @param entity
+ * @returns {away.partition.NodeBase}
+ */
+ NodeBase.prototype.findPartitionForEntity = function (entity) {
+ return this;
};
/**
- * @private
+ *
+ * @param traverser
*/
- CSSDefaultRenderer.prototype.notifyViewportUpdate = function () {
- if (this._viewportDirty)
+ NodeBase.prototype.acceptTraverser = function (traverser) {
+ if (this._pNumEntities == 0 && !this._implicitBoundsVisible)
return;
- this._viewportDirty = true;
+ if (traverser.enterNode(this)) {
+ var i = 0;
- if (!this._viewPortUpdated)
- this._viewPortUpdated = new away.events.RendererEvent(away.events.RendererEvent.VIEWPORT_UPDATED);
+ while (i < this._pNumChildNodes)
+ this._pChildNodes[i++].acceptTraverser(traverser);
- this.dispatchEvent(this._viewPortUpdated);
+ if (this._implicitBoundsVisible)
+ this._pBoundsPrimitive.partitionNode.acceptTraverser(traverser);
+ }
};
/**
*
+ * @protected
*/
- CSSDefaultRenderer.prototype.updateGlobalPos = function () {
- this._viewPort.x = this._globalPos.x;
- this._viewPort.y = this._globalPos.y;
-
- this.notifyViewportUpdate();
- this.notifyScissorUpdate();
- };
-
- CSSDefaultRenderer.prototype._iCreateEntityCollector = function () {
- return new away.traverse.CSSEntityCollector();
+ NodeBase.prototype._pCreateBoundsPrimitive = function () {
+ return null;
};
- return CSSDefaultRenderer;
- })(away.render.CSSRendererBase);
- render.CSSDefaultRenderer = CSSDefaultRenderer;
- })(away.render || (away.render = {}));
- var render = away.render;
-})(away || (away = {}));
-///
-///
-var away;
-(function (away) {
- /**
- * @module away.sort
- */
- (function (sort) {
- /**
- * @class away.sort.RenderableMergeSort
- */
- var RenderableMergeSort = (function () {
- function RenderableMergeSort() {
- }
- RenderableMergeSort.prototype.sortBlendedRenderables = function (head) {
- var headB;
- var fast;
- var slow;
-
- if (!head || !head.next) {
- return head;
- }
-
- // split in two sublists
- slow = head;
- fast = head.next;
-
- while (fast) {
- fast = fast.next;
- if (fast) {
- slow = slow.next;
- fast = fast.next;
- }
- }
-
- headB = slow.next;
- slow.next = null;
-
- // recurse
- head = this.sortBlendedRenderables(head);
- headB = this.sortBlendedRenderables(headB);
-
- // merge sublists while respecting order
- var result;
- var curr;
- var l;
-
- if (!head)
- return headB;
- if (!headB)
- return head;
-
- while (head && headB) {
- if (head.zIndex < headB.zIndex) {
- l = head;
- head = head.next;
- } else {
- l = headB;
- headB = headB.next;
- }
- if (!result)
- result = l;
- else
- curr.next = l;
+ /**
+ *
+ * @param node
+ * @internal
+ */
+ NodeBase.prototype.iAddNode = function (node) {
+ node._iParent = this;
+ this._iNumEntities += node._pNumEntities;
+ this._pChildNodes[this._pNumChildNodes++] = node;
- curr = l;
- }
+ node._iUpdateImplicitBoundsVisible(this.boundsChildrenVisible);
- if (head)
- curr.next = head;
- else if (headB)
- curr.next = headB;
+ var numEntities = node._pNumEntities;
+ node = this;
- return result;
+ do {
+ node._iNumEntities += numEntities;
+ } while((node = node._iParent) != null);
};
- RenderableMergeSort.prototype.sortOpaqueRenderables = function (head) {
- var headB;
- var fast, slow;
-
- if (!head || !head.next) {
- return head;
- }
-
- // split in two sublists
- slow = head;
- fast = head.next;
-
- while (fast) {
- fast = fast.next;
- if (fast) {
- slow = slow.next;
- fast = fast.next;
- }
- }
+ /**
+ *
+ * @param node
+ * @internal
+ */
+ NodeBase.prototype.iRemoveNode = function (node) {
+ var index = this._pChildNodes.indexOf(node);
+ this._pChildNodes[index] = this._pChildNodes[--this._pNumChildNodes];
+ this._pChildNodes.pop();
- headB = slow.next;
- slow.next = null;
+ node._iUpdateImplicitBoundsVisible(false);
- // recurse
- head = this.sortOpaqueRenderables(head);
- headB = this.sortOpaqueRenderables(headB);
+ var numEntities = node._pNumEntities;
+ node = this;
- // merge sublists while respecting order
- var result;
- var curr;
- var l;
- var cmp = 0;
+ do {
+ node._pNumEntities -= numEntities;
+ } while((node = node._iParent) != null);
+ };
- if (!head)
- return headB;
- if (!headB)
- return head;
+ NodeBase.prototype._iUpdateImplicitBoundsVisible = function (value) {
+ if (this._implicitBoundsVisible == this._explicitBoundsVisible || value)
+ return;
- while (head && headB && head != null && headB != null) {
- // first sort per render order id (reduces program3D switches),
- // then on material id (reduces setting props),
- // then on zIndex (reduces overdraw)
- var aid = head.renderOrderId;
- var bid = headB.renderOrderId;
+ this._implicitBoundsVisible = this._explicitBoundsVisible || value;
- if (aid == bid) {
- var ma = head.materialId;
- var mb = headB.materialId;
+ this._iUpdateEntityBounds();
- if (ma == mb) {
- if (head.zIndex < headB.zIndex)
- cmp = 1;
- else
- cmp = -1;
- } else if (ma > mb)
- cmp = 1;
- else
- cmp = -1;
- } else if (aid > bid)
- cmp = 1;
- else
- cmp = -1;
+ for (var i = 0; i < this._pNumChildNodes; ++i)
+ this._pChildNodes[i]._iUpdateImplicitBoundsVisible(this._boundsChildrenVisible);
+ };
- if (cmp < 0) {
- l = head;
- head = head.next;
- } else {
- l = headB;
- headB = headB.next;
- }
+ /**
+ * @internal
+ */
+ NodeBase.prototype._iIsBoundsVisible = function () {
+ return this._implicitBoundsVisible;
+ };
- if (!result) {
- result = l;
- curr = l;
- } else {
- curr.next = l;
- curr = l;
- }
+ // public _pUpdateNumEntities(value:number)
+ // {
+ // var diff:number = value - this._pNumEntities;
+ // var node:NodeBase = this;
+ //
+ // do {
+ // node._pNumEntities += diff;
+ // } while ((node = node._iParent) != null);
+ // }
+ NodeBase.prototype._iUpdateEntityBounds = function () {
+ if (this._pBoundsPrimitive) {
+ this._pBoundsPrimitive.dispose();
+ this._pBoundsPrimitive = null;
}
- if (head)
- curr.next = head;
- else if (headB)
- curr.next = headB;
-
- return result;
+ if (this._implicitBoundsVisible)
+ this._pBoundsPrimitive = this._pCreateBoundsPrimitive();
};
- return RenderableMergeSort;
+ return NodeBase;
})();
- sort.RenderableMergeSort = RenderableMergeSort;
- })(away.sort || (away.sort = {}));
- var sort = away.sort;
+ partition.NodeBase = NodeBase;
+ })(away.partition || (away.partition = {}));
+ var partition = away.partition;
})(away || (away = {}));
///
var away;
(function (away) {
- (function (gl) {
- var ContextGLClearMask = (function () {
- function ContextGLClearMask() {
+ /**
+ * @module away.partition
+ */
+ (function (partition) {
+ /**
+ * @class away.partition.NullNode
+ */
+ var NullNode = (function () {
+ function NullNode() {
}
- ContextGLClearMask.COLOR = 8 << 11;
- ContextGLClearMask.DEPTH = 8 << 5;
- ContextGLClearMask.STENCIL = 8 << 7;
- ContextGLClearMask.ALL = ContextGLClearMask.COLOR | ContextGLClearMask.DEPTH | ContextGLClearMask.STENCIL;
- return ContextGLClearMask;
+ return NullNode;
})();
- gl.ContextGLClearMask = ContextGLClearMask;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ partition.NullNode = NullNode;
+ })(away.partition || (away.partition = {}));
+ var partition = away.partition;
})(away || (away = {}));
///
var away;
(function (away) {
- (function (gl) {
- var VertexBuffer = (function () {
- function VertexBuffer(gl, numVertices, data32PerVertex) {
- this._gl = gl;
- this._buffer = this._gl.createBuffer();
- this._numVertices = numVertices;
- this._data32PerVertex = data32PerVertex;
+ /**
+ * @module away.partition
+ */
+ (function (partition) {
+ /**
+ * @class away.partition.Partition
+ */
+ var Partition = (function () {
+ function Partition(rootNode) {
+ this._updatesMade = false;
+ this._rootNode = rootNode || new away.partition.NullNode();
}
- VertexBuffer.prototype.uploadFromArray = function (vertices, startVertex, numVertices) {
- this._gl.bindBuffer(this._gl.ARRAY_BUFFER, this._buffer);
-
- //console.log( "** WARNING upload not fully implemented, startVertex & numVertices not considered." );
- // TODO add offsets , startVertex, numVertices * this._data32PerVertex
- this._gl.bufferData(this._gl.ARRAY_BUFFER, new Float32Array(vertices), this._gl.STATIC_DRAW);
- };
-
- Object.defineProperty(VertexBuffer.prototype, "numVertices", {
- get: function () {
- return this._numVertices;
- },
- enumerable: true,
- configurable: true
- });
-
- Object.defineProperty(VertexBuffer.prototype, "data32PerVertex", {
+ Object.defineProperty(Partition.prototype, "rootNode", {
get: function () {
- return this._data32PerVertex;
+ return this._rootNode;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(VertexBuffer.prototype, "glBuffer", {
- get: function () {
- return this._buffer;
- },
- enumerable: true,
- configurable: true
- });
+ Partition.prototype.traverse = function (traverser) {
+ if (this._updatesMade)
+ this.updateEntities();
- VertexBuffer.prototype.dispose = function () {
- this._gl.deleteBuffer(this._buffer);
+ this._rootNode.acceptTraverser(traverser);
};
- return VertexBuffer;
- })();
- gl.VertexBuffer = VertexBuffer;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- (function (gl) {
- var IndexBuffer = (function () {
- function IndexBuffer(gl, numIndices) {
- this._gl = gl;
- this._buffer = this._gl.createBuffer();
- this._numIndices = numIndices;
- }
- IndexBuffer.prototype.uploadFromArray = function (data, startOffset, count) {
- this._gl.bindBuffer(this._gl.ELEMENT_ARRAY_BUFFER, this._buffer);
- // TODO add index offsets
- this._gl.bufferData(this._gl.ELEMENT_ARRAY_BUFFER, new Uint16Array(data), this._gl.STATIC_DRAW);
+ Partition.prototype.iMarkForUpdate = function (entity) {
+ var node = entity.partitionNode;
+ var t = this._updateQueue;
+
+ while (t) {
+ if (node == t)
+ return;
+
+ t = t._iUpdateQueueNext;
+ }
+
+ node._iUpdateQueueNext = this._updateQueue;
+
+ this._updateQueue = node;
+ this._updatesMade = true;
};
- IndexBuffer.prototype.dispose = function () {
- this._gl.deleteBuffer(this._buffer);
+ Partition.prototype.iRemoveEntity = function (entity) {
+ var node = entity.partitionNode;
+ var t;
+
+ node.removeFromParent();
+
+ if (node == this._updateQueue) {
+ this._updateQueue = node._iUpdateQueueNext;
+ } else {
+ t = this._updateQueue;
+ while (t && t._iUpdateQueueNext != node)
+ t = t._iUpdateQueueNext;
+
+ if (t)
+ t._iUpdateQueueNext = node._iUpdateQueueNext;
+ }
+
+ node._iUpdateQueueNext = null;
+
+ if (!this._updateQueue)
+ this._updatesMade = false;
};
- Object.defineProperty(IndexBuffer.prototype, "numIndices", {
- get: function () {
- return this._numIndices;
- },
- enumerable: true,
- configurable: true
- });
+ Partition.prototype.updateEntities = function () {
+ var node = this._updateQueue;
+ var targetNode;
+ var t;
+ this._updateQueue = null;
+ this._updatesMade = false;
- Object.defineProperty(IndexBuffer.prototype, "glBuffer", {
- get: function () {
- return this._buffer;
- },
- enumerable: true,
- configurable: true
- });
- return IndexBuffer;
+ do {
+ targetNode = this._rootNode.findPartitionForEntity(node.entity);
+
+ if (node.parent != targetNode) {
+ if (node)
+ node.removeFromParent();
+
+ targetNode.iAddNode(node);
+ }
+
+ t = node._iUpdateQueueNext;
+ node._iUpdateQueueNext = null;
+
+ //required for controllers with autoUpdate set to true
+ node.entity._iInternalUpdate();
+ } while((node = t) != null);
+ };
+ return Partition;
})();
- gl.IndexBuffer = IndexBuffer;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ partition.Partition = Partition;
+ })(away.partition || (away.partition = {}));
+ var partition = away.partition;
})(away || (away = {}));
///
var away;
(function (away) {
- (function (gl) {
- var Program = (function () {
- function Program(gl) {
- this._gl = gl;
- this._program = this._gl.createProgram();
+ /**
+ * @module away.partition
+ */
+ (function (partition) {
+ /**
+ * @class away.partition.EntityNode
+ */
+ var EntityNode = (function (_super) {
+ __extends(EntityNode, _super);
+ function EntityNode(entity) {
+ _super.call(this);
+ this._entity = entity;
+ this._iNumEntities = 1;
}
- Program.prototype.upload = function (vertexProgram, fragmentProgram) {
- this._vertexShader = this._gl.createShader(this._gl.VERTEX_SHADER);
- this._fragmentShader = this._gl.createShader(this._gl.FRAGMENT_SHADER);
+ Object.defineProperty(EntityNode.prototype, "entity", {
+ get: function () {
+ return this._entity;
+ },
+ enumerable: true,
+ configurable: true
+ });
- this._gl.shaderSource(this._vertexShader, vertexProgram);
- this._gl.compileShader(this._vertexShader);
+ EntityNode.prototype.removeFromParent = function () {
+ if (this._iParent)
+ this._iParent.iRemoveNode(this);
- if (!this._gl.getShaderParameter(this._vertexShader, this._gl.COMPILE_STATUS)) {
- alert(this._gl.getShaderInfoLog(this._vertexShader));
- return null;
- }
+ this._iParent = null;
+ };
- this._gl.shaderSource(this._fragmentShader, fragmentProgram);
- this._gl.compileShader(this._fragmentShader);
+ /**
+ *
+ * @returns {boolean}
+ */
+ EntityNode.prototype.isCastingShadow = function () {
+ return this.entity.castsShadows;
+ };
- if (!this._gl.getShaderParameter(this._fragmentShader, this._gl.COMPILE_STATUS)) {
- alert(this._gl.getShaderInfoLog(this._fragmentShader));
- return null;
- }
+ /**
+ *
+ * @param planes
+ * @param numPlanes
+ * @returns {boolean}
+ */
+ EntityNode.prototype.isInFrustum = function (planes, numPlanes) {
+ if (!this._entity._iIsVisible())
+ return false;
- this._gl.attachShader(this._program, this._vertexShader);
- this._gl.attachShader(this._program, this._fragmentShader);
- this._gl.linkProgram(this._program);
+ return this._entity.worldBounds.isInFrustum(planes, numPlanes);
+ };
- if (!this._gl.getProgramParameter(this._program, this._gl.LINK_STATUS)) {
- alert("Could not link the program."); //TODO throw errors
- }
+ /**
+ * @inheritDoc
+ */
+ EntityNode.prototype.acceptTraverser = function (traverser) {
+ if (traverser.enterNode(this))
+ traverser.applyEntity(this._entity);
};
- Program.prototype.dispose = function () {
- this._gl.deleteProgram(this._program);
+ /**
+ * @inheritDoc
+ */
+ EntityNode.prototype.isIntersectingRay = function (rayPosition, rayDirection) {
+ if (!this._entity._iIsVisible())
+ return false;
+
+ return this._entity.isIntersectingRay(rayPosition, rayDirection);
};
- Program.prototype.focusProgram = function () {
- this._gl.useProgram(this._program);
+ /**
+ *
+ * @protected
+ */
+ EntityNode.prototype._pCreateBoundsPrimitive = function () {
+ return this._entity.bounds.boundingEntity;
};
-
- Object.defineProperty(Program.prototype, "glProgram", {
- get: function () {
- return this._program;
- },
- enumerable: true,
- configurable: true
- });
- return Program;
- })();
- gl.Program = Program;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ return EntityNode;
+ })(away.partition.NodeBase);
+ partition.EntityNode = EntityNode;
+ })(away.partition || (away.partition = {}));
+ var partition = away.partition;
})(away || (away = {}));
///
var away;
(function (away) {
- (function (gl) {
- var SamplerState = (function () {
- function SamplerState() {
- this.wrap = 0;
- this.filter = 0;
- this.mipfilter = 0;
+ /**
+ * @module away.partition
+ */
+ (function (partition) {
+ /**
+ * @class away.partition.CameraNode
+ */
+ var CameraNode = (function (_super) {
+ __extends(CameraNode, _super);
+ function CameraNode(camera) {
+ _super.call(this, camera);
}
- return SamplerState;
- })();
- gl.SamplerState = SamplerState;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ /**
+ * @inheritDoc
+ */
+ CameraNode.prototype.acceptTraverser = function (traverser) {
+ // todo: dead end for now, if it has a debug mesh, then sure accept that
+ };
+ return CameraNode;
+ })(away.partition.EntityNode);
+ partition.CameraNode = CameraNode;
+ })(away.partition || (away.partition = {}));
+ var partition = away.partition;
})(away || (away = {}));
+///
var away;
(function (away) {
- ///
- (function (gl) {
- var ContextGLTextureFormat = (function () {
- function ContextGLTextureFormat() {
+ /**
+ * @module away.partition
+ */
+ (function (partition) {
+ /**
+ * SkyboxNode is a space partitioning leaf node that contains a Skybox object.
+ *
+ * @class away.partition.SkyboxNode
+ */
+ var SkyboxNode = (function (_super) {
+ __extends(SkyboxNode, _super);
+ /**
+ * Creates a new SkyboxNode object.
+ * @param skyBox The Skybox to be contained in the node.
+ */
+ function SkyboxNode(skyBox) {
+ _super.call(this, skyBox);
+
+ this._skyBox = skyBox;
}
- ContextGLTextureFormat.BGRA = "bgra";
- ContextGLTextureFormat.BGRA_PACKED = "bgraPacked4444";
- ContextGLTextureFormat.BGR_PACKED = "bgrPacked565";
- ContextGLTextureFormat.COMPRESSED = "compressed";
- ContextGLTextureFormat.COMPRESSED_ALPHA = "compressedAlpha";
- return ContextGLTextureFormat;
- })();
- gl.ContextGLTextureFormat = ContextGLTextureFormat;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ /**
+ *
+ * @param planes
+ * @param numPlanes
+ * @returns {boolean}
+ */
+ SkyboxNode.prototype.isInFrustum = function (planes, numPlanes) {
+ if (!this._skyBox._iIsVisible)
+ return false;
+
+ //a skybox is always in view unless its visibility is set to false
+ return true;
+ };
+ return SkyboxNode;
+ })(away.partition.EntityNode);
+ partition.SkyboxNode = SkyboxNode;
+ })(away.partition || (away.partition = {}));
+ var partition = away.partition;
})(away || (away = {}));
///
+///
var away;
(function (away) {
- (function (gl) {
- var TextureBase = (function () {
- function TextureBase(gl) {
- this.textureType = "";
- this._gl = gl;
+ ///
+ /**
+ * @module away.pick
+ */
+ (function (pick) {
+ /**
+ * Value object for a picking collision returned by a picking collider. Created as unique objects on display objects
+ *
+ * @see away.base.DisplayObject#pickingCollisionVO
+ * @see away.core.pick.IPickingCollider
+ *
+ * @class away.pick.PickingCollisionVO
+ */
+ var PickingCollisionVO = (function () {
+ /**
+ * Creates a new PickingCollisionVO object.
+ *
+ * @param entity The entity to which this collision object belongs.
+ */
+ function PickingCollisionVO(displayObject) {
+ this.displayObject = displayObject;
}
- TextureBase.prototype.dispose = function () {
- throw "Abstract method must be overridden.";
- };
- return TextureBase;
+ return PickingCollisionVO;
})();
- gl.TextureBase = TextureBase;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ pick.PickingCollisionVO = PickingCollisionVO;
+ })(away.pick || (away.pick = {}));
+ var pick = away.pick;
})(away || (away = {}));
///
var away;
(function (away) {
- (function (gl) {
- var Texture = (function (_super) {
- __extends(Texture, _super);
- function Texture(gl, width, height) {
- _super.call(this, gl);
- this.textureType = "texture2d";
- this._width = width;
- this._height = height;
+ /**
+ * @module away.pick
+ */
+ (function (pick) {
+ /**
+ * Picks a 3d object from a view or scene by 3D raycast calculations.
+ * Performs an initial coarse boundary calculation to return a subset of entities whose bounding volumes intersect with the specified ray,
+ * then triggers an optional picking collider on individual entity objects to further determine the precise values of the picking ray collision.
+ *
+ * @class away.pick.RaycastPicker
+ */
+ var RaycastPicker = (function () {
+ /**
+ * Creates a new RaycastPicker object.
+ *
+ * @param findClosestCollision Determines whether the picker searches for the closest bounds collision along the ray,
+ * or simply returns the first collision encountered. Defaults to false.
+ */
+ function RaycastPicker(findClosestCollision) {
+ if (typeof findClosestCollision === "undefined") { findClosestCollision = false; }
+ this._ignoredEntities = [];
+ this._onlyMouseEnabled = true;
+ this._numEntities = 0;
+ this._raycastCollector = new away.traverse.RaycastCollector();
- this._glTexture = this._gl.createTexture();
+ this._findClosestCollision = findClosestCollision;
+ this._entities = new Array();
}
- Texture.prototype.dispose = function () {
- this._gl.deleteTexture(this._glTexture);
- };
-
- Object.defineProperty(Texture.prototype, "width", {
+ Object.defineProperty(RaycastPicker.prototype, "onlyMouseEnabled", {
+ /**
+ * @inheritDoc
+ */
get: function () {
- return this._width;
+ return this._onlyMouseEnabled;
},
- enumerable: true,
- configurable: true
- });
-
- Object.defineProperty(Texture.prototype, "height", {
- get: function () {
- return this._height;
+ set: function (value) {
+ this._onlyMouseEnabled = value;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(Texture.prototype, "frameBuffer", {
- get: function () {
- return this._frameBuffer;
- },
- enumerable: true,
- configurable: true
- });
- Texture.prototype.uploadFromHTMLImageElement = function (image, miplevel) {
- if (typeof miplevel === "undefined") { miplevel = 0; }
- this._gl.bindTexture(this._gl.TEXTURE_2D, this._glTexture);
+ /**
+ * @inheritDoc
+ */
+ RaycastPicker.prototype.getViewCollision = function (x, y, view) {
+ //update ray
+ var rayPosition = view.unproject(x, y, 0);
+ var rayDirection = view.unproject(x, y, 1).subtract(rayPosition);
- //this._gl.pixelStorei( this._gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this._gl.ZERO );
- this._gl.texImage2D(this._gl.TEXTURE_2D, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
- this._gl.bindTexture(this._gl.TEXTURE_2D, null);
+ return this.getSceneCollision(rayPosition, rayDirection, view.scene);
+ };
+
+ /**
+ * @inheritDoc
+ */
+ RaycastPicker.prototype.getSceneCollision = function (rayPosition, rayDirection, scene) {
+ //clear collector
+ this._raycastCollector.clear();
+
+ //setup ray vectors
+ this._raycastCollector.rayPosition = rayPosition;
+ this._raycastCollector.rayDirection = rayDirection;
+
+ // collect entities to test
+ scene.traversePartitions(this._raycastCollector);
+
+ this._numEntities = 0;
+ var node = this._raycastCollector.entityHead;
+ var entity;
+
+ while (node) {
+ if (!this.isIgnored(entity = node.entity))
+ this._entities[this._numEntities++] = entity;
+
+ node = node.next;
+ }
+
+ //early out if no collisions detected
+ if (!this._numEntities)
+ return null;
+
+ return this.getPickingCollisionVO(this._raycastCollector);
+ };
+
+ // public getEntityCollision(position:away.geom.Vector3D, direction:away.geom.Vector3D, entities:Array):PickingCollisionVO
+ // {
+ // this._numEntities = 0;
+ //
+ // var entity:away.entities.IEntity;
+ // var l:number = entities.length;
+ //
+ // for (var c:number = 0; c < l; c++) {
+ // entity = entities[c];
+ //
+ // if (entity.isIntersectingRay(position, direction))
+ // this._entities[this._numEntities++] = entity;
+ // }
+ //
+ // return this.getPickingCollisionVO(this._raycastCollector);
+ // }
+ RaycastPicker.prototype.setIgnoreList = function (entities) {
+ this._ignoredEntities = entities;
};
- Texture.prototype.uploadFromBitmapData = function (data, miplevel) {
- if (typeof miplevel === "undefined") { miplevel = 0; }
- this._gl.bindTexture(this._gl.TEXTURE_2D, this._glTexture);
+ RaycastPicker.prototype.isIgnored = function (entity) {
+ if (this._onlyMouseEnabled && !entity._iIsMouseEnabled())
+ return true;
- //this._gl.pixelStorei( this._gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, this._gl.ZERO );
- this._gl.texImage2D(this._gl.TEXTURE_2D, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
- this._gl.bindTexture(this._gl.TEXTURE_2D, null);
+ var len = this._ignoredEntities.length;
+ for (var i = 0; i < len; i++)
+ if (this._ignoredEntities[i] == entity)
+ return true;
+
+ return false;
};
- Texture.prototype.uploadCompressedTextureFromByteArray = function (data, byteArrayOffset /*uint*/ , async) {
- if (typeof async === "undefined") { async = false; }
- var ext = this._gl.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc");
- //this._gl.compressedTexImage2D(this._gl.TEXTURE_2D, 0, this)
+ RaycastPicker.prototype.sortOnNearT = function (entity1, entity2) {
+ return entity1._iPickingCollisionVO.rayEntryDistance > entity2._iPickingCollisionVO.rayEntryDistance ? 1 : -1;
};
- Object.defineProperty(Texture.prototype, "glTexture", {
- get: function () {
- return this._glTexture;
- },
- enumerable: true,
- configurable: true
- });
+ RaycastPicker.prototype.getPickingCollisionVO = function (collector) {
+ // trim before sorting
+ this._entities.length = this._numEntities;
- Texture.prototype.generateFromRenderBuffer = function (data) {
- this._frameBuffer = this._gl.createFramebuffer();
- this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, this._frameBuffer);
- this._frameBuffer.width = this._width;
- this._frameBuffer.height = this._height;
+ // Sort entities from closest to furthest.
+ this._entities = this._entities.sort(this.sortOnNearT); // TODO - test sort filter in JS
- this._gl.bindTexture(this._gl.TEXTURE_2D, this._glTexture);
+ // ---------------------------------------------------------------------
+ // Evaluate triangle collisions when needed.
+ // Replaces collision data provided by bounds collider with more precise data.
+ // ---------------------------------------------------------------------
+ var shortestCollisionDistance = Number.MAX_VALUE;
+ var bestCollisionVO;
+ var pickingCollisionVO;
+ var entity;
+ var i;
- //this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, this._gl.LINEAR);
- //this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, this._gl.LINEAR_MIPMAP_NEAREST);
- //this._gl.generateMipmap(this._gl.TEXTURE_2D);
- //this._gl.texImage2D( this._gl.TEXTURE_2D, 0, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData );
- this._gl.texImage2D(this._gl.TEXTURE_2D, 0, this._gl.RGBA, this._width, this._height, 0, this._gl.RGBA, this._gl.UNSIGNED_BYTE, null);
+ for (i = 0; i < this._numEntities; ++i) {
+ entity = this._entities[i];
+ pickingCollisionVO = entity._iPickingCollisionVO;
+ if (entity.pickingCollider) {
+ // If a collision exists, update the collision data and stop all checks.
+ if ((bestCollisionVO == null || pickingCollisionVO.rayEntryDistance < bestCollisionVO.rayEntryDistance) && entity._iTestCollision(shortestCollisionDistance, this._findClosestCollision)) {
+ shortestCollisionDistance = pickingCollisionVO.rayEntryDistance;
+ bestCollisionVO = pickingCollisionVO;
+ if (!this._findClosestCollision) {
+ this.updateLocalPosition(pickingCollisionVO);
+ return pickingCollisionVO;
+ }
+ }
+ } else if (bestCollisionVO == null || pickingCollisionVO.rayEntryDistance < bestCollisionVO.rayEntryDistance) {
+ // Note: a bounds collision with a ray origin inside its bounds is ONLY ever used
+ // to enable the detection of a corresponsding triangle collision.
+ // Therefore, bounds collisions with a ray origin inside its bounds can be ignored
+ // if it has been established that there is NO triangle collider to test
+ if (!pickingCollisionVO.rayOriginIsInsideBounds) {
+ this.updateLocalPosition(pickingCollisionVO);
+ return pickingCollisionVO;
+ }
+ }
+ }
- var renderBuffer = this._gl.createRenderbuffer();
- this._gl.bindRenderbuffer(this._gl.RENDERBUFFER, renderBuffer);
- this._gl.renderbufferStorage(this._gl.RENDERBUFFER, this._gl.DEPTH_COMPONENT16, this._width, this._height);
+ return bestCollisionVO;
+ };
- this._gl.framebufferTexture2D(this._gl.FRAMEBUFFER, this._gl.COLOR_ATTACHMENT0, this._gl.TEXTURE_2D, this._glTexture, 0);
- this._gl.framebufferRenderbuffer(this._gl.FRAMEBUFFER, this._gl.DEPTH_ATTACHMENT, this._gl.RENDERBUFFER, renderBuffer);
+ RaycastPicker.prototype.updateLocalPosition = function (pickingCollisionVO) {
+ var collisionPos = (pickingCollisionVO.localPosition == null) ? new away.geom.Vector3D() : pickingCollisionVO.localPosition;
- this._gl.bindTexture(this._gl.TEXTURE_2D, null);
- this._gl.bindRenderbuffer(this._gl.RENDERBUFFER, null);
- this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, null);
+ var rayDir = pickingCollisionVO.localRayDirection;
+ var rayPos = pickingCollisionVO.localRayPosition;
+ var t = pickingCollisionVO.rayEntryDistance;
+ collisionPos.x = rayPos.x + t * rayDir.x;
+ collisionPos.y = rayPos.y + t * rayDir.y;
+ collisionPos.z = rayPos.z + t * rayDir.z;
};
- Texture.prototype.generateMipmaps = function () {
- //this._gl.bindTexture( this._gl.TEXTURE_2D, this._glTexture );
- //this._gl.generateMipmap(this._gl.TEXTURE_2D);
- //this._gl.bindTexture( this._gl.TEXTURE_2D, null );
+ RaycastPicker.prototype.dispose = function () {
+ //TODO
};
- return Texture;
- })(away.gl.TextureBase);
- gl.Texture = Texture;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ return RaycastPicker;
+ })();
+ pick.RaycastPicker = RaycastPicker;
+ })(away.pick || (away.pick = {}));
+ var pick = away.pick;
})(away || (away = {}));
///
+///
var away;
(function (away) {
- (function (gl) {
- var CubeTexture = (function (_super) {
- __extends(CubeTexture, _super);
- function CubeTexture(gl, size) {
- _super.call(this, gl);
- this.textureType = "textureCube";
- this._size = size;
- this._texture = this._gl.createTexture();
- }
- CubeTexture.prototype.dispose = function () {
- this._gl.deleteTexture(this._texture);
- };
+ /**
+ * @module away.render
+ */
+ (function (render) {
+ /**
+ * RendererBase forms an abstract base class for classes that are used in the rendering pipeline to render the
+ * contents of a partition
+ *
+ * @class away.render.RendererBase
+ */
+ var CSSRendererBase = (function (_super) {
+ __extends(CSSRendererBase, _super);
+ /**
+ * Creates a new RendererBase object.
+ */
+ function CSSRendererBase(renderToTexture, forceSoftware, profile) {
+ if (typeof renderToTexture === "undefined") { renderToTexture = false; }
+ if (typeof forceSoftware === "undefined") { forceSoftware = false; }
+ if (typeof profile === "undefined") { profile = "baseline"; }
+ _super.call(this);
+ this._backgroundR = 0;
+ this._backgroundG = 0;
+ this._backgroundB = 0;
+ this._backgroundAlpha = 1;
+ this._shareContext = false;
+ this._pBackBufferInvalid = true;
+ this._depthTextureInvalid = true;
+ this._viewPort = new away.geom.Rectangle();
+ this._scissorRect = new away.geom.Rectangle();
+ this._localPos = new away.geom.Point();
+ this._globalPos = new away.geom.Point();
- CubeTexture.prototype.uploadFromHTMLImageElement = function (image, side, miplevel) {
- if (typeof miplevel === "undefined") { miplevel = 0; }
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
+ this._billboardRenderablePool = away.pool.RenderablePool.getPool(away.pool.CSSBillboardRenderable);
+ this._lineSegmentRenderablePool = away.pool.RenderablePool.getPool(away.pool.CSSLineSegmentRenderable);
- switch (side) {
- case 0:
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
+ this._viewPort = new away.geom.Rectangle();
- break;
- case 1:
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
- break;
- case 2:
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
- break;
- case 3:
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
- break;
- case 4:
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
- break;
- case 5:
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, image);
- break;
- default:
- throw "unknown side type";
- }
+ if (this._width == 0)
+ this.width = window.innerWidth;
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- };
+ if (this._height == 0)
+ this.height = window.innerHeight;
+ }
+ Object.defineProperty(CSSRendererBase.prototype, "viewPort", {
+ /**
+ * A viewPort rectangle equivalent of the StageGL size and position.
+ */
+ get: function () {
+ return this._viewPort;
+ },
+ enumerable: true,
+ configurable: true
+ });
- CubeTexture.prototype.uploadFromBitmapData = function (data, side, miplevel) {
- if (typeof miplevel === "undefined") { miplevel = 0; }
- switch (side) {
- case 0:
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- break;
- case 1:
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- break;
- case 2:
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- break;
- case 3:
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- break;
- case 4:
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- break;
- case 5:
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, this._texture);
- this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z, miplevel, this._gl.RGBA, this._gl.RGBA, this._gl.UNSIGNED_BYTE, data.imageData);
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- break;
- default:
- throw "unknown side type";
- }
- };
+ Object.defineProperty(CSSRendererBase.prototype, "scissorRect", {
+ /**
+ * A scissor rectangle equivalent of the view size and position.
+ */
+ get: function () {
+ return this._scissorRect;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(CSSRendererBase.prototype, "x", {
+ /**
+ *
+ */
+ get: function () {
+ return this._localPos.x;
+ },
+ set: function (value) {
+ if (this.x == value)
+ return;
+
+ this.updateGlobalPos();
+ },
+ enumerable: true,
+ configurable: true
+ });
- CubeTexture.prototype.uploadCompressedTextureFromByteArray = function (data, byteArrayOffset /*uint*/ , async) {
- if (typeof async === "undefined") { async = false; }
- };
- Object.defineProperty(CubeTexture.prototype, "size", {
+ Object.defineProperty(CSSRendererBase.prototype, "y", {
+ /**
+ *
+ */
get: function () {
- return this._size;
+ return this._localPos.y;
+ },
+ set: function (value) {
+ if (this.y == value)
+ return;
+
+ this._globalPos.y = this._localPos.y = value;
+
+ this.updateGlobalPos();
},
enumerable: true,
configurable: true
});
- Object.defineProperty(CubeTexture.prototype, "glTexture", {
+
+ Object.defineProperty(CSSRendererBase.prototype, "width", {
+ /**
+ *
+ */
get: function () {
- return this._texture;
+ return this._width;
+ },
+ set: function (value) {
+ if (this._width == value)
+ return;
+
+ this._width = value;
+ this._scissorRect.width = value;
+ this._viewPort.width = value;
+
+ this._pBackBufferInvalid = true;
+ this._depthTextureInvalid = true;
+
+ this.notifyViewportUpdate();
+ this.notifyScissorUpdate();
},
enumerable: true,
configurable: true
});
- return CubeTexture;
- })(away.gl.TextureBase);
- gl.CubeTexture = CubeTexture;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-var away;
-(function (away) {
- ///
- (function (gl) {
- var ContextGLTriangleFace = (function () {
- function ContextGLTriangleFace() {
- }
- ContextGLTriangleFace.BACK = "back";
- ContextGLTriangleFace.FRONT = "front";
- ContextGLTriangleFace.FRONT_AND_BACK = "frontAndBack";
- ContextGLTriangleFace.NONE = "none";
- return ContextGLTriangleFace;
- })();
- gl.ContextGLTriangleFace = ContextGLTriangleFace;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- (function (gl) {
- var ContextGLVertexBufferFormat = (function () {
- function ContextGLVertexBufferFormat() {
- }
- ContextGLVertexBufferFormat.BYTES_4 = "bytes4";
- ContextGLVertexBufferFormat.FLOAT_1 = "float1";
- ContextGLVertexBufferFormat.FLOAT_2 = "float2";
- ContextGLVertexBufferFormat.FLOAT_3 = "float3";
- ContextGLVertexBufferFormat.FLOAT_4 = "float4";
- return ContextGLVertexBufferFormat;
- })();
- gl.ContextGLVertexBufferFormat = ContextGLVertexBufferFormat;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- (function (gl) {
- var ContextGLProgramType = (function () {
- function ContextGLProgramType() {
- }
- ContextGLProgramType.FRAGMENT = "fragment";
- ContextGLProgramType.VERTEX = "vertex";
- return ContextGLProgramType;
- })();
- gl.ContextGLProgramType = ContextGLProgramType;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-var away;
-(function (away) {
- ///
- (function (gl) {
- var ContextGLBlendFactor = (function () {
- function ContextGLBlendFactor() {
- }
- ContextGLBlendFactor.DESTINATION_ALPHA = "destinationAlpha";
- ContextGLBlendFactor.DESTINATION_COLOR = "destinationColor";
- ContextGLBlendFactor.ONE = "one";
- ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA = "oneMinusDestinationAlpha";
- ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR = "oneMinusDestinationColor";
- ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA = "oneMinusSourceAlpha";
- ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR = "oneMinusSourceColor";
- ContextGLBlendFactor.SOURCE_ALPHA = "sourceAlpha";
- ContextGLBlendFactor.SOURCE_COLOR = "sourceColor";
- ContextGLBlendFactor.ZERO = "zero";
- return ContextGLBlendFactor;
- })();
- gl.ContextGLBlendFactor = ContextGLBlendFactor;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-var away;
-(function (away) {
- ///
- (function (gl) {
- var ContextGLCompareMode = (function () {
- function ContextGLCompareMode() {
- }
- ContextGLCompareMode.ALWAYS = "always";
- ContextGLCompareMode.EQUAL = "equal";
- ContextGLCompareMode.GREATER = "greater";
- ContextGLCompareMode.GREATER_EQUAL = "greaterEqual";
- ContextGLCompareMode.LESS = "less";
- ContextGLCompareMode.LESS_EQUAL = "lessEqual";
- ContextGLCompareMode.NEVER = "never";
- ContextGLCompareMode.NOT_EQUAL = "notEqual";
- return ContextGLCompareMode;
- })();
- gl.ContextGLCompareMode = ContextGLCompareMode;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-var away;
-(function (away) {
- ///
- (function (gl) {
- var ContextGLMipFilter = (function () {
- function ContextGLMipFilter() {
- }
- ContextGLMipFilter.MIPLINEAR = "miplinear";
- ContextGLMipFilter.MIPNEAREST = "mipnearest";
- ContextGLMipFilter.MIPNONE = "mipnone";
- return ContextGLMipFilter;
- })();
- gl.ContextGLMipFilter = ContextGLMipFilter;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-var away;
-(function (away) {
- ///
- (function (gl) {
- var ContextGLProfile = (function () {
- function ContextGLProfile() {
- }
- ContextGLProfile.BASELINE = "baseline";
- ContextGLProfile.BASELINE_CONSTRAINED = "baselineConstrained";
- ContextGLProfile.BASELINE_EXTENDED = "baselineExtended";
- return ContextGLProfile;
- })();
- gl.ContextGLProfile = ContextGLProfile;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-var away;
-(function (away) {
- ///
- (function (gl) {
- var ContextGLStencilAction = (function () {
- function ContextGLStencilAction() {
- }
- ContextGLStencilAction.DECREMENT_SATURATE = "decrementSaturate";
- ContextGLStencilAction.DECREMENT_WRAP = "decrementWrap";
- ContextGLStencilAction.INCREMENT_SATURATE = "incrementSaturate";
- ContextGLStencilAction.INCREMENT_WRAP = "incrementWrap";
- ContextGLStencilAction.INVERT = "invert";
- ContextGLStencilAction.KEEP = "keep";
- ContextGLStencilAction.SET = "set";
- ContextGLStencilAction.ZERO = "zero";
- return ContextGLStencilAction;
- })();
- gl.ContextGLStencilAction = ContextGLStencilAction;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-var away;
-(function (away) {
- ///
- (function (gl) {
- var ContextGLTextureFilter = (function () {
- function ContextGLTextureFilter() {
- }
- ContextGLTextureFilter.LINEAR = "linear";
- ContextGLTextureFilter.NEAREST = "nearest";
- return ContextGLTextureFilter;
- })();
- gl.ContextGLTextureFilter = ContextGLTextureFilter;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- (function (gl) {
- var ContextGLWrapMode = (function () {
- function ContextGLWrapMode() {
- }
- ContextGLWrapMode.CLAMP = "clamp";
- ContextGLWrapMode.REPEAT = "repeat";
- return ContextGLWrapMode;
- })();
- gl.ContextGLWrapMode = ContextGLWrapMode;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- (function (gl) {
- var ContextGL = (function () {
- function ContextGL(canvas) {
- this._currentWrap = 0;
- this._currentFilter = 0;
- this._currentMipFilter = 0;
- this._indexBufferList = [];
- this._vertexBufferList = [];
- this._textureList = [];
- this._programList = [];
- this._samplerStates = [];
- try {
- this._gl = canvas.getContext("experimental-webgl", { premultipliedAlpha: false, alpha: false });
- if (!this._gl) {
- this._gl = canvas.getContext("webgl", { premultipliedAlpha: false, alpha: false });
- }
- } catch (e) {
- //this.dispatchEvent( new away.events.AwayEvent( away.events.AwayEvent.INITIALIZE_FAILED, e ) );
- }
- if (this._gl) {
- //this.dispatchEvent( new away.events.AwayEvent( away.events.AwayEvent.INITIALIZE_SUCCESS ) );
- } else {
- //this.dispatchEvent( new away.events.AwayEvent( away.events.AwayEvent.INITIALIZE_FAILED, e ) );
- alert("WebGL is not available.");
- }
- for (var i = 0; i < ContextGL.MAX_SAMPLERS; ++i) {
- this._samplerStates[i] = new away.gl.SamplerState();
- this._samplerStates[i].wrap = this._gl.REPEAT;
- this._samplerStates[i].filter = this._gl.LINEAR;
- this._samplerStates[i].mipfilter = 0;
+ Object.defineProperty(CSSRendererBase.prototype, "height", {
+ /**
+ *
+ */
+ get: function () {
+ return this._height;
+ },
+ set: function (value) {
+ if (this._height == value)
+ return;
+
+ this._height = value;
+ this._scissorRect.height = value;
+ this._viewPort.height = value;
+
+ this._pBackBufferInvalid = true;
+ this._depthTextureInvalid = true;
+
+ this.notifyViewportUpdate();
+ this.notifyScissorUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundR", {
+ /**
+ * The background color's red component, used when clearing.
+ *
+ * @private
+ */
+ get: function () {
+ return this._backgroundR;
+ },
+ set: function (value) {
+ if (this._backgroundR == value)
+ return;
+
+ this._backgroundR = value;
+
+ this._pBackBufferInvalid = true;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundG", {
+ /**
+ * The background color's green component, used when clearing.
+ *
+ * @private
+ */
+ get: function () {
+ return this._backgroundG;
+ },
+ set: function (value) {
+ if (this._backgroundG == value)
+ return;
+
+ this._backgroundG = value;
+
+ this._pBackBufferInvalid = true;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundB", {
+ /**
+ * The background color's blue component, used when clearing.
+ *
+ * @private
+ */
+ get: function () {
+ return this._backgroundB;
+ },
+ set: function (value) {
+ if (this._backgroundB == value)
+ return;
+
+ this._backgroundB = value;
+
+ this._pBackBufferInvalid = true;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(CSSRendererBase.prototype, "shareContext", {
+ get: function () {
+ return this._shareContext;
+ },
+ set: function (value) {
+ if (this._shareContext == value)
+ return;
+
+ this._shareContext = value;
+
+ this.updateGlobalPos();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ /**
+ * Disposes the resources used by the RendererBase.
+ */
+ CSSRendererBase.prototype.dispose = function () {
+ /*
+ if (_backgroundImageRenderer) {
+ _backgroundImageRenderer.dispose();
+ _backgroundImageRenderer = null;
}
- }
- ContextGL.prototype.gl = function () {
- return this._gl;
+ */
};
- ContextGL.prototype.clear = function (red, green, blue, alpha, depth, stencil, mask) {
- if (typeof red === "undefined") { red = 0; }
- if (typeof green === "undefined") { green = 0; }
- if (typeof blue === "undefined") { blue = 0; }
- if (typeof alpha === "undefined") { alpha = 1; }
- if (typeof depth === "undefined") { depth = 1; }
- if (typeof stencil === "undefined") { stencil = 0; }
- if (typeof mask === "undefined") { mask = away.gl.ContextGLClearMask.ALL; }
- if (!this._drawing) {
- this.updateBlendStatus();
- this._drawing = true;
- }
- this._gl.clearColor(red, green, blue, alpha);
- this._gl.clearDepth(depth);
- this._gl.clearStencil(stencil);
- this._gl.clear(mask);
+ CSSRendererBase.prototype.render = function (entityCollector) {
+ this._viewportDirty = false;
+ this._scissorDirty = false;
};
- ContextGL.prototype.configureBackBuffer = function (width, height, antiAlias, enableDepthAndStencil) {
- if (typeof enableDepthAndStencil === "undefined") { enableDepthAndStencil = true; }
- if (enableDepthAndStencil) {
- this._gl.enable(this._gl.STENCIL_TEST);
- this._gl.enable(this._gl.DEPTH_TEST);
+ /**
+ * Renders the potentially visible geometry to the back buffer or texture.
+ * @param entityCollector The EntityCollector object containing the potentially visible geometry.
+ * @param scissorRect
+ */
+ CSSRendererBase.prototype._iRender = function (entityCollector, scissorRect) {
+ if (typeof scissorRect === "undefined") { scissorRect = null; }
+ if (!entityCollector.entityHead)
+ return;
+
+ this.pExecuteRender(entityCollector, scissorRect);
+ };
+
+ CSSRendererBase.prototype.pCollectRenderables = function (entityCollector) {
+ //reset head values
+ this._renderableHead = null;
+
+ //grab entity head
+ var item = entityCollector.entityHead;
+
+ //set temp values for entry point and camera forward vector
+ this._pCamera = entityCollector.camera;
+ this._iEntryPoint = this._pCamera.scenePosition;
+ this._pCameraForward = this._pCamera.transform.forwardVector;
+
+ while (item) {
+ item.entity._iCollectRenderables(this);
+ item = item.next;
}
+ };
- this._gl.viewport['width'] = width;
- this._gl.viewport['height'] = height;
+ /**
+ * Renders the potentially visible geometry to the back buffer or texture. Only executed if everything is set up.
+ * @param entityCollector The EntityCollector object containing the potentially visible geometry.
+ * @param scissorRect
+ */
+ CSSRendererBase.prototype.pExecuteRender = function (entityCollector, scissorRect) {
+ if (typeof scissorRect === "undefined") { scissorRect = null; }
+ this.pCollectRenderables(entityCollector);
- this._gl.viewport(0, 0, width, height);
+ this.pDraw(entityCollector);
};
- ContextGL.prototype.createCubeTexture = function (size, format, optimizeForRenderToTexture, streamingLevels) {
- if (typeof streamingLevels === "undefined") { streamingLevels = 0; }
- var texture = new away.gl.CubeTexture(this._gl, size);
- this._textureList.push(texture);
- return texture;
+ /**
+ * Performs the actual drawing of dom objects to the target.
+ *
+ * @param entityCollector The EntityCollector object containing the potentially visible dom objects.
+ */
+ CSSRendererBase.prototype.pDraw = function (entityCollector) {
+ throw new away.errors.AbstractMethodError();
};
- ContextGL.prototype.createIndexBuffer = function (numIndices) {
- var indexBuffer = new away.gl.IndexBuffer(this._gl, numIndices);
- this._indexBufferList.push(indexBuffer);
- return indexBuffer;
+ Object.defineProperty(CSSRendererBase.prototype, "_iBackgroundAlpha", {
+ get: function () {
+ return this._backgroundAlpha;
+ },
+ set: function (value) {
+ if (this._backgroundAlpha == value)
+ return;
+
+ this._backgroundAlpha = value;
+
+ this._pBackBufferInvalid = true;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ /**
+ *
+ * @param billboard
+ */
+ CSSRendererBase.prototype.applyBillboard = function (billboard) {
+ this._applyRenderable(this._billboardRenderablePool.getItem(billboard));
};
- ContextGL.prototype.createProgram = function () {
- var program = new away.gl.Program(this._gl);
- this._programList.push(program);
- return program;
+ /**
+ *
+ * @param lineSubMesh
+ */
+ CSSRendererBase.prototype.applyLineSubMesh = function (lineSubMesh) {
+ //this._applyRenderable( this._billboardRenderablePool.getItem(lineSegment));
};
- ContextGL.prototype.createTexture = function (width, height, format, optimizeForRenderToTexture, streamingLevels) {
- if (typeof streamingLevels === "undefined") { streamingLevels = 0; }
- //TODO streaming
- var texture = new away.gl.Texture(this._gl, width, height);
- this._textureList.push(texture);
- return texture;
+ /**
+ *
+ * @param skybox
+ */
+ CSSRendererBase.prototype.applySkybox = function (skybox) {
};
- ContextGL.prototype.createVertexBuffer = function (numVertices, data32PerVertex) {
- var vertexBuffer = new away.gl.VertexBuffer(this._gl, numVertices, data32PerVertex);
- this._vertexBufferList.push(vertexBuffer);
- return vertexBuffer;
+ /**
+ *
+ * @param triangleSubMesh
+ */
+ CSSRendererBase.prototype.applyTriangleSubMesh = function (triangleSubMesh) {
};
- ContextGL.prototype.dispose = function () {
- var i;
- for (i = 0; i < this._indexBufferList.length; ++i)
- this._indexBufferList[i].dispose();
+ /**
+ *
+ * @param renderable
+ * @private
+ */
+ CSSRendererBase.prototype._applyRenderable = function (renderable) {
+ var material = renderable.materialOwner.material;
+ var entity = renderable.sourceEntity;
+ var position = entity.scenePosition;
- this._indexBufferList = null;
+ if (material) {
+ //set ids for faster referencing
+ renderable.materialId = material._iMaterialId;
+ renderable.renderOrderId = material._iRenderOrderId;
+ renderable.cascaded = false;
- for (i = 0; i < this._vertexBufferList.length; ++i)
- this._vertexBufferList[i].dispose();
+ // project onto camera's z-axis
+ position = this._iEntryPoint.subtract(position);
+ renderable.zIndex = entity.zOffset - position.dotProduct(this._pCameraForward);
- this._vertexBufferList = null;
+ //store reference to scene transform
+ renderable.renderSceneTransform = renderable.sourceEntity.getRenderSceneTransform(this._pCamera);
- for (i = 0; i < this._textureList.length; ++i)
- this._textureList[i].dispose();
+ //store reference to next item in list
+ renderable.next = this._renderableHead;
+ this._renderableHead = renderable;
+ }
+ };
- this._textureList = null;
+ /**
+ * @private
+ */
+ CSSRendererBase.prototype.notifyScissorUpdate = function () {
+ if (this._scissorDirty)
+ return;
- for (i = 0; i < this._programList.length; ++i)
- this._programList[i].dispose();
+ this._scissorDirty = true;
- for (i = 0; i < this._samplerStates.length; ++i)
- this._samplerStates[i] = null;
+ if (!this._scissorUpdated)
+ this._scissorUpdated = new away.events.RendererEvent(away.events.RendererEvent.SCISSOR_UPDATED);
- this._programList = null;
+ this.dispatchEvent(this._scissorUpdated);
};
- ContextGL.prototype.drawToBitmapData = function (destination) {
- var arrayBuffer = new ArrayBuffer(destination.width * destination.height * 4);
+ /**
+ * @private
+ */
+ CSSRendererBase.prototype.notifyViewportUpdate = function () {
+ if (this._viewportDirty)
+ return;
- this._gl.readPixels(0, 0, destination.width, destination.height, this._gl.RGBA, this._gl.UNSIGNED_BYTE, new Uint8Array(arrayBuffer));
+ this._viewportDirty = true;
- var byteArray = new away.utils.ByteArray();
- byteArray.setArrayBuffer(arrayBuffer);
+ if (!this._viewPortUpdated)
+ this._viewPortUpdated = new away.events.RendererEvent(away.events.RendererEvent.VIEWPORT_UPDATED);
- destination.setPixels(new away.geom.Rectangle(0, 0, destination.width, destination.height), byteArray);
+ this.dispatchEvent(this._viewPortUpdated);
};
- ContextGL.prototype.drawTriangles = function (indexBuffer, firstIndex, numTriangles) {
- if (typeof firstIndex === "undefined") { firstIndex = 0; }
- if (typeof numTriangles === "undefined") { numTriangles = -1; }
- if (!this._drawing)
- throw "Need to clear before drawing if the buffer has not been cleared since the last present() call.";
+ /**
+ *
+ */
+ CSSRendererBase.prototype.updateGlobalPos = function () {
+ this._viewPort.x = this._globalPos.x;
+ this._viewPort.y = this._globalPos.y;
- this._gl.bindBuffer(this._gl.ELEMENT_ARRAY_BUFFER, indexBuffer.glBuffer);
- this._gl.drawElements(this._gl.TRIANGLES, (numTriangles == -1) ? indexBuffer.numIndices : numTriangles * 3, this._gl.UNSIGNED_SHORT, firstIndex);
+ this.notifyViewportUpdate();
+ this.notifyScissorUpdate();
};
- ContextGL.prototype.present = function () {
- this._drawing = false;
- //this._gl.useProgram( null );
+ CSSRendererBase.prototype._iCreateEntityCollector = function () {
+ throw new away.errors.AbstractMethodError();
};
+ return CSSRendererBase;
+ })(away.events.EventDispatcher);
+ render.CSSRendererBase = CSSRendererBase;
+ })(away.render || (away.render = {}));
+ var render = away.render;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * @module away.render
+ */
+ (function (render) {
+ /**
+ * The DefaultRenderer class provides the default rendering method. It renders the scene graph objects using the
+ * materials assigned to them.
+ *
+ * @class away.render.DefaultRenderer
+ */
+ var CSSDefaultRenderer = (function (_super) {
+ __extends(CSSDefaultRenderer, _super);
+ /**
+ * Creates a new CSSDefaultRenderer object.
+ */
+ function CSSDefaultRenderer() {
+ _super.call(this);
+ this._contextMatrix = new away.geom.Matrix3D();
+ this._skyboxProjection = new away.geom.Matrix3D();
+ this._transform = new away.geom.Matrix3D();
- ContextGL.prototype.setBlendFactors = function (sourceFactor, destinationFactor) {
- this._blendEnabled = true;
-
- switch (sourceFactor) {
- case away.gl.ContextGLBlendFactor.ONE:
- this._blendSourceFactor = this._gl.ONE;
- break;
- case away.gl.ContextGLBlendFactor.DESTINATION_ALPHA:
- this._blendSourceFactor = this._gl.DST_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.DESTINATION_COLOR:
- this._blendSourceFactor = this._gl.DST_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.ONE:
- this._blendSourceFactor = this._gl.ONE;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA:
- this._blendSourceFactor = this._gl.ONE_MINUS_DST_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR:
- this._blendSourceFactor = this._gl.ONE_MINUS_DST_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA:
- this._blendSourceFactor = this._gl.ONE_MINUS_SRC_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR:
- this._blendSourceFactor = this._gl.ONE_MINUS_SRC_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.SOURCE_ALPHA:
- this._blendSourceFactor = this._gl.SRC_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.SOURCE_COLOR:
- this._blendSourceFactor = this._gl.SRC_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.ZERO:
- this._blendSourceFactor = this._gl.ZERO;
- break;
- default:
- throw "Unknown blend source factor";
- break;
- }
-
- switch (destinationFactor) {
- case away.gl.ContextGLBlendFactor.ONE:
- this._blendDestinationFactor = this._gl.ONE;
- break;
- case away.gl.ContextGLBlendFactor.DESTINATION_ALPHA:
- this._blendDestinationFactor = this._gl.DST_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.DESTINATION_COLOR:
- this._blendDestinationFactor = this._gl.DST_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.ONE:
- this._blendDestinationFactor = this._gl.ONE;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA:
- this._blendDestinationFactor = this._gl.ONE_MINUS_DST_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR:
- this._blendDestinationFactor = this._gl.ONE_MINUS_DST_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA:
- this._blendDestinationFactor = this._gl.ONE_MINUS_SRC_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR:
- this._blendDestinationFactor = this._gl.ONE_MINUS_SRC_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.SOURCE_ALPHA:
- this._blendDestinationFactor = this._gl.SRC_ALPHA;
- break;
- case away.gl.ContextGLBlendFactor.SOURCE_COLOR:
- this._blendDestinationFactor = this._gl.SRC_COLOR;
- break;
- case away.gl.ContextGLBlendFactor.ZERO:
- this._blendDestinationFactor = this._gl.ZERO;
- break;
- default:
- throw "Unknown blend destination factor";
- break;
- }
-
- this.updateBlendStatus();
- };
+ //create container for the renderer
+ this._container = document.createElement("div");
+ this._container.style.overflow = "hidden";
+ this._container.style.position = "absolute";
- ContextGL.prototype.setColorMask = function (red, green, blue, alpha) {
- this._gl.colorMask(red, green, blue, alpha);
- };
+ //add container to body
+ document.body.appendChild(this._container);
- ContextGL.prototype.setCulling = function (triangleFaceToCull, coordinateSystem) {
- if (typeof coordinateSystem === "undefined") { coordinateSystem = "leftHanded"; }
- if (triangleFaceToCull == away.gl.ContextGLTriangleFace.NONE) {
- this._gl.disable(this._gl.CULL_FACE);
- } else {
- this._gl.enable(this._gl.CULL_FACE);
- switch (triangleFaceToCull) {
- case away.gl.ContextGLTriangleFace.BACK:
- this._gl.cullFace((coordinateSystem == "leftHanded") ? this._gl.FRONT : this._gl.BACK);
- break;
- case away.gl.ContextGLTriangleFace.FRONT:
- this._gl.cullFace((coordinateSystem == "leftHanded") ? this._gl.BACK : this._gl.FRONT);
- break;
- case away.gl.ContextGLTriangleFace.FRONT_AND_BACK:
- this._gl.cullFace(this._gl.FRONT_AND_BACK);
- break;
- default:
- throw "Unknown ContextGLTriangleFace type.";
- }
- }
- };
+ //create conxtext for the renderer
+ this._context = document.createElement("div");
+ this._contextStyle = this._context.style;
+ this._contextStyle.position = "absolute";
+ this._contextStyle.transformStyle = this._contextStyle["-webkit-transform-style"] = this._contextStyle["-moz-transform-style"] = this._contextStyle["-o-transform-style"] = this._contextStyle["-ms-transform-style"] = "preserve-3d";
+ this._contextStyle.transformOrigin = this._contextStyle["-webkit-transform-origin"] = this._contextStyle["-moz-transform-origin"] = this._contextStyle["-o-transform-origin"] = this._contextStyle["-ms-transform-origin"] = "0% 0%";
- // TODO ContextGLCompareMode
- ContextGL.prototype.setDepthTest = function (depthMask, passCompareMode) {
- switch (passCompareMode) {
- case away.gl.ContextGLCompareMode.ALWAYS:
- this._gl.depthFunc(this._gl.ALWAYS);
- break;
- case away.gl.ContextGLCompareMode.EQUAL:
- this._gl.depthFunc(this._gl.EQUAL);
- break;
- case away.gl.ContextGLCompareMode.GREATER:
- this._gl.depthFunc(this._gl.GREATER);
- break;
- case away.gl.ContextGLCompareMode.GREATER_EQUAL:
- this._gl.depthFunc(this._gl.GEQUAL);
- break;
- case away.gl.ContextGLCompareMode.LESS:
- this._gl.depthFunc(this._gl.LESS);
- break;
- case away.gl.ContextGLCompareMode.LESS_EQUAL:
- this._gl.depthFunc(this._gl.LEQUAL);
- break;
- case away.gl.ContextGLCompareMode.NEVER:
- this._gl.depthFunc(this._gl.NEVER);
- break;
- case away.gl.ContextGLCompareMode.NOT_EQUAL:
- this._gl.depthFunc(this._gl.NOTEQUAL);
- break;
- default:
- throw "Unknown ContextGLCompareMode type.";
- break;
- }
- this._gl.depthMask(depthMask);
- };
+ //add context to container
+ this._container.appendChild(this._context);
+ }
+ /**
+ *
+ * @param entityCollector
+ */
+ CSSDefaultRenderer.prototype.render = function (entityCollector) {
+ _super.prototype.render.call(this, entityCollector);
- ContextGL.prototype.setProgram = function (program) {
- //TODO decide on construction/reference resposibilities
- this._currentProgram = program;
- program.focusProgram();
+ if (this._pBackBufferInvalid)
+ this.pUpdateBackBuffer();
+
+ this._iRender(entityCollector);
+
+ this._pBackBufferInvalid = false;
};
- ContextGL.prototype.getUniformLocationNameFromAgalRegisterIndex = function (programType, firstRegister) {
- switch (programType) {
- case away.gl.ContextGLProgramType.VERTEX:
- return "vc";
- break;
- case away.gl.ContextGLProgramType.FRAGMENT:
- return "fc";
- break;
- default:
- throw "Program Type " + programType + " not supported";
+ /**
+ * @inheritDoc
+ */
+ CSSDefaultRenderer.prototype.pDraw = function (entityCollector) {
+ // if (entityCollector.skyBox) {
+ // if (this._activeMaterial)
+ // this._activeMaterial.iDeactivate(this._pStageGL);
+ //
+ // this._activeMaterial = null;
+ //
+ // this._pContext.setDepthTest(false, away.gl.ContextGLCompareMode.ALWAYS);
+ // this.drawSkyBox(entityCollector);
+ //
+ // }
+ //
+ // var which:number = target? DefaultRenderer.SCREEN_PASSES : DefaultRenderer.ALL_PASSES;
+ var sheet = document.styleSheets[document.styleSheets.length - 1];
+
+ for (var i = 0; i < sheet.cssRules.length; i++) {
+ var style = sheet.cssRules[i].style;
+ style.transform = style["-webkit-transform"] = style["-moz-transform"] = style["-o-transform"] = style["-ms-transform"] = (entityCollector.camera.projection.coordinateSystem == away.projections.CoordinateSystem.RIGHT_HANDED) ? "" : "scale3d(1, -1, 1) translateY(-" + style.height + ")";
}
+
+ this.drawRenderables(this._renderableHead, entityCollector);
+
+ // if (this._activeMaterial)
+ // this._activeMaterial.iDeactivate(this._pStageGL);
+ this._activeMaterial = null;
};
- /*
- public setProgramConstantsFromByteArray
+ /**
+ * Updates the backbuffer properties.
*/
- ContextGL.prototype.setProgramConstantsFromMatrix = function (programType, firstRegister, matrix, transposedMatrix) {
- if (typeof transposedMatrix === "undefined") { transposedMatrix = false; }
- var locationName = this.getUniformLocationNameFromAgalRegisterIndex(programType, firstRegister);
- this.setGLSLProgramConstantsFromMatrix(locationName, matrix, transposedMatrix);
- };
+ CSSDefaultRenderer.prototype.pUpdateBackBuffer = function () {
+ this._container.style.width = this._width + "px";
+ this._container.style.height = this._height + "px";
+ this._container.style.clip = "rect(0px, " + this._width + "px, " + this._height + "px, 0px)";
- ContextGL.prototype.setProgramConstantsFromArray = function (programType, firstRegister, data, numRegisters) {
- if (typeof numRegisters === "undefined") { numRegisters = -1; }
- for (var i = 0; i < numRegisters; ++i) {
- var currentIndex = i * 4;
- var locationName = this.getUniformLocationNameFromAgalRegisterIndex(programType, firstRegister + i) + (i + firstRegister);
+ //update context matrix
+ this._contextMatrix.rawData[0] = this._width / 2;
+ this._contextMatrix.rawData[5] = -this._height / 2;
+ this._contextMatrix.rawData[10] = -1; //fix for innaccurate z-sort
+ this._contextMatrix.rawData[12] = this._width / 2;
+ this._contextMatrix.rawData[13] = this._height / 2;
- this.setGLSLProgramConstantsFromArray(locationName, data, currentIndex);
- }
+ //update context tranform
+ this._contextStyle.transform = this._contextStyle["-webkit-transform"] = this._contextStyle["-moz-transform"] = this._contextStyle["-o-transform"] = this._contextStyle["-ms-transform"] = this._contextMatrix.toString();
+
+ this._pBackBufferInvalid = false;
};
- /*
- public setGLSLProgramConstantsFromByteArray
-
+ /**
+ * Draw the skybox if present.
+ * @param entityCollector The EntityCollector containing all potentially visible information.
*/
- ContextGL.prototype.setGLSLProgramConstantsFromMatrix = function (locationName, matrix, transposedMatrix) {
- if (typeof transposedMatrix === "undefined") { transposedMatrix = false; }
- var location = this._gl.getUniformLocation(this._currentProgram.glProgram, locationName);
- this._gl.uniformMatrix4fv(location, !transposedMatrix, new Float32Array(matrix.rawData));
+ CSSDefaultRenderer.prototype.drawSkyBox = function (entityCollector) {
+ //TODO
};
- ContextGL.prototype.setGLSLProgramConstantsFromArray = function (locationName, data, startIndex) {
- if (typeof startIndex === "undefined") { startIndex = 0; }
- var location = this._gl.getUniformLocation(this._currentProgram.glProgram, locationName);
- this._gl.uniform4f(location, data[startIndex], data[startIndex + 1], data[startIndex + 2], data[startIndex + 3]);
- };
+ /**
+ * Draw a list of renderables.
+ * @param renderables The renderables to draw.
+ * @param entityCollector The EntityCollector containing all potentially visible information.
+ */
+ CSSDefaultRenderer.prototype.drawRenderables = function (item, entityCollector) {
+ var viewProjection = entityCollector.camera.viewProjection.clone();
- ContextGL.prototype.setScissorRectangle = function (rectangle) {
- if (!rectangle) {
- this._gl.disable(this._gl.SCISSOR_TEST);
- return;
- }
+ while (item) {
+ this._activeMaterial = item.materialOwner.material;
- this._gl.enable(this._gl.SCISSOR_TEST);
- this._gl.scissor(rectangle.x, rectangle.y, rectangle.width, rectangle.height);
+ //serialise transform and apply to html element
+ this._transform.copyRawDataFrom(item.renderSceneTransform.rawData);
+ this._transform.append(viewProjection);
+
+ var style = item.htmlElement.style;
+
+ style.transform = style["-webkit-transform"] = style["-moz-transform"] = style["-o-transform"] = style["-ms-transform"] = this._transform.toString();
+
+ style.transformStyle = style["-webkit-transform-style"] = style["-moz-transform-style"] = style["-o-transform-style"] = style["-ms-transform-style"] = "preserve-3d";
+
+ //check if child requires adding to the view
+ if (!this._context.contains(item.htmlElement))
+ this._context.appendChild(item.htmlElement);
+
+ item = item.next;
+ }
+ // var numPasses:number;
+ // var j:number;
+ // var camera:away.entities.Camera = entityCollector.camera;
+ // var item2:away.render.CSSRenderableBase;
+ //
+ // while (item) {
+ // this._activeMaterial = item.material;
+ //
+ // this._activeMaterial.iUpdateMaterial(this._pContext);
+ //
+ // numPasses = this._activeMaterial._iNumPasses;
+ //
+ // j = 0;
+ //
+ // do {
+ // item2 = item;
+ //
+ // var rttMask:number = this._activeMaterial.iPassRendersToTexture(j)? 1 : 2;
+ //
+ // if ((rttMask & which) != 0) {
+ // this._activeMaterial.iActivatePass(j, this._pStageGL, camera);
+ //
+ // do {
+ // this._activeMaterial.iRenderPass(j, item2, this._pStageGL, entityCollector);
+ //
+ // item2 = item2.next;
+ //
+ // } while (item2 && item2.material == this._activeMaterial);
+ //
+ // this._activeMaterial.iDeactivatePass(j, this._pStageGL);
+ //
+ // } else {
+ // do {
+ // item2 = item2.next;
+ //
+ // } while (item2 && item2.renderable.material == this._activeMaterial);
+ // }
+ // } while (++j < numPasses);
+ //
+ // item = item2;
+ // }
};
- ContextGL.prototype.setTextureAt = function (sampler, texture) {
- var locationName = "fs" + sampler;
- this.setGLSLTextureAt(locationName, texture, sampler);
+ CSSDefaultRenderer.prototype.dispose = function () {
+ _super.prototype.dispose.call(this);
+ //TODO
};
- ContextGL.prototype.setGLSLTextureAt = function (locationName, texture, textureIndex) {
- if (!texture) {
- this._gl.activeTexture(this._gl.TEXTURE0 + (textureIndex));
- this._gl.bindTexture(this._gl.TEXTURE_2D, null);
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, null);
- return;
- }
+ CSSDefaultRenderer.prototype._iCreateEntityCollector = function () {
+ return new away.traverse.CSSEntityCollector();
+ };
+ return CSSDefaultRenderer;
+ })(away.render.CSSRendererBase);
+ render.CSSDefaultRenderer = CSSDefaultRenderer;
+ })(away.render || (away.render = {}));
+ var render = away.render;
+})(away || (away = {}));
+///
+///
+var away;
+(function (away) {
+ /**
+ * @module away.sort
+ */
+ (function (sort) {
+ /**
+ * @class away.sort.RenderableMergeSort
+ */
+ var RenderableMergeSort = (function () {
+ function RenderableMergeSort() {
+ }
+ RenderableMergeSort.prototype.sortBlendedRenderables = function (head) {
+ var headB;
+ var fast;
+ var slow;
- switch (textureIndex) {
- case 0:
- this._gl.activeTexture(this._gl.TEXTURE0);
- break;
- case 1:
- this._gl.activeTexture(this._gl.TEXTURE1);
- break;
- case 2:
- this._gl.activeTexture(this._gl.TEXTURE2);
- break;
- case 3:
- this._gl.activeTexture(this._gl.TEXTURE3);
- break;
- case 4:
- this._gl.activeTexture(this._gl.TEXTURE4);
- break;
- case 5:
- this._gl.activeTexture(this._gl.TEXTURE5);
- break;
- case 6:
- this._gl.activeTexture(this._gl.TEXTURE6);
- break;
- case 7:
- this._gl.activeTexture(this._gl.TEXTURE7);
- break;
- default:
- throw "Texture " + textureIndex + " is out of bounds.";
+ if (!head || !head.next) {
+ return head;
}
- var location = this._gl.getUniformLocation(this._currentProgram.glProgram, locationName);
-
- if (texture.textureType == "texture2d") {
- this._gl.bindTexture(this._gl.TEXTURE_2D, texture.glTexture);
- this._gl.uniform1i(location, textureIndex);
- var samplerState = this._samplerStates[textureIndex];
+ // split in two sublists
+ slow = head;
+ fast = head.next;
- if (samplerState.wrap != this._currentWrap) {
- //this._currentWrap = samplerState.wrap;
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_WRAP_S, samplerState.wrap);
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_WRAP_T, samplerState.wrap);
+ while (fast) {
+ fast = fast.next;
+ if (fast) {
+ slow = slow.next;
+ fast = fast.next;
}
+ }
- if (samplerState.filter != this._currentFilter) {
- //this._currentFilter = samplerState.filter;
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, samplerState.filter);
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, samplerState.filter);
- }
+ headB = slow.next;
+ slow.next = null;
- if (samplerState.mipfilter != this._currentMipFilter) {
- //this._currentMipFilter = samplerState.mipfilter;
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, samplerState.mipfilter);
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, samplerState.mipfilter);
- }
- //this._gl.bindTexture( this._gl.TEXTURE_2D, null );
- } else if (texture.textureType == "textureCube") {
- this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP, texture.glTexture);
- this._gl.uniform1i(location, textureIndex);
- var samplerState = this._samplerStates[textureIndex];
+ // recurse
+ head = this.sortBlendedRenderables(head);
+ headB = this.sortBlendedRenderables(headB);
- if (samplerState.wrap != this._currentWrap) {
- //this._currentWrap = samplerState.wrap;
- this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_WRAP_S, samplerState.wrap);
- this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_WRAP_T, samplerState.wrap);
- }
+ // merge sublists while respecting order
+ var result;
+ var curr;
+ var l;
- if (samplerState.filter != this._currentFilter) {
- //this._currentFilter = samplerState.filter;
- this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_MIN_FILTER, samplerState.filter);
- this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP, this._gl.TEXTURE_MAG_FILTER, samplerState.filter);
- }
+ if (!head)
+ return headB;
+ if (!headB)
+ return head;
- if (samplerState.mipfilter != this._currentMipFilter) {
- //this._currentMipFilter = samplerState.mipfilter;
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MIN_FILTER, samplerState.mipfilter);
- this._gl.texParameteri(this._gl.TEXTURE_2D, this._gl.TEXTURE_MAG_FILTER, samplerState.mipfilter);
+ while (head && headB) {
+ if (head.zIndex < headB.zIndex) {
+ l = head;
+ head = head.next;
+ } else {
+ l = headB;
+ headB = headB.next;
}
- //this._gl.bindTexture( this._gl.TEXTURE_CUBE_MAP, null );
- }
- };
-
- ContextGL.prototype.setSamplerStateAt = function (sampler, wrap, filter, mipfilter) {
- var glWrap = 0;
- var glFilter = 0;
- var glMipFilter = 0;
- switch (wrap) {
- case away.gl.ContextGLWrapMode.REPEAT:
- glWrap = this._gl.REPEAT;
- break;
- case away.gl.ContextGLWrapMode.CLAMP:
- glWrap = this._gl.CLAMP_TO_EDGE;
- break;
- default:
- throw "Wrap is not supported: " + wrap;
- }
+ if (!result)
+ result = l;
+ else
+ curr.next = l;
- switch (filter) {
- case away.gl.ContextGLTextureFilter.LINEAR:
- glFilter = this._gl.LINEAR;
- break;
- case away.gl.ContextGLTextureFilter.NEAREST:
- glFilter = this._gl.NEAREST;
- break;
- default:
- throw "Filter is not supported " + filter;
+ curr = l;
}
- switch (mipfilter) {
- case away.gl.ContextGLMipFilter.MIPNEAREST:
- glMipFilter = this._gl.NEAREST_MIPMAP_NEAREST;
- break;
- case away.gl.ContextGLMipFilter.MIPLINEAR:
- glMipFilter = this._gl.LINEAR_MIPMAP_LINEAR;
- break;
- case away.gl.ContextGLMipFilter.MIPNONE:
- glMipFilter = this._gl.NONE;
- break;
- default:
- throw "MipFilter is not supported " + mipfilter;
- }
+ if (head)
+ curr.next = head;
+ else if (headB)
+ curr.next = headB;
- if (0 <= sampler && sampler < ContextGL.MAX_SAMPLERS) {
- this._samplerStates[sampler].wrap = glWrap;
- this._samplerStates[sampler].filter = glFilter;
- this._samplerStates[sampler].mipfilter = glMipFilter;
- } else {
- throw "Sampler is out of bounds.";
- }
+ return result;
};
- ContextGL.prototype.setVertexBufferAt = function (index, buffer, bufferOffset, format) {
- if (typeof bufferOffset === "undefined") { bufferOffset = 0; }
- if (typeof format === "undefined") { format = null; }
- var locationName = "va" + index;
- this.setGLSLVertexBufferAt(locationName, buffer, bufferOffset, format);
- };
+ RenderableMergeSort.prototype.sortOpaqueRenderables = function (head) {
+ var headB;
+ var fast, slow;
- ContextGL.prototype.setGLSLVertexBufferAt = function (locationName, buffer, bufferOffset, format) {
- if (typeof bufferOffset === "undefined") { bufferOffset = 0; }
- if (typeof format === "undefined") { format = null; }
- //if ( buffer == null )return;
- var location = this._currentProgram ? this._gl.getAttribLocation(this._currentProgram.glProgram, locationName) : -1;
- if (!buffer) {
- if (location > -1) {
- this._gl.disableVertexAttribArray(location);
- }
- return;
+ if (!head || !head.next) {
+ return head;
}
- this._gl.bindBuffer(this._gl.ARRAY_BUFFER, buffer.glBuffer);
-
- var dimension;
- var type = this._gl.FLOAT;
- var numBytes = 4;
+ // split in two sublists
+ slow = head;
+ fast = head.next;
- switch (format) {
- case away.gl.ContextGLVertexBufferFormat.BYTES_4:
- dimension = 4;
- break;
- case away.gl.ContextGLVertexBufferFormat.FLOAT_1:
- dimension = 1;
- break;
- case away.gl.ContextGLVertexBufferFormat.FLOAT_2:
- dimension = 2;
- break;
- case away.gl.ContextGLVertexBufferFormat.FLOAT_3:
- dimension = 3;
- break;
- case away.gl.ContextGLVertexBufferFormat.FLOAT_4:
- dimension = 4;
- break;
- default:
- throw "Buffer format " + format + " is not supported.";
+ while (fast) {
+ fast = fast.next;
+ if (fast) {
+ slow = slow.next;
+ fast = fast.next;
+ }
}
- this._gl.enableVertexAttribArray(location);
- this._gl.vertexAttribPointer(location, dimension, type, false, buffer.data32PerVertex * numBytes, bufferOffset * numBytes);
- };
-
- ContextGL.prototype.setRenderToTexture = function (target, enableDepthAndStencil, antiAlias, surfaceSelector) {
- if (typeof enableDepthAndStencil === "undefined") { enableDepthAndStencil = false; }
- if (typeof antiAlias === "undefined") { antiAlias = 0; }
- if (typeof surfaceSelector === "undefined") { surfaceSelector = 0; }
- var frameBuffer = target.frameBuffer;
- this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, frameBuffer);
+ headB = slow.next;
+ slow.next = null;
- if (enableDepthAndStencil) {
- this._gl.enable(this._gl.STENCIL_TEST);
- this._gl.enable(this._gl.DEPTH_TEST);
- }
+ // recurse
+ head = this.sortOpaqueRenderables(head);
+ headB = this.sortOpaqueRenderables(headB);
- this._gl.viewport['width'] = frameBuffer.width;
- this._gl.viewport['height'] = frameBuffer.height;
+ // merge sublists while respecting order
+ var result;
+ var curr;
+ var l;
+ var cmp = 0;
- this._gl.viewport(0, 0, frameBuffer.width, frameBuffer.height);
- };
+ if (!head)
+ return headB;
+ if (!headB)
+ return head;
- ContextGL.prototype.setRenderToBackBuffer = function () {
- this._gl.bindFramebuffer(this._gl.FRAMEBUFFER, null);
- };
+ while (head && headB && head != null && headB != null) {
+ // first sort per render order id (reduces program3D switches),
+ // then on material id (reduces setting props),
+ // then on zIndex (reduces overdraw)
+ var aid = head.renderOrderId;
+ var bid = headB.renderOrderId;
- ContextGL.prototype.updateBlendStatus = function () {
- if (this._blendEnabled) {
- this._gl.enable(this._gl.BLEND);
- this._gl.blendEquation(this._gl.FUNC_ADD);
- this._gl.blendFunc(this._blendSourceFactor, this._blendDestinationFactor);
- } else {
- this._gl.disable(this._gl.BLEND);
- }
- };
- ContextGL.MAX_SAMPLERS = 8;
+ if (aid == bid) {
+ var ma = head.materialId;
+ var mb = headB.materialId;
- ContextGL.modulo = 0;
- return ContextGL;
- })();
- gl.ContextGL = ContextGL;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- (function (gl) {
- var AGLSLContextGL = (function (_super) {
- __extends(AGLSLContextGL, _super);
- function AGLSLContextGL(canvas) {
- _super.call(this, canvas);
- }
- //@override
- AGLSLContextGL.prototype.setProgramConstantsFromMatrix = function (programType, firstRegister, matrix, transposedMatrix) {
- if (typeof transposedMatrix === "undefined") { transposedMatrix = false; }
- //TODO remove special case for WebGL matrix calls?
- var d = matrix.rawData;
- if (transposedMatrix) {
- this.setProgramConstantsFromArray(programType, firstRegister, [d[0], d[4], d[8], d[12]], 1);
- this.setProgramConstantsFromArray(programType, firstRegister + 1, [d[1], d[5], d[9], d[13]], 1);
- this.setProgramConstantsFromArray(programType, firstRegister + 2, [d[2], d[6], d[10], d[14]], 1);
- this.setProgramConstantsFromArray(programType, firstRegister + 3, [d[3], d[7], d[11], d[15]], 1);
- } else {
- this.setProgramConstantsFromArray(programType, firstRegister, [d[0], d[1], d[2], d[3]], 1);
- this.setProgramConstantsFromArray(programType, firstRegister + 1, [d[4], d[5], d[6], d[7]], 1);
- this.setProgramConstantsFromArray(programType, firstRegister + 2, [d[8], d[9], d[10], d[11]], 1);
- this.setProgramConstantsFromArray(programType, firstRegister + 3, [d[12], d[13], d[14], d[15]], 1);
+ if (ma == mb) {
+ if (head.zIndex < headB.zIndex)
+ cmp = 1;
+ else
+ cmp = -1;
+ } else if (ma > mb)
+ cmp = 1;
+ else
+ cmp = -1;
+ } else if (aid > bid)
+ cmp = 1;
+ else
+ cmp = -1;
+
+ if (cmp < 0) {
+ l = head;
+ head = head.next;
+ } else {
+ l = headB;
+ headB = headB.next;
+ }
+
+ if (!result) {
+ result = l;
+ curr = l;
+ } else {
+ curr.next = l;
+ curr = l;
+ }
}
+
+ if (head)
+ curr.next = head;
+ else if (headB)
+ curr.next = headB;
+
+ return result;
};
- return AGLSLContextGL;
- })(away.gl.ContextGL);
- gl.AGLSLContextGL = AGLSLContextGL;
- })(away.gl || (away.gl = {}));
- var gl = away.gl;
+ return RenderableMergeSort;
+ })();
+ sort.RenderableMergeSort = RenderableMergeSort;
+ })(away.sort || (away.sort = {}));
+ var sort = away.sort;
})(away || (away = {}));
///
var away;
@@ -15648,14 +18742,13 @@ var away;
(function (away) {
(function (geom) {
var UVTransform = (function () {
- function UVTransform(materialOwner) {
+ function UVTransform() {
this._uvMatrix = new away.geom.Matrix();
- this._rotationUV = 0;
+ this._rotation = 0;
this._scaleU = 1;
this._scaleV = 1;
this._offsetU = 0;
this._offsetV = 0;
- this._materialOwner = materialOwner;
}
Object.defineProperty(UVTransform.prototype, "offsetU", {
/**
@@ -15695,18 +18788,18 @@ var away;
});
- Object.defineProperty(UVTransform.prototype, "rotationUV", {
+ Object.defineProperty(UVTransform.prototype, "rotation", {
/**
*
*/
get: function () {
- return this._rotationUV;
+ return this._rotation;
},
set: function (value) {
- if (value == this._rotationUV)
+ if (value == this._rotation)
return;
- this._rotationUV = value;
+ this._rotation = value;
this._uvMatrixDirty = true;
},
@@ -15775,17 +18868,15 @@ var away;
UVTransform.prototype.updateUVMatrix = function () {
this._uvMatrix.identity();
- if (this._rotationUV != 0)
- this._uvMatrix.rotate(this._rotationUV);
+ if (this._rotation != 0)
+ this._uvMatrix.rotate(this._rotation);
if (this._scaleU != 1 || this._scaleV != 1)
this._uvMatrix.scale(this._scaleU, this._scaleV);
this._uvMatrix.translate(this._offsetU, this._offsetV);
- this._uvMatrixDirty = false;
- //TODO stop being lazy and provide proper matrix decomposition on the other side
- this._materialOwner._iSetUVMatrixComponents(this._offsetU, this._offsetV, this._scaleU, this._scaleV, this._rotationUV);
+ this._uvMatrixDirty = false;
};
return UVTransform;
})();
@@ -19282,800 +22373,1553 @@ var away;
Keyboard.LAST = 0x01000011;
- Keyboard.LEFT = 37;
+ Keyboard.LEFT = 37;
+
+ Keyboard.LEFTBRACKET = 219;
+
+ Keyboard.LIVE = 0x01000010;
+
+ Keyboard.M = 77;
+
+ Keyboard.MASTER_SHELL = 0x0100001E;
+
+ Keyboard.MENU = 0x01000012;
+
+ Keyboard.MINUS = 189;
+
+ Keyboard.N = 78;
+
+ Keyboard.NEXT = 0x0100000E;
+
+ Keyboard.NUMBER_0 = 48;
+
+ Keyboard.NUMBER_1 = 49;
+
+ Keyboard.NUMBER_2 = 50;
+
+ Keyboard.NUMBER_3 = 51;
+
+ Keyboard.NUMBER_4 = 52;
+
+ Keyboard.NUMBER_5 = 53;
+
+ Keyboard.NUMBER_6 = 54;
+
+ Keyboard.NUMBER_7 = 55;
+
+ Keyboard.NUMBER_8 = 56;
+
+ Keyboard.NUMBER_9 = 57;
+
+ Keyboard.NUMPAD = 21;
+
+ Keyboard.NUMPAD_0 = 96;
+
+ Keyboard.NUMPAD_1 = 97;
+
+ Keyboard.NUMPAD_2 = 98;
+
+ Keyboard.NUMPAD_3 = 99;
+
+ Keyboard.NUMPAD_4 = 100;
+
+ Keyboard.NUMPAD_5 = 101;
+
+ Keyboard.NUMPAD_6 = 102;
+
+ Keyboard.NUMPAD_7 = 103;
+
+ Keyboard.NUMPAD_8 = 104;
+
+ Keyboard.NUMPAD_9 = 105;
+
+ Keyboard.NUMPAD_ADD = 107;
+
+ Keyboard.NUMPAD_DECIMAL = 110;
+
+ Keyboard.NUMPAD_DIVIDE = 111;
+
+ Keyboard.NUMPAD_ENTER = 108;
+
+ Keyboard.NUMPAD_MULTIPLY = 106;
+
+ Keyboard.NUMPAD_SUBTRACT = 109;
+
+ Keyboard.O = 79;
+
+ Keyboard.P = 80;
+
+ Keyboard.PAGE_DOWN = 34;
+
+ Keyboard.PAGE_UP = 33;
+
+ Keyboard.PAUSE = 0x01000008;
+
+ Keyboard.PERIOD = 190;
+
+ Keyboard.PLAY = 0x01000007;
+
+ Keyboard.PREVIOUS = 0x0100000F;
+
+ Keyboard.Q = 81;
+
+ Keyboard.QUOTE = 222;
+
+ Keyboard.R = 82;
+
+ Keyboard.RECORD = 0x01000006;
+
+ Keyboard.RED = 0x01000000;
+
+ Keyboard.REWIND = 0x0100000B;
+
+ Keyboard.RIGHT = 39;
+
+ Keyboard.RIGHTBRACKET = 221;
+
+ Keyboard.S = 83;
+
+ Keyboard.SEARCH = 0x0100001F;
+
+ Keyboard.SEMICOLON = 186;
+
+ Keyboard.SETUP = 0x0100001C;
+
+ Keyboard.SHIFT = 16;
+
+ Keyboard.SKIP_BACKWARD = 0x0100000D;
+
+ Keyboard.SKIP_FORWARD = 0x0100000C;
+
+ Keyboard.SLASH = 191;
+
+ Keyboard.SPACE = 32;
+
+ Keyboard.STOP = 0x01000009;
+
+ Keyboard.SUBTITLE = 0x01000018;
+
+ Keyboard.T = 84;
+
+ Keyboard.TAB = 9;
+
+ Keyboard.U = 85;
+
+ Keyboard.UP = 38;
+
+ Keyboard.V = 86;
+
+ Keyboard.VOD = 0x0100001A;
+
+ Keyboard.W = 87;
+
+ Keyboard.X = 88;
+
+ Keyboard.Y = 89;
+
+ Keyboard.YELLOW = 0x01000002;
+
+ Keyboard.Z = 90;
+ return Keyboard;
+ })();
+ ui.Keyboard = Keyboard;
+ })(away.ui || (away.ui = {}));
+ var ui = away.ui;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ /**
+ * The DisplayObjectContainer class is the base class for all objects that can
+ * serve as display object containers on the display list. The display list
+ * manages all objects displayed in the Flash runtimes. Use the
+ * DisplayObjectContainer class to arrange the display objects in the display
+ * list. Each DisplayObjectContainer object has its own child list for
+ * organizing the z-order of the objects. The z-order is the front-to-back
+ * order that determines which object is drawn in front, which is behind, and
+ * so on.
+ *
+ *
DisplayObject is an abstract base class; therefore, you cannot call
+ * DisplayObject directly. Invoking new DisplayObject() throws an
+ * ArgumentError exception.
+ * The DisplayObjectContainer class is an abstract base class for all objects
+ * that can contain child objects. It cannot be instantiated directly; calling
+ * the new DisplayObjectContainer() constructor throws an
+ * ArgumentError exception.
+ *
+ *
For more information, see the "Display Programming" chapter of the
+ * ActionScript 3.0 Developer's Guide.
+ */
+ (function (containers) {
+ var DisplayObjectContainer = (function (_super) {
+ __extends(DisplayObjectContainer, _super);
+ /**
+ * Calling the new DisplayObjectContainer() constructor throws
+ * an ArgumentError exception. You can, however, call
+ * constructors for the following subclasses of DisplayObjectContainer:
+ *
+ *
new Loader()
+ *
new Sprite()
+ *
new MovieClip()
+ *
+ */
+ function DisplayObjectContainer() {
+ _super.call(this);
+ this._mouseChildren = true;
+ this._children = new Array();
+ }
+ Object.defineProperty(DisplayObjectContainer.prototype, "assetType", {
+ /**
+ *
+ */
+ get: function () {
+ return away.library.AssetType.CONTAINER;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(DisplayObjectContainer.prototype, "mouseChildren", {
+ /**
+ * Determines whether or not the children of the object are mouse, or user
+ * input device, enabled. If an object is enabled, a user can interact with
+ * it by using a mouse or user input device. The default is
+ * true.
+ *
+ *
This property is useful when you create a button with an instance of
+ * the Sprite class(instead of using the SimpleButton class). When you use a
+ * Sprite instance to create a button, you can choose to decorate the button
+ * by using the addChild() method to add additional Sprite
+ * instances. This process can cause unexpected behavior with mouse events
+ * because the Sprite instances you add as children can become the target
+ * object of a mouse event when you expect the parent instance to be the
+ * target object. To ensure that the parent instance serves as the target
+ * objects for mouse events, you can set the mouseChildren
+ * property of the parent instance to false.
+ *
+ *
No event is dispatched by setting this property. You must use the
+ * addEventListener() method to create interactive
+ * functionality.
+ */
+ get: function () {
+ return this._mouseChildren;
+ },
+ set: function (value) {
+ if (this._mouseChildren == value)
+ return;
+
+ this._mouseChildren = value;
- Keyboard.LEFTBRACKET = 219;
+ this._pUpdateImplicitMouseEnabled(this._pParent ? this._pParent.mouseChildren : true);
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.LIVE = 0x01000010;
- Keyboard.M = 77;
+ Object.defineProperty(DisplayObjectContainer.prototype, "numChildren", {
+ /**
+ * Returns the number of children of this object.
+ */
+ get: function () {
+ return this._children.length;
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.MASTER_SHELL = 0x0100001E;
+ /**
+ * Adds a child DisplayObject instance to this DisplayObjectContainer
+ * instance. The child is added to the front(top) of all other children in
+ * this DisplayObjectContainer instance.(To add a child to a specific index
+ * position, use the addChildAt() method.)
+ *
+ *
If you add a child object that already has a different display object
+ * container as a parent, the object is removed from the child list of the
+ * other display object container.
+ *
+ *
Note: The command stage.addChild() can cause
+ * problems with a published SWF file, including security problems and
+ * conflicts with other loaded SWF files. There is only one Stage within a
+ * Flash runtime instance, no matter how many SWF files you load into the
+ * runtime. So, generally, objects should not be added to the Stage,
+ * directly, at all. The only object the Stage should contain is the root
+ * object. Create a DisplayObjectContainer to contain all of the items on the
+ * display list. Then, if necessary, add that DisplayObjectContainer instance
+ * to the Stage.
+ *
+ * @param child The DisplayObject instance to add as a child of this
+ * DisplayObjectContainer instance.
+ * @return The DisplayObject instance that you pass in the child
+ * parameter.
+ * @throws ArgumentError Throws if the child is the same as the parent. Also
+ * throws if the caller is a child(or grandchild etc.)
+ * of the child being added.
+ * @event added Dispatched when a display object is added to the display
+ * list.
+ */
+ DisplayObjectContainer.prototype.addChild = function (child) {
+ if (child == null)
+ throw new away.errors.Error("Parameter child cannot be null.");
- Keyboard.MENU = 0x01000012;
+ //if child already has a parent, remove it.
+ if (child._pParent)
+ child._pParent.removeChildInternal(child);
- Keyboard.MINUS = 189;
+ child.iSetParent(this);
- Keyboard.N = 78;
+ this._children.push(child);
- Keyboard.NEXT = 0x0100000E;
+ return child;
+ };
- Keyboard.NUMBER_0 = 48;
+ /**
+ * Adds a child DisplayObject instance to this DisplayObjectContainer
+ * instance. The child is added at the index position specified. An index of
+ * 0 represents the back(bottom) of the display list for this
+ * DisplayObjectContainer object.
+ *
+ *
For example, the following example shows three display objects, labeled
+ * a, b, and c, at index positions 0, 2, and 1, respectively:
+ *
+ *
If you add a child object that already has a different display object
+ * container as a parent, the object is removed from the child list of the
+ * other display object container.
+ *
+ * @param child The DisplayObject instance to add as a child of this
+ * DisplayObjectContainer instance.
+ * @param index The index position to which the child is added. If you
+ * specify a currently occupied index position, the child object
+ * that exists at that position and all higher positions are
+ * moved up one position in the child list.
+ * @return The DisplayObject instance that you pass in the child
+ * parameter.
+ * @throws ArgumentError Throws if the child is the same as the parent. Also
+ * throws if the caller is a child(or grandchild etc.)
+ * of the child being added.
+ * @throws RangeError Throws if the index position does not exist in the
+ * child list.
+ * @event added Dispatched when a display object is added to the display
+ * list.
+ */
+ DisplayObjectContainer.prototype.addChildAt = function (child, index /*int*/ ) {
+ return child;
+ };
- Keyboard.NUMBER_1 = 49;
+ DisplayObjectContainer.prototype.addChildren = function () {
+ var childarray = [];
+ for (var _i = 0; _i < (arguments.length - 0); _i++) {
+ childarray[_i] = arguments[_i + 0];
+ }
+ var len = childarray.length;
+ for (var i = 0; i < len; i++)
+ this.addChild(childarray[i]);
+ };
- Keyboard.NUMBER_2 = 50;
+ /**
+ *
+ */
+ DisplayObjectContainer.prototype.clone = function () {
+ var clone = new away.containers.DisplayObjectContainer();
+ clone.pivot = this.pivot;
+ clone._iMatrix3D = this._iMatrix3D;
+ clone.partition = this.partition;
+ clone.name = name;
- Keyboard.NUMBER_3 = 51;
+ var len = this._children.length;
+ for (var i = 0; i < len; ++i)
+ clone.addChild(this._children[i].clone());
- Keyboard.NUMBER_4 = 52;
+ // todo: implement for all subtypes
+ return clone;
+ };
- Keyboard.NUMBER_5 = 53;
+ /**
+ * Determines whether the specified display object is a child of the
+ * DisplayObjectContainer instance or the instance itself. The search
+ * includes the entire display list including this DisplayObjectContainer
+ * instance. Grandchildren, great-grandchildren, and so on each return
+ * true.
+ *
+ * @param child The child object to test.
+ * @return true if the child object is a child of
+ * the DisplayObjectContainer or the container itself; otherwise
+ * false.
+ */
+ DisplayObjectContainer.prototype.contains = function (child) {
+ return this._children.indexOf(child) >= 0;
+ };
- Keyboard.NUMBER_6 = 54;
+ /**
+ *
+ */
+ DisplayObjectContainer.prototype.disposeWithChildren = function () {
+ this.dispose();
- Keyboard.NUMBER_7 = 55;
+ while (this.numChildren > 0)
+ this.getChildAt(0).dispose();
+ };
- Keyboard.NUMBER_8 = 56;
+ /**
+ * Returns the child display object instance that exists at the specified
+ * index.
+ *
+ * @param index The index position of the child object.
+ * @return The child display object at the specified index position.
+ * @throws RangeError Throws if the index does not exist in the child
+ * list.
+ */
+ DisplayObjectContainer.prototype.getChildAt = function (index /*int*/ ) {
+ var child = this._children[index];
- Keyboard.NUMBER_9 = 57;
+ if (child == null)
+ throw new away.errors.RangeError("Index does not exist in the child list of the caller");
- Keyboard.NUMPAD = 21;
+ return child;
+ };
- Keyboard.NUMPAD_0 = 96;
+ /**
+ * Returns the child display object that exists with the specified name. If
+ * more that one child display object has the specified name, the method
+ * returns the first object in the child list.
+ *
+ *
The getChildAt() method is faster than the
+ * getChildByName() method. The getChildAt() method
+ * accesses a child from a cached array, whereas the
+ * getChildByName() method has to traverse a linked list to
+ * access a child.
+ *
+ * @param name The name of the child to return.
+ * @return The child display object with the specified name.
+ */
+ DisplayObjectContainer.prototype.getChildByName = function (name) {
+ var len = this._children.length;
+ for (var i = 0; i < len; ++i)
+ if (this._children[i].name == name)
+ return this._children[i];
- Keyboard.NUMPAD_1 = 97;
+ return null;
+ };
- Keyboard.NUMPAD_2 = 98;
+ /**
+ * Returns the index position of a child DisplayObject instance.
+ *
+ * @param child The DisplayObject instance to identify.
+ * @return The index position of the child display object to identify.
+ * @throws ArgumentError Throws if the child parameter is not a child of this
+ * object.
+ */
+ DisplayObjectContainer.prototype.getChildIndex = function (child) {
+ var childIndex = this._children.indexOf(child);
- Keyboard.NUMPAD_3 = 99;
+ if (childIndex == -1)
+ throw new away.errors.ArgumentError("Child parameter is not a child of the caller");
- Keyboard.NUMPAD_4 = 100;
+ return childIndex;
+ };
- Keyboard.NUMPAD_5 = 101;
+ /**
+ * Returns an array of objects that lie under the specified point and are
+ * children(or grandchildren, and so on) of this DisplayObjectContainer
+ * instance. Any child objects that are inaccessible for security reasons are
+ * omitted from the returned array. To determine whether this security
+ * restriction affects the returned array, call the
+ * areInaccessibleObjectsUnderPoint() method.
+ *
+ *
The point parameter is in the coordinate space of the
+ * Stage, which may differ from the coordinate space of the display object
+ * container(unless the display object container is the Stage). You can use
+ * the globalToLocal() and the localToGlobal()
+ * methods to convert points between these coordinate spaces.
+ *
+ * @param point The point under which to look.
+ * @return An array of objects that lie under the specified point and are
+ * children(or grandchildren, and so on) of this
+ * DisplayObjectContainer instance.
+ */
+ DisplayObjectContainer.prototype.getObjectsUnderPoint = function (point) {
+ return new Array();
+ };
- Keyboard.NUMPAD_6 = 102;
+ /**
+ * Removes the specified child DisplayObject instance from the
+ * child list of the DisplayObjectContainer instance. The parent
+ * property of the removed child is set to null , and the object
+ * is garbage collected if no other references to the child exist. The index
+ * positions of any display objects above the child in the
+ * DisplayObjectContainer are decreased by 1.
+ *
+ *
The garbage collector reallocates unused memory space. When a variable
+ * or object is no longer actively referenced or stored somewhere, the
+ * garbage collector sweeps through and wipes out the memory space it used to
+ * occupy if no other references to it exist.
+ *
+ * @param child The DisplayObject instance to remove.
+ * @return The DisplayObject instance that you pass in the child
+ * parameter.
+ * @throws ArgumentError Throws if the child parameter is not a child of this
+ * object.
+ */
+ DisplayObjectContainer.prototype.removeChild = function (child) {
+ if (child == null)
+ throw new away.errors.Error("Parameter child cannot be null");
- Keyboard.NUMPAD_7 = 103;
+ this.removeChildInternal(child);
- Keyboard.NUMPAD_8 = 104;
+ child.iSetParent(null);
- Keyboard.NUMPAD_9 = 105;
+ return child;
+ };
- Keyboard.NUMPAD_ADD = 107;
+ /**
+ * Removes a child DisplayObject from the specified index
+ * position in the child list of the DisplayObjectContainer. The
+ * parent property of the removed child is set to
+ * null, and the object is garbage collected if no other
+ * references to the child exist. The index positions of any display objects
+ * above the child in the DisplayObjectContainer are decreased by 1.
+ *
+ *
The garbage collector reallocates unused memory space. When a variable
+ * or object is no longer actively referenced or stored somewhere, the
+ * garbage collector sweeps through and wipes out the memory space it used to
+ * occupy if no other references to it exist.
+ *
+ * @param index The child index of the DisplayObject to remove.
+ * @return The DisplayObject instance that was removed.
+ * @throws RangeError Throws if the index does not exist in the child
+ * list.
+ * @throws SecurityError This child display object belongs to a sandbox to
+ * which the calling object does not have access. You
+ * can avoid this situation by having the child movie
+ * call the Security.allowDomain() method.
+ */
+ DisplayObjectContainer.prototype.removeChildAt = function (index /*int*/ ) {
+ return this.removeChild(this._children[index]);
+ };
- Keyboard.NUMPAD_DECIMAL = 110;
+ /**
+ * Removes all child DisplayObject instances from the child list
+ * of the DisplayObjectContainer instance. The parent property
+ * of the removed children is set to null, and the objects are
+ * garbage collected if no other references to the children exist.
+ *
+ * The garbage collector reallocates unused memory space. When a variable or
+ * object is no longer actively referenced or stored somewhere, the garbage
+ * collector sweeps through and wipes out the memory space it used to occupy
+ * if no other references to it exist.
+ *
+ * @param beginIndex The beginning position. A value smaller than 0 throws a RangeError.
+ * @param endIndex The ending position. A value smaller than 0 throws a RangeError.
+ * @throws RangeError Throws if the beginIndex or endIndex positions do
+ * not exist in the child list.
+ */
+ DisplayObjectContainer.prototype.removeChildren = function (beginIndex, endIndex) {
+ if (typeof beginIndex === "undefined") { beginIndex = 0; }
+ if (typeof endIndex === "undefined") { endIndex = 2147483647; }
+ if (beginIndex < 0)
+ throw new away.errors.RangeError("beginIndex is out of range of the child list");
- Keyboard.NUMPAD_DIVIDE = 111;
+ if (endIndex > this._children.length)
+ throw new away.errors.RangeError("endIndex is out of range of the child list");
- Keyboard.NUMPAD_ENTER = 108;
+ for (var i = beginIndex; i < endIndex; i++)
+ this.removeChild(this._children[i]);
+ };
- Keyboard.NUMPAD_MULTIPLY = 106;
+ /**
+ * Changes the position of an existing child in the display object container.
+ * This affects the layering of child objects. For example, the following
+ * example shows three display objects, labeled a, b, and c, at index
+ * positions 0, 1, and 2, respectively:
+ *
+ *
When you use the setChildIndex() method and specify an
+ * index position that is already occupied, the only positions that change
+ * are those in between the display object's former and new position. All
+ * others will stay the same. If a child is moved to an index LOWER than its
+ * current index, all children in between will INCREASE by 1 for their index
+ * reference. If a child is moved to an index HIGHER than its current index,
+ * all children in between will DECREASE by 1 for their index reference. For
+ * example, if the display object container in the previous example is named
+ * container, you can swap the position of the display objects
+ * labeled a and b by calling the following code:
+ *
+ *
This code results in the following arrangement of objects:
+ *
+ * @param child The child DisplayObject instance for which you want to change
+ * the index number.
+ * @param index The resulting index number for the child display
+ * object.
+ * @throws ArgumentError Throws if the child parameter is not a child of this
+ * object.
+ * @throws RangeError Throws if the index does not exist in the child
+ * list.
+ */
+ DisplayObjectContainer.prototype.setChildIndex = function (child, index /*int*/ ) {
+ //TODO
+ };
- Keyboard.NUMPAD_SUBTRACT = 109;
+ /**
+ * Swaps the z-order (front-to-back order) of the two specified child
+ * objects. All other child objects in the display object container remain in
+ * the same index positions.
+ *
+ * @param child1 The first child object.
+ * @param child2 The second child object.
+ * @throws ArgumentError Throws if either child parameter is not a child of
+ * this object.
+ */
+ DisplayObjectContainer.prototype.swapChildren = function (child1, child2) {
+ //TODO
+ };
- Keyboard.O = 79;
+ /**
+ * Swaps the z-order(front-to-back order) of the child objects at the two
+ * specified index positions in the child list. All other child objects in
+ * the display object container remain in the same index positions.
+ *
+ * @param index1 The index position of the first child object.
+ * @param index2 The index position of the second child object.
+ * @throws RangeError If either index does not exist in the child list.
+ */
+ DisplayObjectContainer.prototype.swapChildrenAt = function (index1 /*int*/ , index2 /*int*/ ) {
+ //TODO
+ };
- Keyboard.P = 80;
+ /**
+ * @protected
+ */
+ DisplayObjectContainer.prototype.pInvalidateSceneTransform = function () {
+ _super.prototype.pInvalidateSceneTransform.call(this);
- Keyboard.PAGE_DOWN = 34;
+ var len = this._children.length;
+ for (var i = 0; i < len; ++i)
+ this._children[i++].pInvalidateSceneTransform();
+ };
- Keyboard.PAGE_UP = 33;
+ /**
+ * @protected
+ */
+ DisplayObjectContainer.prototype._pUpdateScene = function (value) {
+ _super.prototype._pUpdateScene.call(this, value);
- Keyboard.PAUSE = 0x01000008;
+ var len = this._children.length;
+ for (var i = 0; i < len; ++i)
+ this._children[i]._pUpdateScene(value);
+ };
- Keyboard.PERIOD = 190;
+ /**
+ * @protected
+ */
+ DisplayObjectContainer.prototype._pUpdateImplicitMouseEnabled = function (value) {
+ _super.prototype._pUpdateImplicitMouseEnabled.call(this, value);
- Keyboard.PLAY = 0x01000007;
+ var len = this._children.length;
+ for (var i = 0; i < len; ++i)
+ this._children[i]._pUpdateImplicitMouseEnabled(this._mouseChildren);
+ };
- Keyboard.PREVIOUS = 0x0100000F;
+ /**
+ * @protected
+ */
+ DisplayObjectContainer.prototype._pUpdateImplicitVisibility = function (value) {
+ _super.prototype._pUpdateImplicitVisibility.call(this, value);
- Keyboard.Q = 81;
+ var len = this._children.length;
+ for (var i = 0; i < len; ++i)
+ this._children[i]._pUpdateImplicitVisibility(this._pImplicitVisibility);
+ };
- Keyboard.QUOTE = 222;
+ /**
+ * @protected
+ */
+ DisplayObjectContainer.prototype._pUpdateImplicitPartition = function (value) {
+ _super.prototype._pUpdateImplicitPartition.call(this, value);
- Keyboard.R = 82;
+ var len = this._children.length;
+ for (var i = 0; i < len; ++i)
+ this._children[i]._pUpdateImplicitPartition(this._pImplicitPartition);
+ };
- Keyboard.RECORD = 0x01000006;
+ /**
+ * @private
+ *
+ * @param child
+ */
+ DisplayObjectContainer.prototype.removeChildInternal = function (child) {
+ this._children.splice(this.getChildIndex(child), 1);
- Keyboard.RED = 0x01000000;
+ return child;
+ };
+ return DisplayObjectContainer;
+ })(away.base.DisplayObject);
+ containers.DisplayObjectContainer = DisplayObjectContainer;
+ })(away.containers || (away.containers = {}));
+ var containers = away.containers;
+})(away || (away = {}));
+///
+///
+var away;
+(function (away) {
+ /**
+ * The Billboard class represents display objects that represent bitmap images.
+ * These can be images that you load with the flash.Assets or
+ * flash.display.Loader classes, or they can be images that you
+ * create with the Billboard() constructor.
+ *
+ *
The Billboard() constructor allows you to create a Billboard
+ * object that contains a reference to a BitmapData object. After you create a
+ * Billboard object, use the addChild() or addChildAt()
+ * method of the parent DisplayObjectContainer instance to place the bitmap on
+ * the display list.
+ *
+ *
A Billboard object can share its BitmapData reference among several Billboard
+ * objects, independent of translation or rotation properties. Because you can
+ * create multiple Billboard objects that reference the same BitmapData object,
+ * multiple display objects can use the same complex BitmapData object without
+ * incurring the memory overhead of a BitmapData object for each display
+ * object instance.
+ *
+ *
A BitmapData object can be drawn to the screen by a Billboard object in one
+ * of two ways: by using the default hardware renderer with a single hardware surface,
+ * or by using the slower software renderer when 3D acceleration is not available.
+ *
+ *
If you would prefer to perform a batch rendering command, rather than using a
+ * single surface for each Billboard object, you can also draw to the screen using the
+ * drawTiles() or drawTriangles() methods which are
+ * available to flash.display.Tilesheet and flash.display.Graphics
+ * objects.
+ *
+ *
Note: The Billboard class is not a subclass of the InteractiveObject
+ * class, so it cannot dispatch mouse events. However, you can use the
+ * addEventListener() method of the display object container that
+ * contains the Billboard object.
+ */
+ (function (entities) {
+ var MaterialEvent = away.events.MaterialEvent;
+ var Matrix3D = away.geom.Matrix3D;
+ var UVTransform = away.geom.UVTransform;
- Keyboard.REWIND = 0x0100000B;
+ var Billboard = (function (_super) {
+ __extends(Billboard, _super);
+ function Billboard(material, pixelSnapping, smoothing) {
+ if (typeof pixelSnapping === "undefined") { pixelSnapping = "auto"; }
+ if (typeof smoothing === "undefined") { smoothing = false; }
+ var _this = this;
+ _super.call(this);
- Keyboard.RIGHT = 39;
+ this._pIsEntity = true;
- Keyboard.RIGHTBRACKET = 221;
+ this.onSizeChangedDelegate = function (event) {
+ return _this.onSizeChanged(event);
+ };
- Keyboard.S = 83;
+ this.material = material;
- Keyboard.SEARCH = 0x0100001F;
+ this._billboardWidth = material.width;
+ this._billboardHeight = material.height;
+ }
+ Object.defineProperty(Billboard.prototype, "animator", {
+ /**
+ * Defines the animator of the mesh. Act on the mesh's geometry. Defaults to null
+ */
+ get: function () {
+ return this._animator;
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.SEMICOLON = 186;
+ Object.defineProperty(Billboard.prototype, "assetType", {
+ /**
+ *
+ */
+ get: function () {
+ return away.library.AssetType.BILLBOARD;
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.SETUP = 0x0100001C;
+ Object.defineProperty(Billboard.prototype, "billboardHeight", {
+ /**
+ *
+ */
+ get: function () {
+ return this._billboardHeight;
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.SHIFT = 16;
+ Object.defineProperty(Billboard.prototype, "billboardWidth", {
+ /**
+ *
+ */
+ get: function () {
+ return this._billboardWidth;
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.SKIP_BACKWARD = 0x0100000D;
+ Object.defineProperty(Billboard.prototype, "material", {
+ /**
+ *
+ */
+ get: function () {
+ return this._material;
+ },
+ set: function (value) {
+ if (value == this._material)
+ return;
- Keyboard.SKIP_FORWARD = 0x0100000C;
+ if (this._material) {
+ this._material.iRemoveOwner(this);
+ this._material.removeEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate);
+ }
- Keyboard.SLASH = 191;
+ this._material = value;
- Keyboard.SPACE = 32;
+ if (this._material) {
+ this._material.iAddOwner(this);
+ this._material.addEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate);
+ }
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.STOP = 0x01000009;
- Keyboard.SUBTITLE = 0x01000018;
+ Object.defineProperty(Billboard.prototype, "uvTransform", {
+ /**
+ *
+ */
+ get: function () {
+ return this._uvTransform;
+ },
+ set: function (value) {
+ this._uvTransform = value;
+ },
+ enumerable: true,
+ configurable: true
+ });
- Keyboard.T = 84;
- Keyboard.TAB = 9;
+ /**
+ * @protected
+ */
+ Billboard.prototype.pCreateEntityPartitionNode = function () {
+ return new away.partition.EntityNode(this);
+ };
- Keyboard.U = 85;
+ /**
+ * @protected
+ */
+ Billboard.prototype.pUpdateBounds = function () {
+ this._pBounds.fromExtremes(0, 0, 0, this._billboardWidth, this._billboardHeight, 0);
- Keyboard.UP = 38;
+ _super.prototype.pUpdateBounds.call(this);
+ };
- Keyboard.V = 86;
+ /**
+ * //TODO
+ *
+ * @param shortestCollisionDistance
+ * @param findClosest
+ * @returns {boolean}
+ *
+ * @internal
+ */
+ Billboard.prototype._iTestCollision = function (shortestCollisionDistance, findClosest) {
+ return this._pPickingCollider.testBillboardCollision(this, this._pPickingCollisionVO, shortestCollisionDistance);
+ };
- Keyboard.VOD = 0x0100001A;
+ /**
+ * @private
+ */
+ Billboard.prototype.onSizeChanged = function (event) {
+ this._billboardWidth = this._material.width;
+ this._billboardHeight = this._material.height;
- Keyboard.W = 87;
+ this._pBoundsInvalid = true;
- Keyboard.X = 88;
+ var len = this._pRenderables.length;
+ for (var i = 0; i < len; i++)
+ this._pRenderables[i].invalidateVertexData("vertices"); //TODO
+ };
- Keyboard.Y = 89;
+ Billboard.prototype._iCollectRenderables = function (renderer) {
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the sub-meshes, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
- Keyboard.YELLOW = 0x01000002;
+ this._iCollectRenderable(renderer);
+ };
- Keyboard.Z = 90;
- return Keyboard;
- })();
- ui.Keyboard = Keyboard;
- })(away.ui || (away.ui = {}));
- var ui = away.ui;
+ Billboard.prototype._iCollectRenderable = function (renderer) {
+ renderer.applyBillboard(this);
+ };
+ return Billboard;
+ })(away.base.DisplayObject);
+ entities.Billboard = Billboard;
+ })(away.entities || (away.entities = {}));
+ var entities = away.entities;
})(away || (away = {}));
-///
+///
var away;
(function (away) {
- /**
- * The DisplayObjectContainer class is the base class for all objects that can
- * serve as display object containers on the display list. The display list
- * manages all objects displayed in the Flash runtimes. Use the
- * DisplayObjectContainer class to arrange the display objects in the display
- * list. Each DisplayObjectContainer object has its own child list for
- * organizing the z-order of the objects. The z-order is the front-to-back
- * order that determines which object is drawn in front, which is behind, and
- * so on.
- *
- *
DisplayObject is an abstract base class; therefore, you cannot call
- * DisplayObject directly. Invoking new DisplayObject() throws an
- * ArgumentError exception.
- * The DisplayObjectContainer class is an abstract base class for all objects
- * that can contain child objects. It cannot be instantiated directly; calling
- * the new DisplayObjectContainer() constructor throws an
- * ArgumentError exception.
- *
- *
For more information, see the "Display Programming" chapter of the
- * ActionScript 3.0 Developer's Guide.
- */
- (function (containers) {
- var DisplayObjectContainer = (function (_super) {
- __extends(DisplayObjectContainer, _super);
- /**
- * Calling the new DisplayObjectContainer() constructor throws
- * an ArgumentError exception. You can, however, call
- * constructors for the following subclasses of DisplayObjectContainer:
- *
- *
new Loader()
- *
new Sprite()
- *
new MovieClip()
- *
- */
- function DisplayObjectContainer() {
+ (function (entities) {
+ var Camera = (function (_super) {
+ __extends(Camera, _super);
+ function Camera(projection) {
+ if (typeof projection === "undefined") { projection = null; }
_super.call(this);
- this._mouseChildren = true;
- this._children = new Array();
- }
- Object.defineProperty(DisplayObjectContainer.prototype, "assetType", {
- /**
- *
- */
- get: function () {
- return away.library.AssetType.CONTAINER;
- },
- enumerable: true,
- configurable: true
- });
+ this._viewProjection = new away.geom.Matrix3D();
+ this._viewProjectionDirty = true;
+ this._frustumPlanesDirty = true;
- Object.defineProperty(DisplayObjectContainer.prototype, "mouseChildren", {
- /**
- * Determines whether or not the children of the object are mouse, or user
- * input device, enabled. If an object is enabled, a user can interact with
- * it by using a mouse or user input device. The default is
- * true.
- *
- *
This property is useful when you create a button with an instance of
- * the Sprite class(instead of using the SimpleButton class). When you use a
- * Sprite instance to create a button, you can choose to decorate the button
- * by using the addChild() method to add additional Sprite
- * instances. This process can cause unexpected behavior with mouse events
- * because the Sprite instances you add as children can become the target
- * object of a mouse event when you expect the parent instance to be the
- * target object. To ensure that the parent instance serves as the target
- * objects for mouse events, you can set the mouseChildren
- * property of the parent instance to false.
- *
- *
No event is dispatched by setting this property. You must use the
- * addEventListener() method to create interactive
- * functionality.
- */
- get: function () {
- return this._mouseChildren;
- },
- set: function (value) {
- if (this._mouseChildren == value)
- return;
+ this._pIsEntity = true;
+
+ this._onProjectionMatrixChangedDelegate = away.utils.Delegate.create(this, this.onProjectionMatrixChanged);
+
+ this._projection = projection || new away.projections.PerspectiveProjection();
+ this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED, this._onProjectionMatrixChangedDelegate);
+
+ this._frustumPlanes = [];
+
+ for (var i = 0; i < 6; ++i)
+ this._frustumPlanes[i] = new away.geom.Plane3D();
- this._mouseChildren = value;
+ this.z = -1000;
+ }
+ Camera.prototype.pCreateDefaultBoundingVolume = function () {
+ return new away.bounds.NullBounds();
+ };
- this._pUpdateImplicitMouseEnabled(this._pParent ? this._pParent.mouseChildren : true);
+ /**
+ * @protected
+ */
+ Camera.prototype.pCreateEntityPartitionNode = function () {
+ return new away.partition.CameraNode(this);
+ };
+
+ Object.defineProperty(Camera.prototype, "assetType", {
+ //@override
+ get: function () {
+ return away.library.AssetType.CAMERA;
},
enumerable: true,
configurable: true
});
+ Camera.prototype.onProjectionMatrixChanged = function (event) {
+ this._viewProjectionDirty = true;
+ this._frustumPlanesDirty = true;
+ this.dispatchEvent(event);
+ };
- Object.defineProperty(DisplayObjectContainer.prototype, "numChildren", {
- /**
- * Returns the number of children of this object.
- */
+ Object.defineProperty(Camera.prototype, "frustumPlanes", {
get: function () {
- return this._children.length;
+ if (this._frustumPlanesDirty)
+ this.updateFrustum();
+
+ return this._frustumPlanes;
},
enumerable: true,
configurable: true
});
- /**
- * Adds a child DisplayObject instance to this DisplayObjectContainer
- * instance. The child is added to the front(top) of all other children in
- * this DisplayObjectContainer instance.(To add a child to a specific index
- * position, use the addChildAt() method.)
- *
- *
If you add a child object that already has a different display object
- * container as a parent, the object is removed from the child list of the
- * other display object container.
- *
- *
Note: The command stage.addChild() can cause
- * problems with a published SWF file, including security problems and
- * conflicts with other loaded SWF files. There is only one Stage within a
- * Flash runtime instance, no matter how many SWF files you load into the
- * runtime. So, generally, objects should not be added to the Stage,
- * directly, at all. The only object the Stage should contain is the root
- * object. Create a DisplayObjectContainer to contain all of the items on the
- * display list. Then, if necessary, add that DisplayObjectContainer instance
- * to the Stage.
- *
- * @param child The DisplayObject instance to add as a child of this
- * DisplayObjectContainer instance.
- * @return The DisplayObject instance that you pass in the child
- * parameter.
- * @throws ArgumentError Throws if the child is the same as the parent. Also
- * throws if the caller is a child(or grandchild etc.)
- * of the child being added.
- * @event added Dispatched when a display object is added to the display
- * list.
- */
- DisplayObjectContainer.prototype.addChild = function (child) {
- if (child == null)
- throw new away.errors.Error("Parameter child cannot be null.");
+ Camera.prototype.updateFrustum = function () {
+ var a, b, c;
- //if child already has a parent, remove it.
- if (child._pParent)
- child._pParent.removeChildInternal(child);
+ //var d : Number;
+ var c11, c12, c13, c14;
+ var c21, c22, c23, c24;
+ var c31, c32, c33, c34;
+ var c41, c42, c43, c44;
+ var p;
+ var raw = new Array(16);
+ ;
+ var invLen;
+ this.viewProjection.copyRawDataTo(raw);
- child.iSetParent(this);
+ c11 = raw[0];
+ c12 = raw[4];
+ c13 = raw[8];
+ c14 = raw[12];
+ c21 = raw[1];
+ c22 = raw[5];
+ c23 = raw[9];
+ c24 = raw[13];
+ c31 = raw[2];
+ c32 = raw[6];
+ c33 = raw[10];
+ c34 = raw[14];
+ c41 = raw[3];
+ c42 = raw[7];
+ c43 = raw[11];
+ c44 = raw[15];
- this._children.push(child);
+ // left plane
+ p = this._frustumPlanes[0];
+ a = c41 + c11;
+ b = c42 + c12;
+ c = c43 + c13;
+ invLen = 1 / Math.sqrt(a * a + b * b + c * c);
+ p.a = a * invLen;
+ p.b = b * invLen;
+ p.c = c * invLen;
+ p.d = -(c44 + c14) * invLen;
- return child;
+ // right plane
+ p = this._frustumPlanes[1];
+ a = c41 - c11;
+ b = c42 - c12;
+ c = c43 - c13;
+ invLen = 1 / Math.sqrt(a * a + b * b + c * c);
+ p.a = a * invLen;
+ p.b = b * invLen;
+ p.c = c * invLen;
+ p.d = (c14 - c44) * invLen;
+
+ // bottom
+ p = this._frustumPlanes[2];
+ a = c41 + c21;
+ b = c42 + c22;
+ c = c43 + c23;
+ invLen = 1 / Math.sqrt(a * a + b * b + c * c);
+ p.a = a * invLen;
+ p.b = b * invLen;
+ p.c = c * invLen;
+ p.d = -(c44 + c24) * invLen;
+
+ // top
+ p = this._frustumPlanes[3];
+ a = c41 - c21;
+ b = c42 - c22;
+ c = c43 - c23;
+ invLen = 1 / Math.sqrt(a * a + b * b + c * c);
+ p.a = a * invLen;
+ p.b = b * invLen;
+ p.c = c * invLen;
+ p.d = (c24 - c44) * invLen;
+
+ // near
+ p = this._frustumPlanes[4];
+ a = c31;
+ b = c32;
+ c = c33;
+ invLen = 1 / Math.sqrt(a * a + b * b + c * c);
+ p.a = a * invLen;
+ p.b = b * invLen;
+ p.c = c * invLen;
+ p.d = -c34 * invLen;
+
+ // far
+ p = this._frustumPlanes[5];
+ a = c41 - c31;
+ b = c42 - c32;
+ c = c43 - c33;
+ invLen = 1 / Math.sqrt(a * a + b * b + c * c);
+ p.a = a * invLen;
+ p.b = b * invLen;
+ p.c = c * invLen;
+ p.d = (c34 - c44) * invLen;
+
+ this._frustumPlanesDirty = false;
};
/**
- * Adds a child DisplayObject instance to this DisplayObjectContainer
- * instance. The child is added at the index position specified. An index of
- * 0 represents the back(bottom) of the display list for this
- * DisplayObjectContainer object.
- *
- *
For example, the following example shows three display objects, labeled
- * a, b, and c, at index positions 0, 2, and 1, respectively:
- *
- *
If you add a child object that already has a different display object
- * container as a parent, the object is removed from the child list of the
- * other display object container.
- *
- * @param child The DisplayObject instance to add as a child of this
- * DisplayObjectContainer instance.
- * @param index The index position to which the child is added. If you
- * specify a currently occupied index position, the child object
- * that exists at that position and all higher positions are
- * moved up one position in the child list.
- * @return The DisplayObject instance that you pass in the child
- * parameter.
- * @throws ArgumentError Throws if the child is the same as the parent. Also
- * throws if the caller is a child(or grandchild etc.)
- * of the child being added.
- * @throws RangeError Throws if the index position does not exist in the
- * child list.
- * @event added Dispatched when a display object is added to the display
- * list.
+ * @protected
*/
- DisplayObjectContainer.prototype.addChildAt = function (child, index /*int*/ ) {
- return child;
- };
+ Camera.prototype.pInvalidateSceneTransform = function () {
+ _super.prototype.pInvalidateSceneTransform.call(this);
- DisplayObjectContainer.prototype.addChildren = function () {
- var childarray = [];
- for (var _i = 0; _i < (arguments.length - 0); _i++) {
- childarray[_i] = arguments[_i + 0];
- }
- var len = childarray.length;
- for (var i = 0; i < len; i++)
- this.addChild(childarray[i]);
+ this._viewProjectionDirty = true;
+ this._frustumPlanesDirty = true;
};
/**
- *
+ * @protected
*/
- DisplayObjectContainer.prototype.clone = function () {
- var clone = new away.containers.DisplayObjectContainer();
- clone.pivot = this.pivot;
- clone._iMatrix3D = this._iMatrix3D;
- clone.partition = this.partition;
- clone.name = name;
+ Camera.prototype.pUpdateBounds = function () {
+ this._pBoundsInvalid = false;
+ this._pBounds.nullify();
+ };
- var len = this._children.length;
- for (var i = 0; i < len; ++i)
- clone.addChild(this._children[i].clone());
+ Object.defineProperty(Camera.prototype, "projection", {
+ /**
+ *
+ */
+ get: function () {
+ return this._projection;
+ },
+ set: function (value) {
+ if (this._projection == value)
+ return;
+
+ if (!value)
+ throw new Error("Projection cannot be null!");
+
+ this._projection.removeEventListener(away.events.ProjectionEvent.MATRIX_CHANGED, this._onProjectionMatrixChangedDelegate);
+ this._projection = value;
+ this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED, this._onProjectionMatrixChangedDelegate);
+ this.dispatchEvent(new away.events.CameraEvent(away.events.CameraEvent.PROJECTION_CHANGED, this));
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(Camera.prototype, "viewProjection", {
+ /**
+ *
+ */
+ get: function () {
+ if (this._viewProjectionDirty) {
+ this._viewProjection.copyFrom(this.inverseSceneTransform);
+ this._viewProjection.append(this._projection.matrix);
+ this._viewProjectionDirty = false;
+ }
- // todo: implement for all subtypes
- return clone;
- };
+ return this._viewProjection;
+ },
+ enumerable: true,
+ configurable: true
+ });
/**
- * Determines whether the specified display object is a child of the
- * DisplayObjectContainer instance or the instance itself. The search
- * includes the entire display list including this DisplayObjectContainer
- * instance. Grandchildren, great-grandchildren, and so on each return
- * true.
+ * Calculates the ray in scene space from the camera to the given normalized coordinates in screen space.
*
- * @param child The child object to test.
- * @return true if the child object is a child of
- * the DisplayObjectContainer or the container itself; otherwise
- * false.
+ * @param nX The normalised x coordinate in screen space, -1 corresponds to the left edge of the viewport, 1 to the right.
+ * @param nY The normalised y coordinate in screen space, -1 corresponds to the top edge of the viewport, 1 to the bottom.
+ * @param sZ The z coordinate in screen space, representing the distance into the screen.
+ * @return The ray from the camera to the scene space position of the given screen coordinates.
*/
- DisplayObjectContainer.prototype.contains = function (child) {
- return this._children.indexOf(child) >= 0;
+ Camera.prototype.getRay = function (nX, nY, sZ) {
+ return this.sceneTransform.deltaTransformVector(this._projection.unproject(nX, nY, sZ));
};
/**
+ * Calculates the normalised position in screen space of the given scene position.
*
+ * @param point3d the position vector of the scene coordinates to be projected.
+ * @return The normalised screen position of the given scene coordinates.
*/
- DisplayObjectContainer.prototype.disposeWithChildren = function () {
- this.dispose();
-
- while (this.numChildren > 0)
- this.getChildAt(0).dispose();
+ Camera.prototype.project = function (point3d) {
+ return this._projection.project(this.inverseSceneTransform.transformVector(point3d));
};
/**
- * Returns the child display object instance that exists at the specified
- * index.
+ * Calculates the scene position of the given normalized coordinates in screen space.
*
- * @param index The index position of the child object.
- * @return The child display object at the specified index position.
- * @throws RangeError Throws if the index does not exist in the child
- * list.
+ * @param nX The normalised x coordinate in screen space, minus the originX offset of the projection property.
+ * @param nY The normalised y coordinate in screen space, minus the originY offset of the projection property.
+ * @param sZ The z coordinate in screen space, representing the distance into the screen.
+ * @return The scene position of the given screen coordinates.
*/
- DisplayObjectContainer.prototype.getChildAt = function (index /*int*/ ) {
- var child = this._children[index];
+ Camera.prototype.unproject = function (nX, nY, sZ) {
+ return this.sceneTransform.transformVector(this._projection.unproject(nX, nY, sZ));
+ };
- if (child == null)
- throw new away.errors.RangeError("Index does not exist in the child list of the caller");
+ Camera.prototype._iCollectRenderables = function (renderer) {
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the sub-meshes, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
- return child;
+ this._iCollectRenderable(renderer);
};
- /**
- * Returns the child display object that exists with the specified name. If
- * more that one child display object has the specified name, the method
- * returns the first object in the child list.
- *
- *
The getChildAt() method is faster than the
- * getChildByName() method. The getChildAt() method
- * accesses a child from a cached array, whereas the
- * getChildByName() method has to traverse a linked list to
- * access a child.
- *
- * @param name The name of the child to return.
- * @return The child display object with the specified name.
- */
- DisplayObjectContainer.prototype.getChildByName = function (name) {
- var len = this._children.length;
- for (var i = 0; i < len; ++i)
- if (this._children[i].name == name)
- return this._children[i];
-
- return null;
+ Camera.prototype._iCollectRenderable = function (renderer) {
+ //nothing to do here
};
+ return Camera;
+ })(away.containers.DisplayObjectContainer);
+ entities.Camera = Camera;
+ })(away.entities || (away.entities = {}));
+ var entities = away.entities;
+})(away || (away = {}));
+var away;
+(function (away) {
+ (function (entities) {
+ var MaterialEvent = away.events.MaterialEvent;
+ var Matrix3D = away.geom.Matrix3D;
+ var UVTransform = away.geom.UVTransform;
+ var Vector3D = away.geom.Vector3D;
+ /**
+ * A Line Segment primitive.
+ */
+ var LineSegment = (function (_super) {
+ __extends(LineSegment, _super);
/**
- * Returns the index position of a child DisplayObject instance.
+ * Create a line segment
*
- * @param child The DisplayObject instance to identify.
- * @return The index position of the child display object to identify.
- * @throws ArgumentError Throws if the child parameter is not a child of this
- * object.
+ * @param startPosition Start position of the line segment
+ * @param endPosition Ending position of the line segment
+ * @param thickness Thickness of the line
*/
- DisplayObjectContainer.prototype.getChildIndex = function (child) {
- var childIndex = this._children.indexOf(child);
+ function LineSegment(material, startPosition, endPosition, thickness) {
+ if (typeof thickness === "undefined") { thickness = 1; }
+ var _this = this;
+ _super.call(this);
- if (childIndex == -1)
- throw new away.errors.ArgumentError("Child parameter is not a child of the caller");
+ this._pIsEntity = true;
- return childIndex;
- };
+ this.onSizeChangedDelegate = function (event) {
+ return _this.onSizeChanged(event);
+ };
- /**
- * Returns an array of objects that lie under the specified point and are
- * children(or grandchildren, and so on) of this DisplayObjectContainer
- * instance. Any child objects that are inaccessible for security reasons are
- * omitted from the returned array. To determine whether this security
- * restriction affects the returned array, call the
- * areInaccessibleObjectsUnderPoint() method.
- *
- *
The point parameter is in the coordinate space of the
- * Stage, which may differ from the coordinate space of the display object
- * container(unless the display object container is the Stage). You can use
- * the globalToLocal() and the localToGlobal()
- * methods to convert points between these coordinate spaces.
- *
- * @param point The point under which to look.
- * @return An array of objects that lie under the specified point and are
- * children(or grandchildren, and so on) of this
- * DisplayObjectContainer instance.
- */
- DisplayObjectContainer.prototype.getObjectsUnderPoint = function (point) {
- return new Array();
- };
+ this.material = material;
- /**
- * Removes the specified child DisplayObject instance from the
- * child list of the DisplayObjectContainer instance. The parent
- * property of the removed child is set to null , and the object
- * is garbage collected if no other references to the child exist. The index
- * positions of any display objects above the child in the
- * DisplayObjectContainer are decreased by 1.
- *
- *
The garbage collector reallocates unused memory space. When a variable
- * or object is no longer actively referenced or stored somewhere, the
- * garbage collector sweeps through and wipes out the memory space it used to
- * occupy if no other references to it exist.
- *
- * @param child The DisplayObject instance to remove.
- * @return The DisplayObject instance that you pass in the child
- * parameter.
- * @throws ArgumentError Throws if the child parameter is not a child of this
- * object.
- */
- DisplayObjectContainer.prototype.removeChild = function (child) {
- if (child == null)
- throw new away.errors.Error("Parameter child cannot be null");
+ this._startPosition = startPosition;
+ this._endPosition = endPosition;
+ this._halfThickness = thickness * 0.5;
+ }
+ Object.defineProperty(LineSegment.prototype, "animator", {
+ /**
+ * Defines the animator of the line segment. Act on the line segment's geometry. Defaults to null
+ */
+ get: function () {
+ return this._animator;
+ },
+ enumerable: true,
+ configurable: true
+ });
- this.removeChildInternal(child);
+ Object.defineProperty(LineSegment.prototype, "assetType", {
+ /**
+ *
+ */
+ get: function () {
+ return away.library.AssetType.LINE_SEGMENT;
+ },
+ enumerable: true,
+ configurable: true
+ });
- child.iSetParent(null);
+ Object.defineProperty(LineSegment.prototype, "startPostion", {
+ /**
+ *
+ */
+ get: function () {
+ return this._startPosition;
+ },
+ enumerable: true,
+ configurable: true
+ });
- return child;
- };
+ Object.defineProperty(LineSegment.prototype, "startPosition", {
+ set: function (value) {
+ if (this._startPosition == value)
+ return;
- /**
- * Removes a child DisplayObject from the specified index
- * position in the child list of the DisplayObjectContainer. The
- * parent property of the removed child is set to
- * null, and the object is garbage collected if no other
- * references to the child exist. The index positions of any display objects
- * above the child in the DisplayObjectContainer are decreased by 1.
- *
- *
The garbage collector reallocates unused memory space. When a variable
- * or object is no longer actively referenced or stored somewhere, the
- * garbage collector sweeps through and wipes out the memory space it used to
- * occupy if no other references to it exist.
- *
- * @param index The child index of the DisplayObject to remove.
- * @return The DisplayObject instance that was removed.
- * @throws RangeError Throws if the index does not exist in the child
- * list.
- * @throws SecurityError This child display object belongs to a sandbox to
- * which the calling object does not have access. You
- * can avoid this situation by having the child movie
- * call the Security.allowDomain() method.
- */
- DisplayObjectContainer.prototype.removeChildAt = function (index /*int*/ ) {
- return this.removeChild(this._children[index]);
- };
+ this._startPosition = value;
- /**
- * Removes all child DisplayObject instances from the child list
- * of the DisplayObjectContainer instance. The parent property
- * of the removed children is set to null, and the objects are
- * garbage collected if no other references to the children exist.
- *
- * The garbage collector reallocates unused memory space. When a variable or
- * object is no longer actively referenced or stored somewhere, the garbage
- * collector sweeps through and wipes out the memory space it used to occupy
- * if no other references to it exist.
- *
- * @param beginIndex The beginning position. A value smaller than 0 throws a RangeError.
- * @param endIndex The ending position. A value smaller than 0 throws a RangeError.
- * @throws RangeError Throws if the beginIndex or endIndex positions do
- * not exist in the child list.
- */
- DisplayObjectContainer.prototype.removeChildren = function (beginIndex, endIndex) {
- if (typeof beginIndex === "undefined") { beginIndex = 0; }
- if (typeof endIndex === "undefined") { endIndex = 2147483647; }
- if (beginIndex < 0)
- throw new away.errors.RangeError("beginIndex is out of range of the child list");
+ this.notifyRenderableUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(LineSegment.prototype, "endPosition", {
+ /**
+ *
+ */
+ get: function () {
+ return this._endPosition;
+ },
+ set: function (value) {
+ if (this._endPosition == value)
+ return;
+
+ this._endPosition = value;
+
+ this.notifyRenderableUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(LineSegment.prototype, "material", {
+ /**
+ *
+ */
+ get: function () {
+ return this._material;
+ },
+ set: function (value) {
+ if (value == this._material)
+ return;
- if (endIndex > this._children.length)
- throw new away.errors.RangeError("endIndex is out of range of the child list");
+ if (this._material) {
+ this._material.iRemoveOwner(this);
+ this._material.removeEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate);
+ }
- for (var i = beginIndex; i < endIndex; i++)
- this.removeChild(this._children[i]);
- };
+ this._material = value;
- /**
- * Changes the position of an existing child in the display object container.
- * This affects the layering of child objects. For example, the following
- * example shows three display objects, labeled a, b, and c, at index
- * positions 0, 1, and 2, respectively:
- *
- *
When you use the setChildIndex() method and specify an
- * index position that is already occupied, the only positions that change
- * are those in between the display object's former and new position. All
- * others will stay the same. If a child is moved to an index LOWER than its
- * current index, all children in between will INCREASE by 1 for their index
- * reference. If a child is moved to an index HIGHER than its current index,
- * all children in between will DECREASE by 1 for their index reference. For
- * example, if the display object container in the previous example is named
- * container, you can swap the position of the display objects
- * labeled a and b by calling the following code:
- *
- *
This code results in the following arrangement of objects:
- *
- * @param child The child DisplayObject instance for which you want to change
- * the index number.
- * @param index The resulting index number for the child display
- * object.
- * @throws ArgumentError Throws if the child parameter is not a child of this
- * object.
- * @throws RangeError Throws if the index does not exist in the child
- * list.
- */
- DisplayObjectContainer.prototype.setChildIndex = function (child, index /*int*/ ) {
- //TODO
- };
+ if (this._material) {
+ this._material.iAddOwner(this);
+ this._material.addEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate);
+ }
+ },
+ enumerable: true,
+ configurable: true
+ });
- /**
- * Swaps the z-order (front-to-back order) of the two specified child
- * objects. All other child objects in the display object container remain in
- * the same index positions.
- *
- * @param child1 The first child object.
- * @param child2 The second child object.
- * @throws ArgumentError Throws if either child parameter is not a child of
- * this object.
- */
- DisplayObjectContainer.prototype.swapChildren = function (child1, child2) {
- //TODO
- };
- /**
- * Swaps the z-order(front-to-back order) of the child objects at the two
- * specified index positions in the child list. All other child objects in
- * the display object container remain in the same index positions.
- *
- * @param index1 The index position of the first child object.
- * @param index2 The index position of the second child object.
- * @throws RangeError If either index does not exist in the child list.
- */
- DisplayObjectContainer.prototype.swapChildrenAt = function (index1 /*int*/ , index2 /*int*/ ) {
- //TODO
- };
+ Object.defineProperty(LineSegment.prototype, "thickness", {
+ /**
+ *
+ */
+ get: function () {
+ return this._halfThickness * 2;
+ },
+ set: function (value) {
+ if (this._halfThickness == value)
+ return;
- /**
- * @protected
- */
- DisplayObjectContainer.prototype.pInvalidateSceneTransform = function () {
- _super.prototype.pInvalidateSceneTransform.call(this);
+ this._halfThickness = value * 0.5;
- var len = this._children.length;
- for (var i = 0; i < len; ++i)
- this._children[i++].pInvalidateSceneTransform();
- };
+ this.notifyRenderableUpdate();
+ },
+ enumerable: true,
+ configurable: true
+ });
- /**
- * @protected
- */
- DisplayObjectContainer.prototype._pUpdateScene = function (value) {
- _super.prototype._pUpdateScene.call(this, value);
- var len = this._children.length;
- for (var i = 0; i < len; ++i)
- this._children[i]._pUpdateScene(value);
+ Object.defineProperty(LineSegment.prototype, "uvTransform", {
+ /**
+ *
+ */
+ get: function () {
+ return this._uvTransform;
+ },
+ set: function (value) {
+ this._uvTransform = value;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ LineSegment.prototype.dispose = function () {
+ this._startPosition = null;
+ this._endPosition = null;
};
/**
* @protected
*/
- DisplayObjectContainer.prototype._pUpdateImplicitMouseEnabled = function (value) {
- _super.prototype._pUpdateImplicitMouseEnabled.call(this, value);
-
- var len = this._children.length;
- for (var i = 0; i < len; ++i)
- this._children[i]._pUpdateImplicitMouseEnabled(this._mouseChildren);
+ LineSegment.prototype.pCreateEntityPartitionNode = function () {
+ return new away.partition.EntityNode(this);
};
/**
* @protected
*/
- DisplayObjectContainer.prototype._pUpdateImplicitVisibility = function (value) {
- _super.prototype._pUpdateImplicitVisibility.call(this, value);
+ LineSegment.prototype.pUpdateBounds = function () {
+ this._pBounds.fromExtremes(this._startPosition.x, this._startPosition.y, this._startPosition.z, this._endPosition.x, this._endPosition.y, this._endPosition.z);
- var len = this._children.length;
- for (var i = 0; i < len; ++i)
- this._children[i]._pUpdateImplicitVisibility(this._pImplicitVisibility);
+ _super.prototype.pUpdateBounds.call(this);
};
/**
- * @protected
+ * @private
*/
- DisplayObjectContainer.prototype._pUpdateImplicitPartition = function (value) {
- _super.prototype._pUpdateImplicitPartition.call(this, value);
-
- var len = this._children.length;
- for (var i = 0; i < len; ++i)
- this._children[i]._pUpdateImplicitPartition(this._pImplicitPartition);
+ LineSegment.prototype.onSizeChanged = function (event) {
+ this.notifyRenderableUpdate();
};
/**
* @private
- *
- * @param child
*/
- DisplayObjectContainer.prototype.removeChildInternal = function (child) {
- this._children.splice(this.getChildIndex(child), 1);
+ LineSegment.prototype.notifyRenderableUpdate = function () {
+ var len = this._pRenderables.length;
+ for (var i = 0; i < len; i++)
+ this._pRenderables[i].invalidateVertexData("vertices"); //TODO
+ };
- return child;
+ LineSegment.prototype._iCollectRenderables = function (renderer) {
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the sub-meshes, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
+
+ this._iCollectRenderable(renderer);
};
- return DisplayObjectContainer;
+
+ LineSegment.prototype._iCollectRenderable = function (renderer) {
+ //TODO
+ };
+ return LineSegment;
})(away.base.DisplayObject);
- containers.DisplayObjectContainer = DisplayObjectContainer;
- })(away.containers || (away.containers = {}));
- var containers = away.containers;
+ entities.LineSegment = LineSegment;
+ })(away.entities || (away.entities = {}));
+ var entities = away.entities;
})(away || (away = {}));
///
-///
var away;
(function (away) {
- /**
- * The Billboard class represents display objects that represent bitmap images.
- * These can be images that you load with the flash.Assets or
- * flash.display.Loader classes, or they can be images that you
- * create with the Billboard() constructor.
- *
- *
The Billboard() constructor allows you to create a Billboard
- * object that contains a reference to a BitmapData object. After you create a
- * Billboard object, use the addChild() or addChildAt()
- * method of the parent DisplayObjectContainer instance to place the bitmap on
- * the display list.
- *
- *
A Billboard object can share its BitmapData reference among several Billboard
- * objects, independent of translation or rotation properties. Because you can
- * create multiple Billboard objects that reference the same BitmapData object,
- * multiple display objects can use the same complex BitmapData object without
- * incurring the memory overhead of a BitmapData object for each display
- * object instance.
- *
- *
A BitmapData object can be drawn to the screen by a Billboard object in one
- * of two ways: by using the default hardware renderer with a single hardware surface,
- * or by using the slower software renderer when 3D acceleration is not available.
- *
- *
If you would prefer to perform a batch rendering command, rather than using a
- * single surface for each Billboard object, you can also draw to the screen using the
- * drawTiles() or drawTriangles() methods which are
- * available to flash.display.Tilesheet and flash.display.Graphics
- * objects.
- *
- *
Note: The Billboard class is not a subclass of the InteractiveObject
- * class, so it cannot dispatch mouse events. However, you can use the
- * addEventListener() method of the display object container that
- * contains the Billboard object.
- */
(function (entities) {
- var MaterialEvent = away.events.MaterialEvent;
- var Matrix3D = away.geom.Matrix3D;
+ var Delegate = away.utils.Delegate;
+
+ var SubGeometryBase = away.base.SubGeometryBase;
+ var SubGeometry = away.base.TriangleSubGeometry;
+
+ var Geometry = away.base.Geometry;
+ var GeometryEvent = away.events.GeometryEvent;
var UVTransform = away.geom.UVTransform;
- var Billboard = (function (_super) {
- __extends(Billboard, _super);
- function Billboard(material, pixelSnapping, smoothing) {
- if (typeof pixelSnapping === "undefined") { pixelSnapping = "auto"; }
- if (typeof smoothing === "undefined") { smoothing = false; }
- var _this = this;
+ var EntityNode = away.partition.EntityNode;
+
+ /**
+ * Mesh is an instance of a Geometry, augmenting it with a presence in the scene graph, a material, and an animation
+ * state. It consists out of SubMeshes, which in turn correspond to SubGeometries. SubMeshes allow different parts
+ * of the geometry to be assigned different materials.
+ */
+ var Mesh = (function (_super) {
+ __extends(Mesh, _super);
+ /**
+ * Create a new Mesh object.
+ *
+ * @param geometry The geometry used by the mesh that provides it with its shape.
+ * @param material [optional] The material with which to render the Mesh.
+ */
+ function Mesh(geometry, material) {
+ if (typeof material === "undefined") { material = null; }
_super.call(this);
+ this._castsShadows = true;
+ this._shareAnimationGeometry = true;
this._pIsEntity = true;
- this.onSizeChangedDelegate = function (event) {
- return _this.onSizeChanged(event);
- };
+ this._subMeshes = new Array();
- this.material = material;
+ this._onGeometryBoundsInvalidDelegate = Delegate.create(this, this.onGeometryBoundsInvalid);
+ this._onSubGeometryAddedDelegate = Delegate.create(this, this.onSubGeometryAdded);
+ this._onSubGeometryRemovedDelegate = Delegate.create(this, this.onSubGeometryRemoved);
- this._billboardWidth = material.width;
- this._billboardHeight = material.height;
+ //this should never happen, but if people insist on trying to create their meshes before they have geometry to fill it, it becomes necessary
+ this.geometry = geometry || new Geometry();
- this._uvTransform = new UVTransform(this);
+ this.material = material;
}
- Object.defineProperty(Billboard.prototype, "animator", {
+ Object.defineProperty(Mesh.prototype, "animator", {
/**
- * Defines the animator of the mesh. Act on the mesh's geometry. Defaults to null
+ * Defines the animator of the mesh. Act on the mesh's geometry. Default value is null.
*/
get: function () {
return this._animator;
},
+ set: function (value) {
+ if (this._animator)
+ this._animator.removeOwner(this);
+
+ this._animator = value;
+
+ var len = this._subMeshes.length;
+ var subMesh;
+
+ for (var i = 0; i < len; ++i) {
+ subMesh = this._subMeshes[i];
+
+ // cause material to be unregistered and registered again to work with the new animation type (if possible)
+ if (subMesh.material) {
+ subMesh.material.iRemoveOwner(subMesh);
+ subMesh.material.iAddOwner(subMesh);
+ }
+
+ //invalidate any existing renderables in case they need to pull new geometry
+ subMesh._iInvalidateRenderableGeometry();
+ }
+
+ if (this._animator)
+ this._animator.addOwner(this);
+ },
enumerable: true,
configurable: true
});
- Object.defineProperty(Billboard.prototype, "assetType", {
+
+ Object.defineProperty(Mesh.prototype, "assetType", {
/**
*
*/
get: function () {
- return away.library.AssetType.BILLBOARD;
+ return away.library.AssetType.MESH;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(Billboard.prototype, "billboardHeight", {
+ Object.defineProperty(Mesh.prototype, "castsShadows", {
/**
- *
+ * Indicates whether or not the Mesh can cast shadows. Default value is true.
*/
get: function () {
- return this._billboardHeight;
+ return this._castsShadows;
+ },
+ set: function (value) {
+ this._castsShadows = value;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(Billboard.prototype, "billboardWidth", {
+
+ Object.defineProperty(Mesh.prototype, "geometry", {
/**
- *
+ * The geometry used by the mesh that provides it with its shape.
*/
get: function () {
- return this._billboardWidth;
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
+
+ return this._geometry;
+ },
+ set: function (value) {
+ var i;
+
+ if (this._geometry) {
+ this._geometry.removeEventListener(GeometryEvent.BOUNDS_INVALID, this._onGeometryBoundsInvalidDelegate);
+ this._geometry.removeEventListener(GeometryEvent.SUB_GEOMETRY_ADDED, this._onSubGeometryAddedDelegate);
+ this._geometry.removeEventListener(GeometryEvent.SUB_GEOMETRY_REMOVED, this._onSubGeometryRemovedDelegate);
+
+ for (i = 0; i < this._subMeshes.length; ++i)
+ this._subMeshes[i].dispose();
+
+ this._subMeshes.length = 0;
+ }
+
+ this._geometry = value;
+
+ if (this._geometry) {
+ this._geometry.addEventListener(GeometryEvent.BOUNDS_INVALID, this._onGeometryBoundsInvalidDelegate);
+ this._geometry.addEventListener(GeometryEvent.SUB_GEOMETRY_ADDED, this._onSubGeometryAddedDelegate);
+ this._geometry.addEventListener(GeometryEvent.SUB_GEOMETRY_REMOVED, this._onSubGeometryRemovedDelegate);
+
+ var subGeoms = this._geometry.subGeometries;
+
+ for (i = 0; i < subGeoms.length; ++i)
+ this.addSubMesh(subGeoms[i]);
+ }
},
enumerable: true,
configurable: true
});
- Object.defineProperty(Billboard.prototype, "material", {
+
+ Object.defineProperty(Mesh.prototype, "material", {
/**
- *
+ * The material with which to render the Mesh.
*/
get: function () {
return this._material;
@@ -20084,356 +23928,279 @@ var away;
if (value == this._material)
return;
- if (this._material) {
- this._material.iRemoveOwner(this);
- this._material.removeEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate);
- }
+ var i;
+ var len = this._subMeshes.length;
+ var subMesh;
+
+ for (i = 0; i < len; i++)
+ if (this._material && (subMesh = this._subMeshes[i]).material == this._material)
+ this._material.iRemoveOwner(subMesh);
this._material = value;
- if (this._material) {
- this._material.iAddOwner(this);
- this._material.addEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate);
- }
+ for (i = 0; i < len; i++)
+ if (this._material && (subMesh = this._subMeshes[i]).material == this._material)
+ this._material.iAddOwner(subMesh);
},
enumerable: true,
configurable: true
});
- Object.defineProperty(Billboard.prototype, "sourceEntity", {
+ Object.defineProperty(Mesh.prototype, "shareAnimationGeometry", {
/**
- *
+ * Indicates whether or not the mesh share the same animation geometry.
*/
get: function () {
- return this;
+ return this._shareAnimationGeometry;
+ },
+ set: function (value) {
+ this._shareAnimationGeometry = value;
},
enumerable: true,
configurable: true
});
- Object.defineProperty(Billboard.prototype, "uvTransform", {
+
+ Object.defineProperty(Mesh.prototype, "subMeshes", {
+ /**
+ * The SubMeshes out of which the Mesh consists. Every SubMesh can be assigned a material to override the Mesh's
+ * material.
+ */
+ get: function () {
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the sub-meshes, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
+
+ return this._subMeshes;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(Mesh.prototype, "uvTransform", {
/**
*
*/
get: function () {
return this._uvTransform;
},
+ set: function (value) {
+ this._uvTransform = value;
+ },
enumerable: true,
configurable: true
});
+
/**
- * @protected
+ *
*/
- Billboard.prototype.pCreateEntityPartitionNode = function () {
- return new away.partition.EntityNode(this);
+ Mesh.prototype.bakeTransformations = function () {
+ this.geometry.applyTransformation(this._iMatrix3D);
+ this._iMatrix3D.identity();
};
/**
- * @protected
+ * @inheritDoc
*/
- Billboard.prototype.pUpdateBounds = function () {
- this._pBounds.fromExtremes(0, 0, 0, this._billboardWidth, this._billboardHeight, 0);
+ Mesh.prototype.dispose = function () {
+ _super.prototype.dispose.call(this);
- _super.prototype.pUpdateBounds.call(this);
+ this.material = null;
+ this.geometry = null;
};
/**
- * @internal
+ * Disposes mesh including the animator and children. This is a merely a convenience method.
+ * @return
*/
- Billboard.prototype._iSetUVMatrixComponents = function (offsetU, offsetV, scaleU, scaleV, rotationUV) {
+ Mesh.prototype.disposeWithAnimatorAndChildren = function () {
+ this.disposeWithChildren();
+
+ if (this._animator)
+ this._animator.dispose();
};
/**
- * //TODO
+ * Clones this Mesh instance along with all it's children, while re-using the same
+ * material, geometry and animation set. The returned result will be a copy of this mesh,
+ * containing copies of all of it's children.
*
- * @param shortestCollisionDistance
- * @param findClosest
- * @returns {boolean}
+ * Properties that are re-used (i.e. not cloned) by the new copy include name,
+ * geometry, and material. Properties that are cloned or created anew for the copy
+ * include subMeshes, children of the mesh, and the animator.
*
- * @internal
+ * If you want to copy just the mesh, reusing it's geometry and material while not
+ * cloning it's children, the simplest way is to create a new mesh manually:
+ *
+ *
+ * var clone : Mesh = new Mesh(original.geometry, original.material);
+ *
*/
- Billboard.prototype._iTestCollision = function (shortestCollisionDistance, findClosest) {
- return this._pPickingCollider.testBillboardCollision(this, this._pPickingCollisionVO, shortestCollisionDistance);
- };
+ Mesh.prototype.clone = function () {
+ var clone = new Mesh(this._geometry, this._material);
- /**
- * @private
- */
- Billboard.prototype.onSizeChanged = function (event) {
- this._billboardWidth = this._material.width;
- this._billboardHeight = this._material.height;
+ clone._iMatrix3D = this._iMatrix3D;
+ clone.pivot = this.pivot;
+ clone.partition = this.partition;
+ clone.bounds = this.bounds.clone();
- var len = this._pRenderables.length;
- for (var i = 0; i < len; i++)
- this._pRenderables[i]._iUpdate();
- };
- return Billboard;
- })(away.base.DisplayObject);
- entities.Billboard = Billboard;
- })(away.entities || (away.entities = {}));
- var entities = away.entities;
-})(away || (away = {}));
-///
-var away;
-(function (away) {
- (function (entities) {
- var Camera = (function (_super) {
- __extends(Camera, _super);
- function Camera(projection) {
- if (typeof projection === "undefined") { projection = null; }
- _super.call(this);
- this._viewProjection = new away.geom.Matrix3D();
- this._viewProjectionDirty = true;
- this._frustumPlanesDirty = true;
+ clone.name = this.name;
+ clone.castsShadows = this.castsShadows;
+ clone.shareAnimationGeometry = this.shareAnimationGeometry;
+ clone.mouseEnabled = this.mouseEnabled;
+ clone.mouseChildren = this.mouseChildren;
- this._pIsEntity = true;
+ //this is of course no proper cloning
+ //maybe use this instead?: http://blog.another-d-mention.ro/programming/how-to-clone-duplicate-an-object-in-actionscript-3/
+ clone.extra = this.extra;
- this._onProjectionMatrixChangedDelegate = away.utils.Delegate.create(this, this.onProjectionMatrixChanged);
+ var len = this._subMeshes.length;
+ for (var i = 0; i < len; ++i)
+ clone._subMeshes[i].material = this._subMeshes[i]._iGetExplicitMaterial();
- this._projection = projection || new away.projections.PerspectiveProjection();
- this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED, this._onProjectionMatrixChangedDelegate);
+ len = this.numChildren;
+ var obj;
- this._frustumPlanes = [];
+ for (i = 0; i < len; ++i) {
+ obj = this.getChildAt(i).clone();
+ clone.addChild(obj);
+ }
- for (var i = 0; i < 6; ++i)
- this._frustumPlanes[i] = new away.geom.Plane3D();
+ if (this._animator)
+ clone.animator = this._animator.clone();
- this.z = -1000;
- }
- Camera.prototype.pCreateDefaultBoundingVolume = function () {
- return new away.bounds.NullBounds();
+ return clone;
};
/**
- * @protected
+ * //TODO
+ *
+ * @param subGeometry
+ * @returns {SubMeshBase}
*/
- Camera.prototype.pCreateEntityPartitionNode = function () {
- return new away.partition.CameraNode(this);
- };
-
- Object.defineProperty(Camera.prototype, "assetType", {
- //@override
- get: function () {
- return away.library.AssetType.CAMERA;
- },
- enumerable: true,
- configurable: true
- });
-
- Camera.prototype.onProjectionMatrixChanged = function (event) {
- this._viewProjectionDirty = true;
- this._frustumPlanesDirty = true;
- this.dispatchEvent(event);
+ Mesh.prototype.getSubMeshFromSubGeometry = function (subGeometry) {
+ return this._subMeshes[this._geometry.subGeometries.indexOf(subGeometry)];
};
- Object.defineProperty(Camera.prototype, "frustumPlanes", {
- get: function () {
- if (this._frustumPlanesDirty)
- this.updateFrustum();
-
- return this._frustumPlanes;
- },
- enumerable: true,
- configurable: true
- });
-
- Camera.prototype.updateFrustum = function () {
- var a, b, c;
-
- //var d : Number;
- var c11, c12, c13, c14;
- var c21, c22, c23, c24;
- var c31, c32, c33, c34;
- var c41, c42, c43, c44;
- var p;
- var raw = new Array(16);
- ;
- var invLen;
- this.viewProjection.copyRawDataTo(raw);
-
- c11 = raw[0];
- c12 = raw[4];
- c13 = raw[8];
- c14 = raw[12];
- c21 = raw[1];
- c22 = raw[5];
- c23 = raw[9];
- c24 = raw[13];
- c31 = raw[2];
- c32 = raw[6];
- c33 = raw[10];
- c34 = raw[14];
- c41 = raw[3];
- c42 = raw[7];
- c43 = raw[11];
- c44 = raw[15];
-
- // left plane
- p = this._frustumPlanes[0];
- a = c41 + c11;
- b = c42 + c12;
- c = c43 + c13;
- invLen = 1 / Math.sqrt(a * a + b * b + c * c);
- p.a = a * invLen;
- p.b = b * invLen;
- p.c = c * invLen;
- p.d = -(c44 + c14) * invLen;
-
- // right plane
- p = this._frustumPlanes[1];
- a = c41 - c11;
- b = c42 - c12;
- c = c43 - c13;
- invLen = 1 / Math.sqrt(a * a + b * b + c * c);
- p.a = a * invLen;
- p.b = b * invLen;
- p.c = c * invLen;
- p.d = (c14 - c44) * invLen;
-
- // bottom
- p = this._frustumPlanes[2];
- a = c41 + c21;
- b = c42 + c22;
- c = c43 + c23;
- invLen = 1 / Math.sqrt(a * a + b * b + c * c);
- p.a = a * invLen;
- p.b = b * invLen;
- p.c = c * invLen;
- p.d = -(c44 + c24) * invLen;
-
- // top
- p = this._frustumPlanes[3];
- a = c41 - c21;
- b = c42 - c22;
- c = c43 - c23;
- invLen = 1 / Math.sqrt(a * a + b * b + c * c);
- p.a = a * invLen;
- p.b = b * invLen;
- p.c = c * invLen;
- p.d = (c24 - c44) * invLen;
-
- // near
- p = this._frustumPlanes[4];
- a = c31;
- b = c32;
- c = c33;
- invLen = 1 / Math.sqrt(a * a + b * b + c * c);
- p.a = a * invLen;
- p.b = b * invLen;
- p.c = c * invLen;
- p.d = -c34 * invLen;
-
- // far
- p = this._frustumPlanes[5];
- a = c41 - c31;
- b = c42 - c32;
- c = c43 - c33;
- invLen = 1 / Math.sqrt(a * a + b * b + c * c);
- p.a = a * invLen;
- p.b = b * invLen;
- p.c = c * invLen;
- p.d = (c34 - c44) * invLen;
-
- this._frustumPlanesDirty = false;
+ /**
+ * @protected
+ */
+ Mesh.prototype.pCreateEntityPartitionNode = function () {
+ return new away.partition.EntityNode(this);
};
/**
+ * //TODO
+ *
* @protected
*/
- Camera.prototype.pInvalidateSceneTransform = function () {
- _super.prototype.pInvalidateSceneTransform.call(this);
+ Mesh.prototype.pUpdateBounds = function () {
+ this._pBounds.fromGeometry(this._geometry);
- this._viewProjectionDirty = true;
- this._frustumPlanesDirty = true;
+ _super.prototype.pUpdateBounds.call(this);
};
/**
- * @protected
+ * //TODO
+ *
+ * @private
*/
- Camera.prototype.pUpdateBounds = function () {
- this._pBoundsInvalid = false;
- this._pBounds.nullify();
+ Mesh.prototype.onGeometryBoundsInvalid = function (event) {
+ this.pInvalidateBounds();
};
- Object.defineProperty(Camera.prototype, "projection", {
- /**
- *
- */
- get: function () {
- return this._projection;
- },
- set: function (value) {
- if (this._projection == value)
- return;
-
- if (!value)
- throw new Error("Projection cannot be null!");
+ /**
+ * Called when a SubGeometry was added to the Geometry.
+ *
+ * @private
+ */
+ Mesh.prototype.onSubGeometryAdded = function (event) {
+ this.addSubMesh(event.subGeometry);
+ };
- this._projection.removeEventListener(away.events.ProjectionEvent.MATRIX_CHANGED, this._onProjectionMatrixChangedDelegate);
- this._projection = value;
- this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED, this._onProjectionMatrixChangedDelegate);
- this.dispatchEvent(new away.events.CameraEvent(away.events.CameraEvent.PROJECTION_CHANGED, this));
- },
- enumerable: true,
- configurable: true
- });
+ /**
+ * Called when a SubGeometry was removed from the Geometry.
+ *
+ * @private
+ */
+ Mesh.prototype.onSubGeometryRemoved = function (event) {
+ var subMesh;
+ var subGeom = event.subGeometry;
+ var len = this._subMeshes.length;
+ var i;
+ for (i = 0; i < len; ++i) {
+ subMesh = this._subMeshes[i];
- Object.defineProperty(Camera.prototype, "viewProjection", {
- /**
- *
- */
- get: function () {
- if (this._viewProjectionDirty) {
- this._viewProjection.copyFrom(this.inverseSceneTransform);
- this._viewProjection.append(this._projection.matrix);
- this._viewProjectionDirty = false;
+ if (subMesh.subGeometry == subGeom) {
+ subMesh.dispose();
+
+ this._subMeshes.splice(i, 1);
+
+ break;
}
+ }
- return this._viewProjection;
- },
- enumerable: true,
- configurable: true
- });
+ --len;
+ for (; i < len; ++i)
+ this._subMeshes[i]._iIndex = i;
+ };
/**
- * Calculates the ray in scene space from the camera to the given normalized coordinates in screen space.
+ * Adds a SubMeshBase wrapping a SubGeometry.
*
- * @param nX The normalised x coordinate in screen space, -1 corresponds to the left edge of the viewport, 1 to the right.
- * @param nY The normalised y coordinate in screen space, -1 corresponds to the top edge of the viewport, 1 to the bottom.
- * @param sZ The z coordinate in screen space, representing the distance into the screen.
- * @return The ray from the camera to the scene space position of the given screen coordinates.
+ * @param subGeometry
*/
- Camera.prototype.getRay = function (nX, nY, sZ) {
- return this.sceneTransform.deltaTransformVector(this._projection.unproject(nX, nY, sZ));
+ Mesh.prototype.addSubMesh = function (subGeometry) {
+ var SubMeshClass = subGeometry.subMeshClass;
+
+ var subMesh = new SubMeshClass(subGeometry, this, null);
+ var len = this._subMeshes.length;
+
+ subMesh._iIndex = len;
+
+ this._subMeshes[len] = subMesh;
+
+ this.pInvalidateBounds();
};
/**
- * Calculates the normalised position in screen space of the given scene position.
+ * //TODO
*
- * @param point3d the position vector of the scene coordinates to be projected.
- * @return The normalised screen position of the given scene coordinates.
+ * @param shortestCollisionDistance
+ * @param findClosest
+ * @returns {boolean}
+ *
+ * @internal
*/
- Camera.prototype.project = function (point3d) {
- return this._projection.project(this.inverseSceneTransform.transformVector(point3d));
+ Mesh.prototype._iTestCollision = function (shortestCollisionDistance, findClosest) {
+ return this._pPickingCollider.testMeshCollision(this, this._pPickingCollisionVO, shortestCollisionDistance, findClosest);
};
/**
- * Calculates the scene position of the given normalized coordinates in screen space.
*
- * @param nX The normalised x coordinate in screen space, minus the originX offset of the projection property.
- * @param nY The normalised y coordinate in screen space, minus the originY offset of the projection property.
- * @param sZ The z coordinate in screen space, representing the distance into the screen.
- * @return The scene position of the given screen coordinates.
+ * @param renderer
+ *
+ * @internal
*/
- Camera.prototype.unproject = function (nX, nY, sZ) {
- return this.sceneTransform.transformVector(this._projection.unproject(nX, nY, sZ));
+ Mesh.prototype._iCollectRenderables = function (renderer) {
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the sub-meshes, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
+
+ var len = this._subMeshes.length;
+ for (var i = 0; i < len; i++)
+ this._subMeshes[i]._iCollectRenderable(renderer);
};
- return Camera;
+ return Mesh;
})(away.containers.DisplayObjectContainer);
- entities.Camera = Camera;
+ entities.Mesh = Mesh;
})(away.entities || (away.entities = {}));
var entities = away.entities;
})(away || (away = {}));
@@ -20482,6 +24249,141 @@ var away;
})(away || (away = {}));
///
var away;
+(function (away) {
+ (function (entities) {
+ var UVTransform = away.geom.UVTransform;
+
+ /**
+ * A Skybox class is used to render a sky in the scene. It's always considered static and 'at infinity', and as
+ * such it's always centered at the camera's position and sized to exactly fit within the camera's frustum, ensuring
+ * the sky box is always as large as possible without being clipped.
+ */
+ var Skybox = (function (_super) {
+ __extends(Skybox, _super);
+ /**
+ * Create a new Skybox object.
+ *
+ * @param material The material with which to render the Skybox.
+ */
+ function Skybox(material) {
+ _super.call(this);
+
+ this._pIsEntity = true;
+
+ this.material = material;
+ }
+ Object.defineProperty(Skybox.prototype, "animator", {
+ get: function () {
+ return this._animator;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Object.defineProperty(Skybox.prototype, "uvTransform", {
+ /**
+ *
+ */
+ get: function () {
+ return this._uvTransform;
+ },
+ set: function (value) {
+ this._uvTransform = value;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(Skybox.prototype, "material", {
+ /**
+ * The material with which to render the Skybox.
+ */
+ get: function () {
+ return this._material;
+ },
+ set: function (value) {
+ if (value == this._material)
+ return;
+
+ if (this._material)
+ this._material.iRemoveOwner(this);
+
+ this._material = value;
+
+ if (this._material)
+ this._material.iAddOwner(this);
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+
+ Object.defineProperty(Skybox.prototype, "assetType", {
+ get: function () {
+ return away.library.AssetType.SKYBOX;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ /**
+ * @protected
+ */
+ Skybox.prototype.pInvalidateBounds = function () {
+ // dead end
+ };
+
+ /**
+ * @protected
+ */
+ Skybox.prototype.pCreateEntityPartitionNode = function () {
+ return new away.partition.SkyboxNode(this);
+ };
+
+ /**
+ * @protected
+ */
+ Skybox.prototype.pGetDefaultBoundingVolume = function () {
+ return new away.bounds.NullBounds();
+ };
+
+ /**
+ * @protected
+ */
+ Skybox.prototype.pUpdateBounds = function () {
+ this._pBoundsInvalid = false;
+ };
+
+ Object.defineProperty(Skybox.prototype, "castsShadows", {
+ get: function () {
+ return false;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ Skybox.prototype._iCollectRenderables = function (renderer) {
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the sub-meshes, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
+
+ this._iCollectRenderable(renderer);
+ };
+
+ Skybox.prototype._iCollectRenderable = function (renderer) {
+ renderer.applySkybox(this);
+ };
+ return Skybox;
+ })(away.base.DisplayObject);
+ entities.Skybox = Skybox;
+ })(away.entities || (away.entities = {}));
+ var entities = away.entities;
+})(away || (away = {}));
+///
+var away;
(function (away) {
/**
* The TextField class is used to create display objects for text display and
@@ -23985,8 +27887,8 @@ var away;
View.prototype.project = function (point3d) {
var v = this._pCamera.project(point3d);
- v.x = (v.x * this._pRenderer.viewPort.width + this._width * this._pCamera.projection.originX) / 2.0;
- v.y = (v.y * this._pRenderer.viewPort.height + this._height * this._pCamera.projection.originY) / 2.0;
+ v.x = v.x * this._pRenderer.viewPort.width / 2 + this._width * this._pCamera.projection.originX;
+ v.y = v.y * this._pRenderer.viewPort.height / 2 + this._height * this._pCamera.projection.originY;
return v;
};
@@ -24034,11 +27936,19 @@ var away;
var away;
(function (away) {
(function (bounds) {
+ var Geometry = away.base.Geometry;
+ var SubGeometryBase = away.base.SubGeometryBase;
+
+ var Box = away.geom.Box;
+ var Matrix3D = away.geom.Matrix3D;
+ var Plane3D = away.geom.Plane3D;
+ var Vector3D = away.geom.Vector3D;
+
var BoundingVolumeBase = (function () {
function BoundingVolumeBase() {
this._pAabbPoints = new Array();
this._pAabbPointsDirty = true;
- this._aabb = new away.geom.Box();
+ this._aabb = new Box();
}
Object.defineProperty(BoundingVolumeBase.prototype, "aabb", {
get: function () {
@@ -24126,6 +28036,62 @@ var away;
this.fromExtremes(minX, minY, minZ, maxX, maxY, maxZ);
};
+ /**
+ * Updates the bounds to fit a Geometry object.
+ *
+ * @param geometry The Geometry object to be bounded.
+ */
+ BoundingVolumeBase.prototype.fromGeometry = function (geometry) {
+ var i, j, p;
+ var subGeoms = geometry.subGeometries;
+ var subGeom;
+ var boundingPositions;
+ var numSubGeoms = subGeoms.length;
+ var minX, minY, minZ;
+ var maxX, maxY, maxZ;
+
+ if (numSubGeoms > 0) {
+ i = 0;
+ subGeom = subGeoms[0];
+ boundingPositions = subGeom.getBoundingPositions();
+ minX = maxX = boundingPositions[i];
+ minY = maxY = boundingPositions[i + 1];
+ minZ = maxZ = boundingPositions[i + 2];
+
+ j = numSubGeoms;
+ while (j--) {
+ subGeom = subGeoms[j];
+ boundingPositions = subGeom.getBoundingPositions();
+ i = boundingPositions.length;
+ while (i--) {
+ p = boundingPositions[i];
+ if (p < minX)
+ minX = p;
+ else if (p > maxX)
+ maxX = p;
+
+ p = boundingPositions[i + 1];
+
+ if (p < minY)
+ minY = p;
+ else if (p > maxY)
+ maxY = p;
+
+ p = boundingPositions[i + 2];
+
+ if (p < minZ)
+ minZ = p;
+ else if (p > maxZ)
+ maxZ = p;
+ }
+ }
+
+ this.fromExtremes(minX, minY, minZ, maxX, maxY, maxZ);
+ } else {
+ this.fromExtremes(0, 0, 0, 0, 0, 0);
+ }
+ };
+
BoundingVolumeBase.prototype.fromSphere = function (center, radius) {
this.fromExtremes(center.x - radius, center.y - radius, center.z - radius, center.x + radius, center.y + radius, center.z + radius);
};
@@ -24987,6 +28953,9 @@ var away;
var away;
(function (away) {
(function (controllers) {
+ var MathConsts = away.geom.MathConsts;
+ var Vector3D = away.geom.Vector3D;
+
/**
* Extended camera used to hover round a specified target object.
*
@@ -25023,6 +28992,7 @@ var away;
this._steps = 8;
this._yFactor = 2;
this._wrapPanAngle = false;
+ this._upAxis = new Vector3D();
this.distance = distance;
this.panAngle = panAngle;
@@ -25308,11 +29278,20 @@ var away;
}
var pos = (this.lookAtObject) ? this.lookAtObject.transform.position : (this.lookAtPosition) ? this.lookAtPosition : this._pOrigin;
- this.targetObject.x = pos.x + this.distance * Math.sin(this._iCurrentPanAngle * away.geom.MathConsts.DEGREES_TO_RADIANS) * Math.cos(this._iCurrentTiltAngle * away.geom.MathConsts.DEGREES_TO_RADIANS);
- this.targetObject.y = pos.y + this.distance * Math.sin(this._iCurrentTiltAngle * away.geom.MathConsts.DEGREES_TO_RADIANS) * this.yFactor;
- this.targetObject.z = pos.z + this.distance * Math.cos(this._iCurrentPanAngle * away.geom.MathConsts.DEGREES_TO_RADIANS) * Math.cos(this._iCurrentTiltAngle * away.geom.MathConsts.DEGREES_TO_RADIANS);
+ this.targetObject.x = pos.x + this.distance * Math.sin(this._iCurrentPanAngle * MathConsts.DEGREES_TO_RADIANS) * Math.cos(this._iCurrentTiltAngle * MathConsts.DEGREES_TO_RADIANS);
+ this.targetObject.y = pos.y + this.distance * Math.sin(this._iCurrentTiltAngle * MathConsts.DEGREES_TO_RADIANS) * this.yFactor;
+ this.targetObject.z = pos.z + this.distance * Math.cos(this._iCurrentPanAngle * MathConsts.DEGREES_TO_RADIANS) * Math.cos(this._iCurrentTiltAngle * MathConsts.DEGREES_TO_RADIANS);
- _super.prototype.update.call(this);
+ this._upAxis.x = -Math.sin(this._iCurrentPanAngle * MathConsts.DEGREES_TO_RADIANS) * Math.sin(this._iCurrentTiltAngle * MathConsts.DEGREES_TO_RADIANS);
+ this._upAxis.y = Math.cos(this._iCurrentTiltAngle * MathConsts.DEGREES_TO_RADIANS);
+ this._upAxis.z = -Math.cos(this._iCurrentPanAngle * MathConsts.DEGREES_TO_RADIANS) * Math.sin(this._iCurrentTiltAngle * MathConsts.DEGREES_TO_RADIANS);
+
+ if (this._pTargetObject) {
+ if (this._pLookAtPosition)
+ this._pTargetObject.lookAt(this._pLookAtPosition, this._upAxis);
+ else if (this._pLookAtObject)
+ this._pTargetObject.lookAt(this._pLookAtObject.scene ? this._pLookAtObject.scenePosition : this._pLookAtObject.transform.position, this._upAxis);
+ }
};
return HoverController;
})(away.controllers.LookAtController);
@@ -25986,6 +29965,106 @@ var away;
var materials = away.materials;
})(away || (away = {}));
///
+var away;
+(function (away) {
+ (function (prefabs) {
+ var DisplayObject = away.base.DisplayObject;
+
+ // import BatchObject = away.base.BatchObject;
+ var AbstractMethodError = away.errors.AbstractMethodError;
+
+ /**
+ * PrefabBase is an abstract base class for prefabs, which are prebuilt display objects that allow easy cloning and updating
+ */
+ var PrefabBase = (function (_super) {
+ __extends(PrefabBase, _super);
+ // public _pBatchObjects:Array = new Array();
+ /**
+ * Creates a new PrefabBase object.
+ */
+ function PrefabBase() {
+ _super.call(this);
+ this._pObjects = new Array();
+ }
+ /**
+ * Returns a display object generated from this prefab
+ */
+ PrefabBase.prototype.getNewObject = function () {
+ var object = this._pCreateObject();
+
+ this._pObjects.push(object);
+
+ return object;
+ };
+
+ // public getNewBatchObject():BatchObject
+ // {
+ // var object:BatchObject = this._pCreateBatchObject();
+ //
+ // this._pBatchObjects.push(object);
+ //
+ // return object;
+ // }
+ PrefabBase.prototype._pCreateObject = function () {
+ throw new AbstractMethodError();
+ };
+
+ PrefabBase.prototype._iValidate = function () {
+ // To be overridden when necessary
+ };
+ return PrefabBase;
+ })(away.library.NamedAssetBase);
+ prefabs.PrefabBase = PrefabBase;
+ })(away.prefabs || (away.prefabs = {}));
+ var prefabs = away.prefabs;
+})(away || (away = {}));
+///
+var away;
+(function (away) {
+ (function (animators) {
+ /**
+ * Provides an abstract base class for nodes in an animation blend tree.
+ */
+ var AnimationNodeBase = (function (_super) {
+ __extends(AnimationNodeBase, _super);
+ /**
+ * Creates a new AnimationNodeBase object.
+ */
+ function AnimationNodeBase() {
+ _super.call(this);
+ }
+ Object.defineProperty(AnimationNodeBase.prototype, "stateClass", {
+ get: function () {
+ return this._pStateClass;
+ },
+ enumerable: true,
+ configurable: true
+ });
+
+ /**
+ * @inheritDoc
+ */
+ AnimationNodeBase.prototype.dispose = function () {
+ };
+
+ Object.defineProperty(AnimationNodeBase.prototype, "assetType", {
+ /**
+ * @inheritDoc
+ */
+ get: function () {
+ return away.library.AssetType.ANIMATION_NODE;
+ },
+ enumerable: true,
+ configurable: true
+ });
+ return AnimationNodeBase;
+ })(away.library.NamedAssetBase);
+ animators.AnimationNodeBase = AnimationNodeBase;
+ })(away.animators || (away.animators = {}));
+ var animators = away.animators;
+})(away || (away = {}));
+///
+///
///
var away;
(function (away) {
diff --git a/build/awayjs.next.js.map b/build/awayjs.next.js.map
index 5774bc6d..0ec83806 100644
--- a/build/awayjs.next.js.map
+++ b/build/awayjs.next.js.map
@@ -1 +1 @@
-{"version":3,"file":"awayjs.next.js","sourceRoot":"","sources":["../src/away/errors/Error.ts","../src/away/errors/ArgumentError.ts","../src/away/errors/CastError.ts","../src/away/errors/PartialImplementationError.ts","../src/away/errors/AbstractMethodError.ts","../src/away/errors/DocumentError.ts","../src/away/errors/RangeError.ts","../src/away/events/Event.ts","../src/away/events/AssetEvent.ts","../src/away/events/CameraEvent.ts","../src/away/events/DisplayObjectEvent.ts","../src/away/events/EventDispatcher.ts","../src/away/events/HTTPStatusEvent.ts","../src/away/events/IEventDispatcher.ts","../src/away/events/IOErrorEvent.ts","../src/away/events/ProjectionEvent.ts","../src/away/events/LoaderEvent.ts","../src/away/events/ParserEvent.ts","../src/away/events/MouseEvent.ts","../src/away/events/MaterialEvent.ts","../src/away/events/ProgressEvent.ts","../src/away/events/RendererEvent.ts","../src/away/events/SceneEvent.ts","../src/away/events/StageGLEvent.ts","../src/away/events/TimerEvent.ts","../src/away/utils/ByteArrayBase.ts","../src/away/utils/ByteArray.ts","../src/away/utils/ByteArrayBuffer.ts","../src/away/utils/ColorUtils.ts","../src/away/utils/Cast.ts","../src/away/utils/CSS.ts","../src/away/utils/Debug.ts","../src/away/utils/Delegate.ts","../src/away/utils/getTimer.ts","../src/away/utils/RequestAnimationFrame.ts","../src/away/utils/TextureUtils.ts","../src/away/utils/Timer.ts","../src/away/parsers/ParserBase.ts","../src/away/parsers/BitmapParser.ts","../src/away/parsers/CubeTextureParser.ts","../src/away/parsers/Texture2DParser.ts","../src/away/parsers/ParserDataFormat.ts","../src/away/parsers/ParserUtils.ts","../src/away/parsers/ResourceDependency.ts","../src/away/core/library/IAsset.ts","../src/away/core/library/IDUtil.ts","../src/away/core/library/NamedAssetBase.ts","../src/away/core/library/AssetType.ts","../src/away/core/library/AssetLibraryIterator.ts","../src/away/core/library/ConflictStrategyBase.ts","../src/away/core/library/NumSuffixConflictStrategy.ts","../src/away/core/library/IgnoreConflictStrategy.ts","../src/away/core/library/ErrorConflictStrategy.ts","../src/away/core/library/ConflictPrecedence.ts","../src/away/core/library/ConflictStrategy.ts","../src/away/core/library/AssetLibraryBundle.ts","../src/away/core/library/AssetLibrary.ts","../src/away/core/base/BlendMode.ts","../src/away/core/base/AlignmentMode.ts","../src/away/core/base/OrientationMode.ts","../src/away/core/base/BitmapData.ts","../src/away/core/base/BitmapDataChannel.ts","../src/away/core/base/CapsStyle.ts","../src/away/core/base/DisplayObject.ts","../src/away/core/base/GradientType.ts","../src/away/core/base/Graphics.ts","../src/away/core/base/GraphicsPathWinding.ts","../src/away/core/base/IBitmapDrawable.ts","../src/away/core/base/IGraphicsData.ts","../src/away/core/base/IMaterialOwner.ts","../src/away/core/base/InterpolationMethod.ts","../src/away/core/base/JointStyle.ts","../src/away/core/base/LineScaleMode.ts","../src/away/core/base/LoaderInfo.ts","../src/away/core/base/PixelSnapping.ts","../src/away/core/base/SpreadMethod.ts","../src/away/core/base/StageGL.ts","../src/away/core/base/TriangleCulling.ts","../src/away/core/pool/EntityListItem.ts","../src/away/core/pool/EntityListItemPool.ts","../src/away/core/pool/IRenderable.ts","../src/away/core/pool/IRenderableClass.ts","../src/away/core/pool/RenderablePool.ts","../src/away/core/pool/CSSRenderableBase.ts","../src/away/core/pool/CSSBillboardRenderable.ts","../src/away/core/traverse/ICollector.ts","../src/away/core/traverse/CollectorBase.ts","../src/away/core/traverse/RaycastCollector.ts","../src/away/core/traverse/CSSEntityCollector.ts","../src/away/core/partition/NodeBase.ts","../src/away/core/partition/NullNode.ts","../src/away/core/partition/Partition.ts","../src/away/core/partition/EntityNode.ts","../src/away/core/partition/CameraNode.ts","../src/away/core/pick/IPickingCollider.ts","../src/away/core/pick/IPicker.ts","../src/away/core/pick/PickingCollisionVO.ts","../src/away/core/pick/RaycastPicker.ts","../src/away/core/render/IRenderer.ts","../src/away/core/render/CSSRendererBase.ts","../src/away/core/render/CSSDefaultRenderer.ts","../src/away/core/sort/IEntitySorter.ts","../src/away/core/sort/RenderableMergeSort.ts","../src/away/core/gl/ContextGLClearMask.ts","../src/away/core/gl/VertexBuffer.ts","../src/away/core/gl/IndexBuffer.ts","../src/away/core/gl/Program.ts","../src/away/core/gl/SamplerState.ts","../src/away/core/gl/ContextGLTextureFormat.ts","../src/away/core/gl/TextureBase.ts","../src/away/core/gl/Texture.ts","../src/away/core/gl/CubeTexture.ts","../src/away/core/gl/ContextGLTriangleFace.ts","../src/away/core/gl/ContextGLVertexBufferFormat.ts","../src/away/core/gl/ContextGLProgramType.ts","../src/away/core/gl/ContextGLBlendFactor.ts","../src/away/core/gl/ContextGLCompareMode.ts","../src/away/core/gl/ContextGLMipFilter.ts","../src/away/core/gl/ContextGLProfile.ts","../src/away/core/gl/ContextGLStencilAction.ts","../src/away/core/gl/ContextGLTextureFilter.ts","../src/away/core/gl/ContextGLWrapMode.ts","../src/away/core/gl/ContextGL.ts","../src/away/core/gl/AGLSLContextGL.ts","../src/away/core/geom/Box.ts","../src/away/core/geom/ColorTransform.ts","../src/away/core/geom/Matrix.ts","../src/away/core/geom/Matrix3D.ts","../src/away/core/geom/Orientation3D.ts","../src/away/core/geom/PerspectiveProjection.ts","../src/away/core/geom/Point.ts","../src/away/core/geom/Rectangle.ts","../src/away/core/geom/Transform.ts","../src/away/core/geom/UVTransform.ts","../src/away/core/geom/Vector3D.ts","../src/away/core/geom/MathConsts.ts","../src/away/core/geom/Quaternion.ts","../src/away/core/geom/PlaneClassification.ts","../src/away/core/geom/Plane3D.ts","../src/away/core/geom/Matrix3DUtils.ts","../src/away/core/geom/PoissonLookup.ts","../src/away/core/net/AssetLoaderContext.ts","../src/away/core/net/AssetLoader.ts","../src/away/core/net/AssetLoaderToken.ts","../src/away/core/net/URLRequest.ts","../src/away/core/net/URLLoaderDataFormat.ts","../src/away/core/net/URLRequestMethod.ts","../src/away/core/net/URLLoader.ts","../src/away/core/net/URLVariables.ts","../src/away/core/text/AntiAliasType.ts","../src/away/core/text/GridFitType.ts","../src/away/core/text/TextFieldAutoSize.ts","../src/away/core/text/TextFieldType.ts","../src/away/core/text/TextFormat.ts","../src/away/core/text/TextFormatAlign.ts","../src/away/core/text/TextInteractionMode.ts","../src/away/core/text/TextLineMetrics.ts","../src/away/core/ui/Keyboard.ts","../src/away/containers/DisplayObjectContainer.ts","../src/away/entities/IEntity.ts","../src/away/entities/Billboard.ts","../src/away/entities/Camera.ts","../src/away/entities/Shape.ts","../src/away/entities/TextField.ts","../src/away/projections/CoordinateSystem.ts","../src/away/projections/IProjection.ts","../src/away/projections/ProjectionBase.ts","../src/away/projections/PerspectiveProjection.ts","../src/away/projections/FreeMatrixProjection.ts","../src/away/projections/OrthographicProjection.ts","../src/away/projections/OrthographicOffCenterProjection.ts","../src/away/projections/ObliqueNearPlaneProjection.ts","../src/away/managers/MouseManager.ts","../src/away/managers/RTTBufferManager.ts","../src/away/managers/StageGLManager.ts","../src/away/containers/Loader.ts","../src/away/containers/Scene.ts","../src/away/containers/View.ts","../src/away/bounds/BoundingVolumeBase.ts","../src/away/bounds/NullBounds.ts","../src/away/bounds/BoundingSphere.ts","../src/away/bounds/AxisAlignedBoundingBox.ts","../src/away/controllers/ControllerBase.ts","../src/away/controllers/LookAtController.ts","../src/away/controllers/HoverController.ts","../src/away/controllers/FirstPersonController.ts","../src/away/controllers/FollowController.ts","../src/away/controllers/SpringController.ts","../src/away/materials/IMaterial.ts","../src/away/materials/CSSMaterialBase.ts","../src/away/animators/IAnimator.ts","../src/away/textures/TextureProxyBase.ts","../src/away/textures/Texture2DBase.ts","../src/away/textures/CubeTextureBase.ts","../src/away/textures/ATFData.ts","../src/away/textures/ATFCubeTexture.ts","../src/away/textures/ATFTexture.ts","../src/away/textures/ImageTexture.ts","../src/away/textures/BitmapTexture.ts","../src/away/textures/RenderTexture.ts","../src/away/textures/ImageCubeTexture.ts","../src/away/textures/BitmapCubeTexture.ts","../src/away/textures/MipmapGenerator.ts","../src/away/textures/SpecularBitmapTexture.ts","../src/aglsl/Sampler.ts","../src/aglsl/Token.ts","../src/aglsl/Header.ts","../src/aglsl/OpLUT.ts","../src/aglsl/Description.ts","../src/aglsl/Destination.ts","../src/aglsl/ContextGL.ts","../src/aglsl/Mapping.ts","../src/aglsl/assembler/OpCode.ts","../src/aglsl/assembler/OpcodeMap.ts","../src/aglsl/assembler/Part.ts","../src/aglsl/assembler/RegMap.ts","../src/aglsl/assembler/SamplerMap.ts","../src/aglsl/assembler/AGALMiniAssembler.ts","../src/aglsl/AGALTokenizer.ts","../src/aglsl/Parser.ts","../src/aglsl/AGLSLCompiler.ts","../src/away/_definitions.ts","../src/awayjs.ts"],"names":["away","away.errors","away.errors.Error","away.errors.Error.constructor","away.errors.ArgumentError","away.errors.ArgumentError.constructor","away.errors.CastError","away.errors.CastError.constructor","away.errors.PartialImplementationError","away.errors.PartialImplementationError.constructor","away.errors.AbstractMethodError","away.errors.AbstractMethodError.constructor","away.errors.DocumentError","away.errors.DocumentError.constructor","away.errors.RangeError","away.errors.RangeError.constructor","away.events","away.events.Event","away.events.Event.constructor","away.events.Event.clone","away.events.AssetEvent","away.events.AssetEvent.constructor","away.events.AssetEvent.clone","away.events.CameraEvent","away.events.CameraEvent.constructor","away.events.DisplayObjectEvent","away.events.DisplayObjectEvent.constructor","away.events.EventDispatcher","away.events.EventDispatcher.constructor","away.events.EventDispatcher.addEventListener","away.events.EventDispatcher.removeEventListener","away.events.EventDispatcher.dispatchEvent","away.events.EventDispatcher.getEventListenerIndex","away.events.EventDispatcher.hasEventListener","away.events.HTTPStatusEvent","away.events.HTTPStatusEvent.constructor","away.events.IOErrorEvent","away.events.IOErrorEvent.constructor","away.events.ProjectionEvent","away.events.ProjectionEvent.constructor","away.events.LoaderEvent","away.events.LoaderEvent.constructor","away.events.LoaderEvent.clone","away.events.ParserEvent","away.events.ParserEvent.constructor","away.events.ParserEvent.clone","away.events.MouseEvent","away.events.MouseEvent.constructor","away.events.MouseEvent.stopPropagation","away.events.MouseEvent.stopImmediatePropagation","away.events.MouseEvent.clone","away.events.MaterialEvent","away.events.MaterialEvent.constructor","away.events.ProgressEvent","away.events.ProgressEvent.constructor","away.events.RendererEvent","away.events.RendererEvent.constructor","away.events.SceneEvent","away.events.SceneEvent.constructor","away.events.StageGLEvent","away.events.StageGLEvent.constructor","away.events.TimerEvent","away.events.TimerEvent.constructor","away.utils","away.utils.ByteArrayBase","away.utils.ByteArrayBase.constructor","away.utils.ByteArrayBase.writeByte","away.utils.ByteArrayBase.readByte","away.utils.ByteArrayBase.writeUnsignedByte","away.utils.ByteArrayBase.readUnsignedByte","away.utils.ByteArrayBase.writeUnsignedShort","away.utils.ByteArrayBase.readUnsignedShort","away.utils.ByteArrayBase.writeUnsignedInt","away.utils.ByteArrayBase.readUnsignedInt","away.utils.ByteArrayBase.writeFloat","away.utils.ByteArrayBase.toFloatBits","away.utils.ByteArrayBase.readFloat","away.utils.ByteArrayBase.fromFloatBits","away.utils.ByteArrayBase.getBytesAvailable","away.utils.ByteArrayBase.toString","away.utils.ByteArrayBase.compareEqual","away.utils.ByteArrayBase.writeBase64String","away.utils.ByteArrayBase.dumpToConsole","away.utils.ByteArrayBase.dumpToConsole.asHexString","away.utils.ByteArrayBase.internalGetBase64String","away.utils.ByteArray","away.utils.ByteArray.constructor","away.utils.ByteArray.ensureWriteableSpace","away.utils.ByteArray.setArrayBuffer","away.utils.ByteArray.getBytesAvailable","away.utils.ByteArray.ensureSpace","away.utils.ByteArray.writeByte","away.utils.ByteArray.readByte","away.utils.ByteArray.readBytes","away.utils.ByteArray.writeUnsignedByte","away.utils.ByteArray.readUnsignedByte","away.utils.ByteArray.writeUnsignedShort","away.utils.ByteArray.readUTFBytes","away.utils.ByteArray.readInt","away.utils.ByteArray.readShort","away.utils.ByteArray.readDouble","away.utils.ByteArray.readUnsignedShort","away.utils.ByteArray.writeUnsignedInt","away.utils.ByteArray.readUnsignedInt","away.utils.ByteArray.writeFloat","away.utils.ByteArray.readFloat","away.utils.ByteArrayBuffer","away.utils.ByteArrayBuffer.constructor","away.utils.ByteArrayBuffer.writeByte","away.utils.ByteArrayBuffer.readByte","away.utils.ByteArrayBuffer.writeUnsignedByte","away.utils.ByteArrayBuffer.readUnsignedByte","away.utils.ByteArrayBuffer.writeUnsignedShort","away.utils.ByteArrayBuffer.readUnsignedShort","away.utils.ByteArrayBuffer.writeUnsignedInt","away.utils.ByteArrayBuffer.readUnsignedInt","away.utils.ByteArrayBuffer.writeFloat","away.utils.ByteArrayBuffer.toFloatBits","away.utils.ByteArrayBuffer.readFloat","away.utils.ByteArrayBuffer.fromFloatBits","away.utils.ColorUtils","away.utils.ColorUtils.constructor","away.utils.ColorUtils.float32ColorToARGB","away.utils.ColorUtils.componentToHex","away.utils.ColorUtils.RGBToHexString","away.utils.ColorUtils.ARGBToHexString","away.utils.Cast","away.utils.Cast.constructor","away.utils.Cast.string","away.utils.Cast.byteArray","away.utils.Cast.isHex","away.utils.Cast.tryColor","away.utils.Cast.color","away.utils.Cast.tryClass","away.utils.Cast.bitmapData","away.utils.Cast.bitmapTexture","away.utils.CSS","away.utils.CSS.constructor","away.utils.CSS.setCanvasSize","away.utils.CSS.setCanvasWidth","away.utils.CSS.setCanvasHeight","away.utils.CSS.setCanvasX","away.utils.CSS.setCanvasY","away.utils.CSS.getCanvasVisibility","away.utils.CSS.setCanvasVisibility","away.utils.CSS.setCanvasAlpha","away.utils.CSS.setCanvasPosition","away.Debug","away.Debug.constructor","away.Debug.breakpoint","away.Debug.throwPIROnKeyWordOnly","away.Debug.throwPIR","away.Debug.logPIR","away.Debug.log","away.utils.Delegate","away.utils.Delegate.constructor","away.utils.Delegate.create","away.utils.Delegate.createDelegate","away.utils.getTimer","away.utils.RequestAnimationFrame","away.utils.RequestAnimationFrame.constructor","away.utils.RequestAnimationFrame.setCallback","away.utils.RequestAnimationFrame.start","away.utils.RequestAnimationFrame.stop","away.utils.RequestAnimationFrame._tick","away.utils.TextureUtils","away.utils.TextureUtils.constructor","away.utils.TextureUtils.isBitmapDataValid","away.utils.TextureUtils.isHTMLImageElementValid","away.utils.TextureUtils.isDimensionValid","away.utils.TextureUtils.isPowerOfTwo","away.utils.TextureUtils.getBestPowerOf2","away.utils.Timer","away.utils.Timer.constructor","away.utils.Timer.reset","away.utils.Timer.start","away.utils.Timer.stop","away.utils.Timer.tick","away.parsers","away.parsers.ParserBase","away.parsers.ParserBase.constructor","away.parsers.ParserBase.supportsType","away.parsers.ParserBase.isBitmapDataValid","away.parsers.ParserBase.parseAsync","away.parsers.ParserBase._iResolveDependency","away.parsers.ParserBase._iResolveDependencyFailure","away.parsers.ParserBase._iResolveDependencyName","away.parsers.ParserBase._iResumeParsingAfterDependencies","away.parsers.ParserBase._pFinalizeAsset","away.parsers.ParserBase._pProceedParsing","away.parsers.ParserBase._pDieWithError","away.parsers.ParserBase._pAddDependency","away.parsers.ParserBase._pPauseAndRetrieveDependencies","away.parsers.ParserBase._pHasTime","away.parsers.ParserBase._pOnInterval","away.parsers.ParserBase._pStartParsing","away.parsers.ParserBase._pFinishParsing","away.parsers.ParserBase._pGetTextData","away.parsers.ParserBase._pGetByteData","away.parsers.BitmapParser","away.parsers.BitmapParser.constructor","away.parsers.BitmapParser.supportsType","away.parsers.BitmapParser.supportsData","away.parsers.BitmapParser._pProceedParsing","away.parsers.BitmapParser.onLoadComplete","away.parsers.CubeTextureParser","away.parsers.CubeTextureParser.constructor","away.parsers.CubeTextureParser.supportsType","away.parsers.CubeTextureParser.supportsData","away.parsers.CubeTextureParser._iResolveDependency","away.parsers.CubeTextureParser._iResolveDependencyFailure","away.parsers.CubeTextureParser._pProceedParsing","away.parsers.CubeTextureParser._validateCubeData","away.parsers.CubeTextureParser._getHTMLImageElement","away.parsers.Texture2DParser","away.parsers.Texture2DParser.constructor","away.parsers.Texture2DParser.supportsType","away.parsers.Texture2DParser.supportsData","away.parsers.Texture2DParser._pProceedParsing","away.parsers.ParserDataFormat","away.parsers.ParserDataFormat.constructor","away.parsers.ParserUtils","away.parsers.ParserUtils.constructor","away.parsers.ParserUtils.arrayBufferToImage","away.parsers.ParserUtils.byteArrayToImage","away.parsers.ParserUtils.blobToImage","away.parsers.ParserUtils.toByteArray","away.parsers.ParserUtils.toString","away.parsers.ResourceDependency","away.parsers.ResourceDependency.constructor","away.parsers.ResourceDependency._iSetData","away.parsers.ResourceDependency._iSetParser","away.parsers.ResourceDependency.resolve","away.parsers.ResourceDependency.resolveFailure","away.parsers.ResourceDependency.resolveName","away.library","away.library.IDUtil","away.library.IDUtil.constructor","away.library.IDUtil.createUID","away.library.NamedAssetBase","away.library.NamedAssetBase.constructor","away.library.NamedAssetBase.dispose","away.library.NamedAssetBase.assetPathEquals","away.library.NamedAssetBase.resetAssetPath","away.library.NamedAssetBase.updateFullPath","away.library.AssetType","away.library.AssetType.constructor","away.library.AssetLibraryIterator","away.library.AssetLibraryIterator.constructor","away.library.AssetLibraryIterator.next","away.library.AssetLibraryIterator.reset","away.library.AssetLibraryIterator.setIndex","away.library.AssetLibraryIterator.filter","away.library.ConflictStrategyBase","away.library.ConflictStrategyBase.constructor","away.library.ConflictStrategyBase.resolveConflict","away.library.ConflictStrategyBase.create","away.library.ConflictStrategyBase._pUpdateNames","away.library.NumSuffixConflictStrategy","away.library.NumSuffixConflictStrategy.constructor","away.library.NumSuffixConflictStrategy.resolveConflict","away.library.NumSuffixConflictStrategy.create","away.library.IgnoreConflictStrategy","away.library.IgnoreConflictStrategy.constructor","away.library.IgnoreConflictStrategy.resolveConflict","away.library.IgnoreConflictStrategy.create","away.library.ErrorConflictStrategy","away.library.ErrorConflictStrategy.constructor","away.library.ErrorConflictStrategy.resolveConflict","away.library.ErrorConflictStrategy.create","away.library.ConflictPrecedence","away.library.ConflictPrecedence.constructor","away.library.ConflictStrategy","away.library.ConflictStrategy.constructor","away.library.AssetLibraryBundle","away.library.AssetLibraryBundle.constructor","away.library.AssetLibraryBundle.getInstance","away.library.AssetLibraryBundle.enableParser","away.library.AssetLibraryBundle.enableParsers","away.library.AssetLibraryBundle.createIterator","away.library.AssetLibraryBundle.load","away.library.AssetLibraryBundle.loadData","away.library.AssetLibraryBundle.getAsset","away.library.AssetLibraryBundle.addAsset","away.library.AssetLibraryBundle.removeAsset","away.library.AssetLibraryBundle.removeAssetByName","away.library.AssetLibraryBundle.removeAllAssets","away.library.AssetLibraryBundle.removeNamespaceAssets","away.library.AssetLibraryBundle.removeAssetFromDict","away.library.AssetLibraryBundle.stopAllLoadingSessions","away.library.AssetLibraryBundle.rehashAssetDict","away.library.AssetLibraryBundle.onLoadError","away.library.AssetLibraryBundle.onParseError","away.library.AssetLibraryBundle.onAssetComplete","away.library.AssetLibraryBundle.onTextureSizeError","away.library.AssetLibraryBundle.onResourceComplete","away.library.AssetLibraryBundle.loadingSessionGC","away.library.AssetLibraryBundle.killLoadingSession","away.library.AssetLibraryBundle.onAssetRename","away.library.AssetLibraryBundle.onAssetConflictResolved","AssetLibraryBundleSingletonEnforcer","AssetLibraryBundleSingletonEnforcer.constructor","away.library.AssetLibrary","away.library.AssetLibrary.constructor","away.library.AssetLibrary.getBundle","away.library.AssetLibrary.enableParser","away.library.AssetLibrary.enableParsers","away.library.AssetLibrary.createIterator","away.library.AssetLibrary.load","away.library.AssetLibrary.loadData","away.library.AssetLibrary.stopLoad","away.library.AssetLibrary.getAsset","away.library.AssetLibrary.addEventListener","away.library.AssetLibrary.removeEventListener","away.library.AssetLibrary.addAsset","away.library.AssetLibrary.removeAsset","away.library.AssetLibrary.removeAssetByName","away.library.AssetLibrary.removeAllAssets","away.library.AssetLibrary.removeNamespaceAssets","AssetLibrarySingletonEnforcer","AssetLibrarySingletonEnforcer.constructor","away.base","away.base.BlendMode","away.base.BlendMode.constructor","away.base.AlignmentMode","away.base.AlignmentMode.constructor","away.base.OrientationMode","away.base.OrientationMode.constructor","away.base.BitmapData","away.base.BitmapData.constructor","away.base.BitmapData.dispose","away.base.BitmapData.lock","away.base.BitmapData.unlock","away.base.BitmapData.getPixel","away.base.BitmapData.setPixel","away.base.BitmapData.setPixels","away.base.BitmapData.setPixel32","away.base.BitmapData.setVector","away.base.BitmapData.drawImage","away.base.BitmapData._drawImage","away.base.BitmapData.copyPixels","away.base.BitmapData._copyPixels","away.base.BitmapData.fillRect","away.base.BitmapData.draw","away.base.BitmapData._draw","away.base.BitmapData.copyChannel","away.base.BitmapData.colorTransform","away.base.BitmapData.hexToRGBACSS","away.base.BitmapDataChannel","away.base.BitmapDataChannel.constructor","away.base.CapsStyle","away.base.CapsStyle.constructor","away.base.DisplayObject","away.base.DisplayObject.constructor","away.base.DisplayObject.addEventListener","away.base.DisplayObject.clone","away.base.DisplayObject.dispose","away.base.DisplayObject.disposeAsset","away.base.DisplayObject.getBounds","away.base.DisplayObject.getRect","away.base.DisplayObject.globalToLocal","away.base.DisplayObject.globalToLocal3D","away.base.DisplayObject.hitTestObject","away.base.DisplayObject.hitTestPoint","away.base.DisplayObject.isIntersectingRay","away.base.DisplayObject.local3DToGlobal","away.base.DisplayObject.lookAt","away.base.DisplayObject.localToGlobal","away.base.DisplayObject.moveTo","away.base.DisplayObject.movePivot","away.base.DisplayObject.pitch","away.base.DisplayObject.getRenderSceneTransform","away.base.DisplayObject.roll","away.base.DisplayObject.rotate","away.base.DisplayObject.rotateTo","away.base.DisplayObject.removeEventListener","away.base.DisplayObject.translate","away.base.DisplayObject.translateLocal","away.base.DisplayObject.yaw","away.base.DisplayObject.iSetParent","away.base.DisplayObject.pCreateDefaultBoundingVolume","away.base.DisplayObject.pCreateEntityPartitionNode","away.base.DisplayObject.pInvalidateBounds","away.base.DisplayObject.pInvalidateSceneTransform","away.base.DisplayObject.pUpdateBounds","away.base.DisplayObject._pUpdateImplicitMouseEnabled","away.base.DisplayObject._pUpdateImplicitPartition","away.base.DisplayObject._pUpdateImplicitVisibility","away.base.DisplayObject._pUpdateMatrix3D","away.base.DisplayObject.pUpdateSceneTransform","away.base.DisplayObject._iAddRenderable","away.base.DisplayObject._iRemoveRenderable","away.base.DisplayObject._iTestCollision","away.base.DisplayObject._iInternalUpdate","away.base.DisplayObject._iIsVisible","away.base.DisplayObject._iIsMouseEnabled","away.base.DisplayObject._iSetScene","away.base.DisplayObject._pUpdateScene","away.base.DisplayObject.addBounds","away.base.DisplayObject.notifyPositionChanged","away.base.DisplayObject.notifyRotationChanged","away.base.DisplayObject.notifyScaleChanged","away.base.DisplayObject.notifySceneChange","away.base.DisplayObject.notifySceneTransformChange","away.base.DisplayObject.invalidateMatrix3D","away.base.DisplayObject.invalidatePartition","away.base.DisplayObject.invalidatePivot","away.base.DisplayObject.invalidatePosition","away.base.DisplayObject.invalidateRotation","away.base.DisplayObject.invalidateScale","away.base.DisplayObject.removeBounds","away.base.GradientType","away.base.GradientType.constructor","away.base.Graphics","away.base.Graphics.constructor","away.base.Graphics.beginBitmapFill","away.base.Graphics.beginFill","away.base.Graphics.beginGradientFill","away.base.Graphics.clear","away.base.Graphics.copyFrom","away.base.Graphics.cubicCurveTo","away.base.Graphics.curveTo","away.base.Graphics.drawCircle","away.base.Graphics.drawEllipse","away.base.Graphics.drawGraphicsData","away.base.Graphics.drawPath","away.base.Graphics.drawRect","away.base.Graphics.drawRoundRect","away.base.Graphics.drawTriangles","away.base.Graphics.endFill","away.base.Graphics.lineBitmapStyle","away.base.Graphics.lineGradientStyle","away.base.Graphics.lineStyle","away.base.Graphics.lineTo","away.base.Graphics.moveTo","away.base.GraphicsPathWinding","away.base.GraphicsPathWinding.constructor","away.base.InterpolationMethod","away.base.InterpolationMethod.constructor","away.base.JointStyle","away.base.JointStyle.constructor","away.base.LineScaleMode","away.base.LineScaleMode.constructor","away.base.LoaderInfo","away.base.LoaderInfo.constructor","away.base.PixelSnapping","away.base.PixelSnapping.constructor","away.base.SpreadMethod","away.base.SpreadMethod.constructor","away.base.StageGL","away.base.StageGL.constructor","away.base.StageGL.requestContext","away.base.StageGL.notifyViewportUpdated","away.base.StageGL.notifyEnterFrame","away.base.StageGL.notifyExitFrame","away.base.StageGL.dispose","away.base.StageGL.configureBackBuffer","away.base.StageGL.setRenderTarget","away.base.StageGL.clear","away.base.StageGL.present","away.base.StageGL.addEventListener","away.base.StageGL.removeEventListener","away.base.StageGL.freeContextGL","away.base.StageGL.onEnterFrame","away.base.StageGL.recoverFromDisposal","away.base.StageGL.clearDepthBuffer","away.base.TriangleCulling","away.base.TriangleCulling.constructor","away.pool","away.pool.EntityListItem","away.pool.EntityListItem.constructor","away.pool.EntityListItemPool","away.pool.EntityListItemPool.constructor","away.pool.EntityListItemPool.getItem","away.pool.EntityListItemPool.freeAll","away.pool.EntityListItemPool.dispose","away.pool.RenderablePool","away.pool.RenderablePool.constructor","away.pool.RenderablePool.getItem","away.pool.RenderablePool.disposeItem","away.pool.RenderablePool.getPool","away.pool.RenderablePool.disposePool","away.pool.CSSRenderableBase","away.pool.CSSRenderableBase.constructor","away.pool.CSSRenderableBase.dispose","away.pool.CSSRenderableBase._iUpdate","away.pool.CSSBillboardRenderable","away.pool.CSSBillboardRenderable.constructor","away.traverse","away.traverse.CollectorBase","away.traverse.CollectorBase.constructor","away.traverse.CollectorBase.clear","away.traverse.CollectorBase.enterNode","away.traverse.CollectorBase.applyDirectionalLight","away.traverse.CollectorBase.applyEntity","away.traverse.CollectorBase.applyLightProbe","away.traverse.CollectorBase.applyPointLight","away.traverse.RaycastCollector","away.traverse.RaycastCollector.constructor","away.traverse.RaycastCollector.enterNode","away.traverse.CSSEntityCollector","away.traverse.CSSEntityCollector.constructor","away.partition","away.partition.NodeBase","away.partition.NodeBase.constructor","away.partition.NodeBase.isInFrustum","away.partition.NodeBase.isIntersectingRay","away.partition.NodeBase.isCastingShadow","away.partition.NodeBase.findPartitionForEntity","away.partition.NodeBase.acceptTraverser","away.partition.NodeBase.pCreateDebugBounds","away.partition.NodeBase.iAddNode","away.partition.NodeBase.iRemoveNode","away.partition.NullNode","away.partition.NullNode.constructor","away.partition.Partition","away.partition.Partition.constructor","away.partition.Partition.traverse","away.partition.Partition.iMarkForUpdate","away.partition.Partition.iRemoveEntity","away.partition.Partition.updateEntities","away.partition.EntityNode","away.partition.EntityNode.constructor","away.partition.EntityNode.removeFromParent","away.partition.EntityNode.isCastingShadow","away.partition.EntityNode.isInFrustum","away.partition.EntityNode.acceptTraverser","away.partition.EntityNode.isIntersectingRay","away.partition.CameraNode","away.partition.CameraNode.constructor","away.partition.CameraNode.acceptTraverser","away.pick","away.pick.PickingCollisionVO","away.pick.PickingCollisionVO.constructor","away.pick.RaycastPicker","away.pick.RaycastPicker.constructor","away.pick.RaycastPicker.getViewCollision","away.pick.RaycastPicker.getSceneCollision","away.pick.RaycastPicker.setIgnoreList","away.pick.RaycastPicker.isIgnored","away.pick.RaycastPicker.sortOnNearT","away.pick.RaycastPicker.getPickingCollisionVO","away.pick.RaycastPicker.updateLocalPosition","away.pick.RaycastPicker.dispose","away.render","away.render.CSSRendererBase","away.render.CSSRendererBase.constructor","away.render.CSSRendererBase.dispose","away.render.CSSRendererBase.render","away.render.CSSRendererBase._iRender","away.render.CSSRendererBase.pCollectRenderables","away.render.CSSRendererBase.pExecuteRender","away.render.CSSRendererBase.pDraw","away.render.CSSRendererBase.updateGlobalPos","away.render.CSSRendererBase.applyBillboard","away.render.CSSRendererBase.applyRenderable","away.render.CSSRendererBase.pFindRenderables","away.render.CSSDefaultRenderer","away.render.CSSDefaultRenderer.constructor","away.render.CSSDefaultRenderer.render","away.render.CSSDefaultRenderer.pDraw","away.render.CSSDefaultRenderer.pUpdateBackBuffer","away.render.CSSDefaultRenderer.drawSkyBox","away.render.CSSDefaultRenderer.drawRenderables","away.render.CSSDefaultRenderer.dispose","away.render.CSSDefaultRenderer.notifyScissorUpdate","away.render.CSSDefaultRenderer.notifyViewportUpdate","away.render.CSSDefaultRenderer.updateGlobalPos","away.render.CSSDefaultRenderer._iCreateEntityCollector","away.sort","away.sort.RenderableMergeSort","away.sort.RenderableMergeSort.constructor","away.sort.RenderableMergeSort.sortBlendedRenderables","away.sort.RenderableMergeSort.sortOpaqueRenderables","away.gl","away.gl.ContextGLClearMask","away.gl.ContextGLClearMask.constructor","away.gl.VertexBuffer","away.gl.VertexBuffer.constructor","away.gl.VertexBuffer.uploadFromArray","away.gl.VertexBuffer.dispose","away.gl.IndexBuffer","away.gl.IndexBuffer.constructor","away.gl.IndexBuffer.uploadFromArray","away.gl.IndexBuffer.dispose","away.gl.Program","away.gl.Program.constructor","away.gl.Program.upload","away.gl.Program.dispose","away.gl.Program.focusProgram","away.gl.SamplerState","away.gl.SamplerState.constructor","away.gl.ContextGLTextureFormat","away.gl.ContextGLTextureFormat.constructor","away.gl.TextureBase","away.gl.TextureBase.constructor","away.gl.TextureBase.dispose","away.gl.Texture","away.gl.Texture.constructor","away.gl.Texture.dispose","away.gl.Texture.uploadFromHTMLImageElement","away.gl.Texture.uploadFromBitmapData","away.gl.Texture.uploadCompressedTextureFromByteArray","away.gl.Texture.generateFromRenderBuffer","away.gl.Texture.generateMipmaps","away.gl.CubeTexture","away.gl.CubeTexture.constructor","away.gl.CubeTexture.dispose","away.gl.CubeTexture.uploadFromHTMLImageElement","away.gl.CubeTexture.uploadFromBitmapData","away.gl.CubeTexture.uploadCompressedTextureFromByteArray","away.gl.ContextGLTriangleFace","away.gl.ContextGLTriangleFace.constructor","away.gl.ContextGLVertexBufferFormat","away.gl.ContextGLVertexBufferFormat.constructor","away.gl.ContextGLProgramType","away.gl.ContextGLProgramType.constructor","away.gl.ContextGLBlendFactor","away.gl.ContextGLBlendFactor.constructor","away.gl.ContextGLCompareMode","away.gl.ContextGLCompareMode.constructor","away.gl.ContextGLMipFilter","away.gl.ContextGLMipFilter.constructor","away.gl.ContextGLProfile","away.gl.ContextGLProfile.constructor","away.gl.ContextGLStencilAction","away.gl.ContextGLStencilAction.constructor","away.gl.ContextGLTextureFilter","away.gl.ContextGLTextureFilter.constructor","away.gl.ContextGLWrapMode","away.gl.ContextGLWrapMode.constructor","away.gl.ContextGL","away.gl.ContextGL.constructor","away.gl.ContextGL.gl","away.gl.ContextGL.clear","away.gl.ContextGL.configureBackBuffer","away.gl.ContextGL.createCubeTexture","away.gl.ContextGL.createIndexBuffer","away.gl.ContextGL.createProgram","away.gl.ContextGL.createTexture","away.gl.ContextGL.createVertexBuffer","away.gl.ContextGL.dispose","away.gl.ContextGL.drawToBitmapData","away.gl.ContextGL.drawTriangles","away.gl.ContextGL.present","away.gl.ContextGL.setBlendFactors","away.gl.ContextGL.setColorMask","away.gl.ContextGL.setCulling","away.gl.ContextGL.setDepthTest","away.gl.ContextGL.setProgram","away.gl.ContextGL.getUniformLocationNameFromAgalRegisterIndex","away.gl.ContextGL.setProgramConstantsFromMatrix","away.gl.ContextGL.setProgramConstantsFromArray","away.gl.ContextGL.setGLSLProgramConstantsFromMatrix","away.gl.ContextGL.setGLSLProgramConstantsFromArray","away.gl.ContextGL.setScissorRectangle","away.gl.ContextGL.setTextureAt","away.gl.ContextGL.setGLSLTextureAt","away.gl.ContextGL.setSamplerStateAt","away.gl.ContextGL.setVertexBufferAt","away.gl.ContextGL.setGLSLVertexBufferAt","away.gl.ContextGL.setRenderToTexture","away.gl.ContextGL.setRenderToBackBuffer","away.gl.ContextGL.updateBlendStatus","away.gl.AGLSLContextGL","away.gl.AGLSLContextGL.constructor","away.gl.AGLSLContextGL.setProgramConstantsFromMatrix","away.geom","away.geom.Box","away.geom.Box.constructor","away.geom.Box.clone","away.geom.Box.contains","away.geom.Box.containsPoint","away.geom.Box.containsRect","away.geom.Box.copyFrom","away.geom.Box.equals","away.geom.Box.inflate","away.geom.Box.inflatePoint","away.geom.Box.intersection","away.geom.Box.intersects","away.geom.Box.isEmpty","away.geom.Box.offset","away.geom.Box.offsetPosition","away.geom.Box.setEmpty","away.geom.Box.setTo","away.geom.Box.toString","away.geom.Box.union","away.geom.ColorTransform","away.geom.ColorTransform.constructor","away.geom.ColorTransform.concat","away.geom.Matrix","away.geom.Matrix.constructor","away.geom.Matrix.clone","away.geom.Matrix.concat","away.geom.Matrix.copyColumnFrom","away.geom.Matrix.copyColumnTo","away.geom.Matrix.copyFrom","away.geom.Matrix.copyRowFrom","away.geom.Matrix.copyRowTo","away.geom.Matrix.createBox","away.geom.Matrix.createGradientBox","away.geom.Matrix.deltaTransformPoint","away.geom.Matrix.identity","away.geom.Matrix.invert","away.geom.Matrix.multiply","away.geom.Matrix.rotate","away.geom.Matrix.scale","away.geom.Matrix.setTo","away.geom.Matrix.toString","away.geom.Matrix.transformPoint","away.geom.Matrix.translate","away.geom.Matrix3D","away.geom.Matrix3D.constructor","away.geom.Matrix3D.append","away.geom.Matrix3D.appendRotation","away.geom.Matrix3D.appendScale","away.geom.Matrix3D.appendTranslation","away.geom.Matrix3D.clone","away.geom.Matrix3D.copyColumnFrom","away.geom.Matrix3D.copyColumnTo","away.geom.Matrix3D.copyFrom","away.geom.Matrix3D.copyRawDataFrom","away.geom.Matrix3D.copyRawDataTo","away.geom.Matrix3D.copyRowFrom","away.geom.Matrix3D.copyRowTo","away.geom.Matrix3D.copyToMatrix3D","away.geom.Matrix3D.decompose","away.geom.Matrix3D.deltaTransformVector","away.geom.Matrix3D.identity","away.geom.Matrix3D.interpolate","away.geom.Matrix3D.interpolateTo","away.geom.Matrix3D.invert","away.geom.Matrix3D.prepend","away.geom.Matrix3D.prependRotation","away.geom.Matrix3D.prependScale","away.geom.Matrix3D.prependTranslation","away.geom.Matrix3D.recompose","away.geom.Matrix3D.transformVector","away.geom.Matrix3D.transformVectors","away.geom.Matrix3D.transpose","away.geom.Matrix3D.getAxisRotation","away.geom.Matrix3D.toFixed","away.geom.Matrix3D.toString","away.geom.Orientation3D","away.geom.Orientation3D.constructor","away.geom.PerspectiveProjection","away.geom.PerspectiveProjection.constructor","away.geom.PerspectiveProjection.toMatrix3D","away.geom.Point","away.geom.Point.constructor","away.geom.Point.add","away.geom.Point.clone","away.geom.Point.copyFrom","away.geom.Point.equals","away.geom.Point.normalize","away.geom.Point.offset","away.geom.Point.setTo","away.geom.Point.subtract","away.geom.Point.toString","away.geom.Point.distance","away.geom.Point.interpolate","away.geom.Point.polar","away.geom.Rectangle","away.geom.Rectangle.constructor","away.geom.Rectangle.clone","away.geom.Rectangle.contains","away.geom.Rectangle.containsPoint","away.geom.Rectangle.containsRect","away.geom.Rectangle.copyFrom","away.geom.Rectangle.equals","away.geom.Rectangle.inflate","away.geom.Rectangle.inflatePoint","away.geom.Rectangle.intersection","away.geom.Rectangle.intersects","away.geom.Rectangle.isEmpty","away.geom.Rectangle.offset","away.geom.Rectangle.offsetPoint","away.geom.Rectangle.setEmpty","away.geom.Rectangle.setTo","away.geom.Rectangle.toString","away.geom.Rectangle.union","away.geom.Transform","away.geom.Transform.constructor","away.geom.Transform.getRelativeMatrix3D","away.geom.Transform.moveForward","away.geom.Transform.moveBackward","away.geom.Transform.moveLeft","away.geom.Transform.moveRight","away.geom.Transform.moveUp","away.geom.Transform.moveDown","away.geom.UVTransform","away.geom.UVTransform.constructor","away.geom.UVTransform.updateUVMatrix","away.geom.Vector3D","away.geom.Vector3D.constructor","away.geom.Vector3D.add","away.geom.Vector3D.angleBetween","away.geom.Vector3D.clone","away.geom.Vector3D.copyFrom","away.geom.Vector3D.crossProduct","away.geom.Vector3D.decrementBy","away.geom.Vector3D.distance","away.geom.Vector3D.dotProduct","away.geom.Vector3D.equals","away.geom.Vector3D.incrementBy","away.geom.Vector3D.nearEquals","away.geom.Vector3D.negate","away.geom.Vector3D.normalize","away.geom.Vector3D.project","away.geom.Vector3D.scaleBy","away.geom.Vector3D.setTo","away.geom.Vector3D.subtract","away.geom.Vector3D.toString","away.geom.MathConsts","away.geom.MathConsts.constructor","away.geom.Quaternion","away.geom.Quaternion.constructor","away.geom.Quaternion.multiply","away.geom.Quaternion.multiplyVector","away.geom.Quaternion.fromAxisAngle","away.geom.Quaternion.slerp","away.geom.Quaternion.lerp","away.geom.Quaternion.fromEulerAngles","away.geom.Quaternion.toEulerAngles","away.geom.Quaternion.normalize","away.geom.Quaternion.toString","away.geom.Quaternion.toMatrix3D","away.geom.Quaternion.fromMatrix","away.geom.Quaternion.toRawData","away.geom.Quaternion.clone","away.geom.Quaternion.rotatePoint","away.geom.Quaternion.copyFrom","away.geom.PlaneClassification","away.geom.PlaneClassification.constructor","away.geom.Plane3D","away.geom.Plane3D.constructor","away.geom.Plane3D.fromPoints","away.geom.Plane3D.fromNormalAndPoint","away.geom.Plane3D.normalize","away.geom.Plane3D.distance","away.geom.Plane3D.classifyPoint","away.geom.Plane3D.toString","away.geom.Matrix3DUtils","away.geom.Matrix3DUtils.constructor","away.geom.Matrix3DUtils.quaternion2matrix","away.geom.Matrix3DUtils.getForward","away.geom.Matrix3DUtils.getUp","away.geom.Matrix3DUtils.getRight","away.geom.Matrix3DUtils.compare","away.geom.Matrix3DUtils.lookAt","away.geom.Matrix3DUtils.reflection","away.geom.Matrix3DUtils.transformVector","away.geom.Matrix3DUtils.deltaTransformVector","away.geom.Matrix3DUtils.getTranslation","away.geom.Matrix3DUtils.deltaTransformVectors","away.geom.PoissonLookup","away.geom.PoissonLookup.constructor","away.geom.PoissonLookup.initDistributions","away.geom.PoissonLookup.getDistribution","away.net","away.net.AssetLoaderContext","away.net.AssetLoaderContext.constructor","away.net.AssetLoaderContext.mapUrl","away.net.AssetLoaderContext.mapUrlToData","away.net.AssetLoaderContext._iHasDataForUrl","away.net.AssetLoaderContext._iGetDataForUrl","away.net.AssetLoaderContext._iHasMappingForUrl","away.net.AssetLoaderContext._iGetRemappedUrl","away.net.AssetLoader","away.net.AssetLoader.constructor","away.net.AssetLoader.enableParser","away.net.AssetLoader.enableParsers","away.net.AssetLoader.load","away.net.AssetLoader.loadData","away.net.AssetLoader.retrieveNext","away.net.AssetLoader.retrieveDependency","away.net.AssetLoader.joinUrl","away.net.AssetLoader.resolveDependencyUrl","away.net.AssetLoader.retrieveParserDependencies","away.net.AssetLoader.resolveParserDependencies","away.net.AssetLoader.onLoadError","away.net.AssetLoader.onParseError","away.net.AssetLoader.onAssetComplete","away.net.AssetLoader.onReadyForDependencies","away.net.AssetLoader.onLoadComplete","away.net.AssetLoader.onParseComplete","away.net.AssetLoader.onTextureSizeError","away.net.AssetLoader.addEventListeners","away.net.AssetLoader.removeEventListeners","away.net.AssetLoader.stop","away.net.AssetLoader.dispose","away.net.AssetLoader._iAddParseErrorHandler","away.net.AssetLoader._iAddErrorHandler","away.net.AssetLoader.getParserFromData","away.net.AssetLoader.parseDependency","away.net.AssetLoader.getParserFromSuffix","away.net.AssetLoaderToken","away.net.AssetLoaderToken.constructor","away.net.AssetLoaderToken.addEventListener","away.net.AssetLoaderToken.removeEventListener","away.net.AssetLoaderToken.hasEventListener","away.net.URLRequest","away.net.URLRequest.constructor","away.net.URLRequest.dispose","away.net.URLLoaderDataFormat","away.net.URLLoaderDataFormat.constructor","away.net.URLRequestMethod","away.net.URLRequestMethod.constructor","away.net.URLLoader","away.net.URLLoader.constructor","away.net.URLLoader.load","away.net.URLLoader.close","away.net.URLLoader.dispose","away.net.URLLoader.setResponseType","away.net.URLLoader.getRequest","away.net.URLLoader.postRequest","away.net.URLLoader.handleXmlHttpRequestException","away.net.URLLoader.initXHR","away.net.URLLoader.disposeXHR","away.net.URLLoader.decodeURLVariables","away.net.URLLoader.onReadyStateChange","away.net.URLLoader.onLoadEnd","away.net.URLLoader.onTimeOut","away.net.URLLoader.onAbort","away.net.URLLoader.onProgress","away.net.URLLoader.onLoadStart","away.net.URLLoader.onLoadComplete","away.net.URLLoader.onLoadError","away.net.URLVariables","away.net.URLVariables.constructor","away.net.URLVariables.decode","away.net.URLVariables.toString","away.text","away.text.AntiAliasType","away.text.AntiAliasType.constructor","away.text.GridFitType","away.text.GridFitType.constructor","away.text.TextFieldAutoSize","away.text.TextFieldAutoSize.constructor","away.text.TextFieldType","away.text.TextFieldType.constructor","away.text.TextFormat","away.text.TextFormat.constructor","away.text.TextFormatAlign","away.text.TextFormatAlign.constructor","away.text.TextInteractionMode","away.text.TextInteractionMode.constructor","away.text.TextLineMetrics","away.text.TextLineMetrics.constructor","away.ui","away.ui.Keyboard","away.ui.Keyboard.constructor","away.containers","away.containers.DisplayObjectContainer","away.containers.DisplayObjectContainer.constructor","away.containers.DisplayObjectContainer.addChild","away.containers.DisplayObjectContainer.addChildAt","away.containers.DisplayObjectContainer.addChildren","away.containers.DisplayObjectContainer.clone","away.containers.DisplayObjectContainer.contains","away.containers.DisplayObjectContainer.disposeWithChildren","away.containers.DisplayObjectContainer.getChildAt","away.containers.DisplayObjectContainer.getChildByName","away.containers.DisplayObjectContainer.getChildIndex","away.containers.DisplayObjectContainer.getObjectsUnderPoint","away.containers.DisplayObjectContainer.removeChild","away.containers.DisplayObjectContainer.removeChildAt","away.containers.DisplayObjectContainer.removeChildren","away.containers.DisplayObjectContainer.setChildIndex","away.containers.DisplayObjectContainer.swapChildren","away.containers.DisplayObjectContainer.swapChildrenAt","away.containers.DisplayObjectContainer.pInvalidateSceneTransform","away.containers.DisplayObjectContainer._pUpdateScene","away.containers.DisplayObjectContainer._pUpdateImplicitMouseEnabled","away.containers.DisplayObjectContainer._pUpdateImplicitVisibility","away.containers.DisplayObjectContainer._pUpdateImplicitPartition","away.containers.DisplayObjectContainer.removeChildInternal","away.entities","away.entities.Billboard","away.entities.Billboard.constructor","away.entities.Billboard.pCreateEntityPartitionNode","away.entities.Billboard.pUpdateBounds","away.entities.Billboard._iSetUVMatrixComponents","away.entities.Billboard._iTestCollision","away.entities.Billboard.onSizeChanged","away.entities.Camera","away.entities.Camera.constructor","away.entities.Camera.pCreateDefaultBoundingVolume","away.entities.Camera.pCreateEntityPartitionNode","away.entities.Camera.onProjectionMatrixChanged","away.entities.Camera.updateFrustum","away.entities.Camera.pInvalidateSceneTransform","away.entities.Camera.pUpdateBounds","away.entities.Camera.getRay","away.entities.Camera.project","away.entities.Camera.unproject","away.entities.Shape","away.entities.Shape.constructor","away.entities.TextField","away.entities.TextField.constructor","away.entities.TextField.maxScrollH","away.entities.TextField.maxScrollV","away.entities.TextField.appendText","away.entities.TextField.getCharBoundaries","away.entities.TextField.getCharIndexAtPoint","away.entities.TextField.getFirstCharInParagraph","away.entities.TextField.getImageReference","away.entities.TextField.getLineIndexAtPoint","away.entities.TextField.getLineIndexOfChar","away.entities.TextField.getLineLength","away.entities.TextField.getLineMetrics","away.entities.TextField.getLineOffset","away.entities.TextField.getLineText","away.entities.TextField.getParagraphLength","away.entities.TextField.getTextFormat","away.entities.TextField.replaceSelectedText","away.entities.TextField.replaceText","away.entities.TextField.setSelection","away.entities.TextField.setTextFormat","away.entities.TextField.isFontCompatible","away.projections","away.projections.CoordinateSystem","away.projections.CoordinateSystem.constructor","away.projections.ProjectionBase","away.projections.ProjectionBase.constructor","away.projections.ProjectionBase.project","away.projections.ProjectionBase.unproject","away.projections.ProjectionBase.clone","away.projections.ProjectionBase.pInvalidateMatrix","away.projections.ProjectionBase.pUpdateMatrix","away.projections.ProjectionBase._iUpdateScissorRect","away.projections.ProjectionBase._iUpdateViewport","away.projections.PerspectiveProjection","away.projections.PerspectiveProjection.constructor","away.projections.PerspectiveProjection.unproject","away.projections.PerspectiveProjection.clone","away.projections.PerspectiveProjection.pUpdateMatrix","away.projections.FreeMatrixProjection","away.projections.FreeMatrixProjection.constructor","away.projections.FreeMatrixProjection.clone","away.projections.FreeMatrixProjection.pUpdateMatrix","away.projections.OrthographicProjection","away.projections.OrthographicProjection.constructor","away.projections.OrthographicProjection.unproject","away.projections.OrthographicProjection.clone","away.projections.OrthographicProjection.pUpdateMatrix","away.projections.OrthographicOffCenterProjection","away.projections.OrthographicOffCenterProjection.constructor","away.projections.OrthographicOffCenterProjection.unproject","away.projections.OrthographicOffCenterProjection.clone","away.projections.OrthographicOffCenterProjection.pUpdateMatrix","away.projections.ObliqueNearPlaneProjection","away.projections.ObliqueNearPlaneProjection.constructor","away.projections.ObliqueNearPlaneProjection.onProjectionMatrixChanged","away.projections.ObliqueNearPlaneProjection.pUpdateMatrix","away.managers","away.managers.MouseManager","away.managers.MouseManager.constructor","away.managers.MouseManager.getInstance","away.managers.MouseManager.fireMouseEvents","away.managers.MouseManager.registerView","away.managers.MouseManager.unregisterView","away.managers.MouseManager.queueDispatch","away.managers.MouseManager.onMouseMove","away.managers.MouseManager.onMouseOut","away.managers.MouseManager.onMouseOver","away.managers.MouseManager.onClick","away.managers.MouseManager.onDoubleClick","away.managers.MouseManager.onMouseDown","away.managers.MouseManager.onMouseUp","away.managers.MouseManager.onMouseWheel","away.managers.MouseManager.updateColliders","away.managers.RTTBufferManager","away.managers.RTTBufferManager.constructor","away.managers.RTTBufferManager.getInstance","away.managers.RTTBufferManager.getRTTBufferManagerFromStageGL","away.managers.RTTBufferManager.deleteRTTBufferManager","away.managers.RTTBufferManager.dispose","away.managers.RTTBufferManager.updateRTTBuffers","RTTBufferManagerVO","RTTBufferManagerVO.constructor","SingletonEnforcer","SingletonEnforcer.constructor","away.managers.StageGLManager","away.managers.StageGLManager.constructor","away.managers.StageGLManager.getInstance","away.managers.StageGLManager.getStageGLAt","away.managers.StageGLManager.iRemoveStageGL","away.managers.StageGLManager.getFreeStageGL","away.managers.StageGLManager.onContextCreated","StageGLManagerSingletonEnforcer","StageGLManagerSingletonEnforcer.constructor","away.containers.Loader","away.containers.Loader.constructor","away.containers.Loader.close","away.containers.Loader.load","away.containers.Loader.loadData","away.containers.Loader.unload","away.containers.Loader.enableParser","away.containers.Loader.enableParsers","away.containers.Loader.removeListeners","away.containers.Loader.onAssetComplete","away.containers.Loader.onLoadError","away.containers.Loader.onParseError","away.containers.Loader.onResourceComplete","away.containers.Scene","away.containers.Scene.constructor","away.containers.Scene.traversePartitions","away.containers.Scene.contains","away.containers.Scene.addChild","away.containers.Scene.removeChild","away.containers.Scene.removeChildAt","away.containers.Scene.getChildAt","away.containers.Scene.iRegisterEntity","away.containers.Scene.iRegisterPartition","away.containers.Scene.iUnregisterEntity","away.containers.Scene.iUnregisterPartition","away.containers.View","away.containers.View.constructor","away.containers.View.onScenePartitionChanged","away.containers.View.render","away.containers.View.pUpdateTime","away.containers.View.dispose","away.containers.View.onProjectionChanged","away.containers.View.onViewportUpdated","away.containers.View.onScissorUpdated","away.containers.View.project","away.containers.View.unproject","away.containers.View.getRay","away.containers.View.updateCollider","away.bounds","away.bounds.BoundingVolumeBase","away.bounds.BoundingVolumeBase.constructor","away.bounds.BoundingVolumeBase.nullify","away.bounds.BoundingVolumeBase.disposeRenderable","away.bounds.BoundingVolumeBase.fromVertices","away.bounds.BoundingVolumeBase.fromSphere","away.bounds.BoundingVolumeBase.fromExtremes","away.bounds.BoundingVolumeBase.isInFrustum","away.bounds.BoundingVolumeBase.overlaps","away.bounds.BoundingVolumeBase.clone","away.bounds.BoundingVolumeBase.rayIntersection","away.bounds.BoundingVolumeBase.containsPoint","away.bounds.BoundingVolumeBase.pUpdateAABBPoints","away.bounds.BoundingVolumeBase.pUpdateBoundingEntity","away.bounds.BoundingVolumeBase.pCreateBoundingEntity","away.bounds.BoundingVolumeBase.classifyToPlane","away.bounds.BoundingVolumeBase.transformFrom","away.bounds.NullBounds","away.bounds.NullBounds.constructor","away.bounds.NullBounds.clone","away.bounds.NullBounds.pCreateBoundingEntity","away.bounds.NullBounds.isInFrustum","away.bounds.NullBounds.fromSphere","away.bounds.NullBounds.fromExtremes","away.bounds.NullBounds.classifyToPlane","away.bounds.NullBounds.transformFrom","away.bounds.BoundingSphere","away.bounds.BoundingSphere.constructor","away.bounds.BoundingSphere.nullify","away.bounds.BoundingSphere.isInFrustum","away.bounds.BoundingSphere.fromSphere","away.bounds.BoundingSphere.fromExtremes","away.bounds.BoundingSphere.clone","away.bounds.BoundingSphere.rayIntersection","away.bounds.BoundingSphere.containsPoint","away.bounds.BoundingSphere.pUpdateBoundingEntity","away.bounds.BoundingSphere.pCreateBoundingEntity","away.bounds.BoundingSphere.classifyToPlane","away.bounds.BoundingSphere.transformFrom","away.bounds.AxisAlignedBoundingBox","away.bounds.AxisAlignedBoundingBox.constructor","away.bounds.AxisAlignedBoundingBox.nullify","away.bounds.AxisAlignedBoundingBox.isInFrustum","away.bounds.AxisAlignedBoundingBox.rayIntersection","away.bounds.AxisAlignedBoundingBox.containsPoint","away.bounds.AxisAlignedBoundingBox.fromExtremes","away.bounds.AxisAlignedBoundingBox.clone","away.bounds.AxisAlignedBoundingBox.closestPointToPoint","away.bounds.AxisAlignedBoundingBox.pUpdateBoundingRenderable","away.bounds.AxisAlignedBoundingBox.pCreateBoundingEntity","away.bounds.AxisAlignedBoundingBox.classifyToPlane","away.bounds.AxisAlignedBoundingBox.transformFrom","away.controllers","away.controllers.ControllerBase","away.controllers.ControllerBase.constructor","away.controllers.ControllerBase.pNotifyUpdate","away.controllers.ControllerBase.update","away.controllers.LookAtController","away.controllers.LookAtController.constructor","away.controllers.LookAtController.update","away.controllers.LookAtController.onLookAtObjectChanged","away.controllers.HoverController","away.controllers.HoverController.constructor","away.controllers.HoverController.update","away.controllers.FirstPersonController","away.controllers.FirstPersonController.constructor","away.controllers.FirstPersonController.update","away.controllers.FirstPersonController.incrementWalk","away.controllers.FirstPersonController.incrementStrafe","away.controllers.FollowController","away.controllers.FollowController.constructor","away.controllers.FollowController.update","away.controllers.SpringController","away.controllers.SpringController.constructor","away.controllers.SpringController.update","away.materials","away.materials.CSSMaterialBase","away.materials.CSSMaterialBase.constructor","away.materials.CSSMaterialBase.dispose","away.materials.CSSMaterialBase.iAddOwner","away.materials.CSSMaterialBase.iRemoveOwner","away.materials.CSSMaterialBase.notifySizeChanged","away.textures","away.textures.TextureProxyBase","away.textures.TextureProxyBase.constructor","away.textures.TextureProxyBase.getTextureForStageGL","away.textures.TextureProxyBase.pUploadContent","away.textures.TextureProxyBase.pSetSize","away.textures.TextureProxyBase.invalidateContent","away.textures.TextureProxyBase.pInvalidateSize","away.textures.TextureProxyBase.pCreateTexture","away.textures.TextureProxyBase.dispose","away.textures.Texture2DBase","away.textures.Texture2DBase.constructor","away.textures.Texture2DBase.pCreateTexture","away.textures.CubeTextureBase","away.textures.CubeTextureBase.constructor","away.textures.CubeTextureBase.pCreateTexture","away.textures.ATFData","away.textures.ATFData.constructor","away.textures.ATFCubeTexture","away.textures.ATFCubeTexture.constructor","away.textures.ATFCubeTexture.pUploadContent","away.textures.ATFCubeTexture.pCreateTexture","away.textures.ATFTexture","away.textures.ATFTexture.constructor","away.textures.ATFTexture.pUploadContent","away.textures.ATFTexture.pCreateTexture","away.textures.ImageTexture","away.textures.ImageTexture.constructor","away.textures.ImageTexture.pUploadContent","away.textures.ImageTexture.getMipMapHolder","away.textures.ImageTexture.freeMipMapHolder","away.textures.ImageTexture.dispose","away.textures.BitmapTexture","away.textures.BitmapTexture.constructor","away.textures.BitmapTexture.pUploadContent","away.textures.BitmapTexture.getMipMapHolder","away.textures.BitmapTexture.freeMipMapHolder","away.textures.BitmapTexture.dispose","away.textures.RenderTexture","away.textures.RenderTexture.constructor","away.textures.RenderTexture.pUploadContent","away.textures.RenderTexture.pCreateTexture","away.textures.ImageCubeTexture","away.textures.ImageCubeTexture.constructor","away.textures.ImageCubeTexture.testSize","away.textures.ImageCubeTexture.pUploadContent","away.textures.BitmapCubeTexture","away.textures.BitmapCubeTexture.constructor","away.textures.BitmapCubeTexture.testSize","away.textures.BitmapCubeTexture.pUploadContent","away.textures.MipmapGenerator","away.textures.MipmapGenerator.constructor","away.textures.MipmapGenerator.generateHTMLImageElementMipMaps","away.textures.MipmapGenerator.generateMipMaps","away.textures.SpecularBitmapTexture","away.textures.SpecularBitmapTexture.constructor","away.textures.SpecularBitmapTexture.testSize","away.textures.SpecularBitmapTexture.pUploadContent","away.textures.SpecularBitmapTexture.dispose","aglsl","aglsl.Sampler","aglsl.Sampler.constructor","aglsl.Token","aglsl.Token.constructor","aglsl.Header","aglsl.Header.constructor","aglsl.OpLUT","aglsl.OpLUT.constructor","aglsl.Description","aglsl.Description.constructor","aglsl.Destination","aglsl.Destination.constructor","aglsl.ContextGL","aglsl.ContextGL.constructor","aglsl.Mapping","aglsl.Mapping.constructor","aglsl.assembler","aglsl.assembler.Opcode","aglsl.assembler.Opcode.constructor","aglsl.assembler.FS","aglsl.assembler.FS.constructor","aglsl.assembler.Flags","aglsl.assembler.Flags.constructor","aglsl.assembler.OpcodeMap","aglsl.assembler.OpcodeMap.constructor","aglsl.assembler.Part","aglsl.assembler.Part.constructor","aglsl.assembler.Reg","aglsl.assembler.Reg.constructor","aglsl.assembler.RegMap","aglsl.assembler.RegMap.constructor","aglsl.assembler.Sampler","aglsl.assembler.Sampler.constructor","aglsl.assembler.SamplerMap","aglsl.assembler.SamplerMap.constructor","aglsl.assembler.AGALMiniAssembler","aglsl.assembler.AGALMiniAssembler.constructor","aglsl.assembler.AGALMiniAssembler.assemble","aglsl.assembler.AGALMiniAssembler.processLine","aglsl.assembler.AGALMiniAssembler.emitHeader","aglsl.assembler.AGALMiniAssembler.emitOpcode","aglsl.assembler.AGALMiniAssembler.emitZeroDword","aglsl.assembler.AGALMiniAssembler.emitZeroQword","aglsl.assembler.AGALMiniAssembler.emitDest","aglsl.assembler.AGALMiniAssembler.stringToMask","aglsl.assembler.AGALMiniAssembler.stringToSwizzle","aglsl.assembler.AGALMiniAssembler.emitSampler","aglsl.assembler.AGALMiniAssembler.emitSource","aglsl.assembler.AGALMiniAssembler.addHeader","aglsl.AGALTokenizer","aglsl.AGALTokenizer.constructor","aglsl.AGALTokenizer.decribeAGALByteArray","aglsl.AGALTokenizer.readReg","aglsl.AGLSLParser","aglsl.AGLSLParser.constructor","aglsl.AGLSLParser.parse","aglsl.AGLSLParser.regtostring","aglsl.AGLSLParser.sourcetostring","aglsl.AGLSLCompiler","aglsl.AGLSLCompiler.constructor","aglsl.AGLSLCompiler.compile","away.AwayJS","away.AwayJS.constructor"],"mappings":"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,CAACA,SAASA,CAACA,CAACA,CAACA;;gBAEpBA,KAAKA,GAAGA,MAAMA,CAACA,QAAQA,CAACA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA;gBACjDA,KAAKA,CAACA,SAASA,CAACA,CAACA;;gBAEjBA,KAAKA,GAAGA,MAAMA,CAACA,YAAYA,CAACA,KAAKA,CAACA;gBAClCA,KAAKA,CAACA,SAASA,CAACA,CAACA;;gBAEjBA,IAAIA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,CAAEA;oBACxBA,KAAKA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA;oBAClBA,KAAKA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA;oBAClBA,KAAKA,CAACA,CAACA,GAAGA,CAACA;oBACXA,KAAKA,CAACA,SAASA,CAACA,CAACA;iBACjBA;;gBAEDA,KAAKA,GAAGA,KAAKA,CAACA,YAAYA,CAACA,KAAKA,CAACA;;gBAEjCA,GAAGA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,kBAAkBA;;gBAEhDA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA;;gBAEVA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA;;gBAEVA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChBA,GAAGA,CAACA,EAAEA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBACjBA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AACA,OAAOA;gBAC/BA,IAAIA,gBAAgBA,CAAEA;oBACrBA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBAC7FA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAAEA,EAAEA,CAACA,CAACA;iBAClGA,KAAMA;oBACNA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBAC5FA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EA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ACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA;;gBAE99BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;;gBAE/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;;gBAE/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAChEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;;gBAEhEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAChEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAChEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAChEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;YACjEA,CAACA;;YAKDF;;cADGA;gDACHA,UAAsBA,OAAcA,EAAEA,IAAaA;gBAElDG,IAAIA,CAACA,GAAYA,QAAQA,CAACA,eAAeA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,OAAOA,CAACA;;gBAE1EA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA;YACfA,CAACA;;YAKDH;;cADGA;6CACHA,UAAmBA,MAAaA,EAAEA,MAAaA,EAAEA,MAAaA;gBAE7DI,IAAIA,CAACA,MAAMA,CAACA,IAAIA,QAAQA,CAACA,CAAEA,MAAMA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,MAAMA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,MAAMA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,CAAEA,CAACA,CAACA;YACvHA,CAACA;;YAKDJ;;cADGA;mDACHA,UAAyBA,CAAQA,EAAEA,CAAQA,EAAEA,CAAQA;gBAEpDK,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,IAAIA,CAACA;gBACrBA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,IAAIA,CAACA;gBACrBA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,IAAIA,CAACA;YACtBA,CAACA;;YAKDL;;cADGA;uCACHA;gBAECM,OAAOA,IAAIA,QAAQA,CAACA,IAAIA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,CAACA,CAACA;YAC3CA,CAACA;;YAKDN;;cADGA;gDACHA,UAAsBA,MAAaA,EAAEA,QAAiBA;gBAErDO,QAAQA,MAAMA,CAACA;oBACdA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,KAAMA;AAAAA,oBACPA;wBACCA,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,aAAaA,CAACA,wBAAwBA,GAAGA,MAAMA,GAAGA,4BAA4BA,CAACA;AAACA,iBACvGA;YACFA,CAACA;;YAKDP;;cADGA;8CACHA,UAAoBA,MAAaA,EAAEA,QAAiBA;gBAEnDQ,QAAQA,MAAMA,CAACA;oBACdA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,KAAMA;AAAAA,oBACPA;wBACCA,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,aAAaA,CAACA,wBAAwBA,GAAGA,MAAMA,GAAGA,4BAA4BA,CAACA;AAACA,iBACvGA;YACFA,CAACA;;YAKDR;;cADGA;0CACHA,UAAgBA,cAAuBA;gBAEtCS,IAAIA,GAAGA,GAAUA,cAAcA,CAACA,OAAOA,CAACA,MAAMA;gBAC9CA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,GAAGA,EAAEA,CAACA,EAAEA;oBAClCA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,cAAcA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA;YAC9CA,CAACA;;YAEDT,qCAAAA,UAAuBA,MAAeA,EAAEA,KAAgBA,EAAEA,SAAyBA;gBAA3CU,oCAAAA,KAAKA,GAAUA,CAACA;AAAAA,gBAAEA,wCAAAA,SAASA,GAAWA,KAAKA;AAAAA,gBAElFA,IAAIA,SAASA;oBACZA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA;;gBAElBA,IAAIA,GAAGA,GAAUA,MAAMA,CAACA,MAAMA,GAAGA,KAAKA;gBACtCA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,GAAGA,EAAEA,CAACA,EAAEA;oBAClCA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,MAAMA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;;gBAErCA,IAAIA,SAASA;oBACZA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA;YACnBA,CAACA;;YAEDV,mCAAAA,UAAqBA,MAAeA,EAAEA,KAAgBA,EAAEA,SAAyBA;gBAA3CW,oCAAAA,KAAKA,GAAUA,CAACA;AAAAA,gBAAEA,wCAAAA,SAASA,GAAWA,KAAKA;AAAAA,gBAEhFA,IAAIA,SAASA;oBACZA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA;;gBAElBA,IAAIA,GAAGA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,MAAMA;gBACpCA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,GAAGA,EAAEA,CAACA,EAAEA;oBAClCA,MAAMA,CAACA,CAACA,GAAGA,KAAKA,CAAEA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA;;gBAEtCA,IAAIA,SAASA;oBACZA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA;YACnBA,CAACA;;YAKDX;;cADGA;6CACHA,UAAmBA,GAAUA,EAAEA,QAAiBA;gBAE/CY,QAAQA,GAAGA,CAACA;oBACXA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC9BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA,GAAGA,QAAQA,CAACA,CAACA;wBAC/BA,KAAMA;AAAAA,oBACPA;wBACCA,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,aAAaA,CAACA,qBAAqBA,GAAGA,GAAGA,GAAGA,4BAA4BA,CAACA;AAACA,iBACjGA;YACFA,CAACA;;YAKDZ;;cADGA;2CACHA,UAAiBA,GAAUA,EAAEA,QAAiBA;gBAE7Ca,QAAQA,GAAGA,CAACA;oBACXA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,CAACA,CAAEA;wBAC9BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAAEA,EAAEA,CAAEA;wBAC/BA,KAAMA;AAAAA,oBACPA;wBACCA,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,aAAaA,CAACA,qBAAqBA,GAAGA,GAAGA,GAAGA,4BAA4BA,CAACA;AAACA,iBACjGA;YACFA,CAACA;;YAKDb;;cADGA;gDACHA,UAAsBA,IAAaA;gBAElCc,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,CAACA;YACrCA,CAACA;;YAKDd;;cADGA;2CACHA,UAAiBA,gBAAuCA;gBAAvCe,+CAAAA,gBAAgBA,GAAUA,aAAaA;AAAAA,gBAEvDA,IAAIA,CAACA;;gBAELA,yBAAyBA;gBAEzBA,IAAIA,GAAGA,GAAcA,EAAEA;gBACvBA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA;gBACpBA,IAAIA,EAAEA,GAAGA,CAACA,CAACA,OAAOA;;gBAElBA,IAAIA,GAAGA,GAAYA,IAAIA,kBAAQA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA;gBACvDA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACVA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACVA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA;;gBAEVA,IAAIA,KAAKA,GAAYA,IAAIA,kBAAQA,CAACA,CAACA;;gBAEnCA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA;gBAC5DA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA;gBAC5DA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,GAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA;;gBAE9DA,IAAIA,EAAEA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA;oBAClHA,KAAKA,CAACA,CAACA,GAAGA,CAACA,KAAKA,CAACA,CAACA,CAACA;;gBAEpBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,EAAEA,CAACA,IAAIA,KAAKA,CAACA,CAACA;;gBAEjBA,IAAIA,GAAGA,GAAGA,IAAIA,kBAAQA,CAACA,CAACA;;gBAExBA,QAAQA,gBAAgBA,CAACA;oBACxBA,KAAKA,uBAAaA,CAACA,UAAUA;wBAE5BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,CAACA;;wBAEjDA,IAAIA,GAAGA,GAAUA,IAAIA,CAACA,IAAIA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,CAACA;wBAC/HA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,GAAGA;wBAC3BA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,GAAGA;wBAC3BA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,GAAGA;;wBAE3BA,KAAMA;AAAAA,oBACPA,KAAKA,uBAAaA,CAACA,UAAUA;wBAE5BA,IAAIA,EAAEA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA;;wBAE/BA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;4BACXA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,GAACA,CAACA;;4BAE3BA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA,MAAMA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;4BAC/CA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAACA,GAACA,CAACA;;4BAE/CA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA,MAAMA,IAAIA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAAEA;4BAC1BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAACA,GAACA,CAACA;;4BAE/CA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA,KAAMA;4BACNA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA;;4BAE/CA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA;;wBAGDA,KAAMA;AAAAA,oBACPA,KAAKA,uBAAaA,CAACA,YAAYA;wBAE9BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA;;wBAEzBA,mCAAmCA;wBAEnCA,IAAIA,EAAEA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAAEA;4BAC9BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,EAAEA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,EAAEA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAACA;yBAChCA,KAAMA;4BACNA,GAAGA,CAACA,CAACA,GAAGA,CAACA;4BACTA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,EAAEA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAACA;yBAChCA;;wBAEDA,KAAMA;AAAAA,iBACPA;;gBAEDA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA;gBACbA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA;gBACbA,GAAGA,CAACA,IAAIA,CAACA,KAAKA,CAACA;;gBAEfA,OAAOA,GAAGA;YACXA,CAACA;;YAMDf;;;cADGA;sDACHA,UAA4BA,CAAUA;gBAErCgB,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;;gBAElBA,OAAOA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,CAACA;YACpRA,CAACA;;YAKDhB;;cADGA;0CACHA;gBAECiB,IAAIA,CAACA,OAAOA,GAAGA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAAEA;YACjEA,CAACA;;YAKDjB;;cADGA;mCACHA,UAAmBA,OAAgBA,EAAEA,KAAcA,EAAEA,OAAcA;gBAElEkB,IAAIA,CAACA,GAAYA,IAAIA,QAAQA,CAACA,CAACA;gBAC/BA,KAAKA,IAAIA,CAACA,GAAUA,C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AAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACnGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACnGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACnGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;iBAClGA;gBACDA,OAAOA,UAAUA;YAClBA,CAACA;;YAWDpB;;;;cALGA;YAEHA;;cAEGA;yCACHA,UAAeA,GAAYA;gBAE1BqB,IAAIA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA;;gBAE99BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;;gBAE/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;;gBAE/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAA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AEpBA,OAAOA,IAAIA;YACZA,CAACA;;YAEDzB,qCAAAA,UAAuBA,CAAoBA;gBAE1C0B,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;;gBAElBA,OAAOA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,CAACA;YAChWA,CAACA;;YAKD1B;;cADGA;kDACHA,UAAwBA,GAAYA,EAAEA,IAAaA;gBAGlD2B,qBAAqBA;gBAErBA,IAAIA,CAACA,GAAUA,CAACA;gBAChBA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAUA,CAACA;;gBAE5CA,OAAOA,CAACA,GAAGA,CAACA,IAAIA,GAAGA,CAACA,MAAMA,CAAEA;oBAC3BA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;oBACVA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA;oBACdA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA;oBACdA,IAAIA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA;oBACtFA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA;oBAC1FA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA;oBAC3FA,CAACA,IAAIA,CAACA;iBACNA;YACFA,CAACA;;YAKD3B;;cADGA;2CACHA;gBAGC4B,qBAAqBA;gBAErBA,IAAIA,QAAQA,GAAYA,IAAIA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,CAACA;;gBAE7CA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;gBAC/BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;YAChCA,CAACA;;YAED5B,2BAAAA,UAAuBA,CAAQA,EAAEA,CAAQA,EAAEA,CAAQA,EAAEA,OAAcA;gBAGlE6B,yDAAyDA;gBAEzDA,IAAIA,CAACA,GAAYA,IAAIA,QAAQA,CAACA,CAACA;;gBAE/BA,IAAIA,GAAGA,GAAGA,OAAOA,GAACA,CAAEA,IAAIA,CAACA,EAAEA,GAACA,GAAGA,CAAEA;gBACjCA,IAAIA,CAACA,GAAUA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAC5BA,IAAIA,CAACA,GAAUA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAC5BA,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA;gBACpBA,IAAIA,IAAIA,EAASA,IAAIA;;gBAErBA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACxBA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACxBA,CAACA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;;gBAEzBA,IAAIA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACZA,IAAIA,GAAGA,CAACA,GAACA,CAACA;gBACVA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,IAAIA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACZA,IAAIA,GAAGA,CAACA,GAACA,CAACA;gBACVA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,IAAIA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACZA,IAAIA,GAAGA,CAACA,GAACA,CAACA;gBACVA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;;gBAE1BA,OAAOA,CAACA;YACTA,CAACA;;YAKD7B;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAUA,CAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,CAACA;gBACx1BA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,kBAAQA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA;gBAC1EA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAcA;oBAEjCA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC1BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC1BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAC3BA,CAACA;;;;AAPAA;;YASDA,6BAAAA,UAAeA,YAAmBA;gBAEjC8B,IAAIA,SAASA,GAAUA,IAAIA,CAACA,GAAGA,CAACA,EAAEA,EAAEA,YAAYA,CAACA;gBACjDA,OAAOA,WAAWA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA;YACz5BA,CAACA;;YAED9B,8BAAAA;gBAEC+B,OAAOA,WAAWA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAG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AGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;YACXA,CAACA;YAlCDD;gBAAAA;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA;gBACrCA,CAACA;;;;AAAAA;YASDA;gBAAAA;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA,GAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,IAAIA,CAACA,CAACA;gBACrDA,CAACA;;;;AAAAA;YAmCDA;;;;;;;;;;;;;cADGA;qCACHA,UAAWA,CAAUA;gBAEpBE,OAAOA,IAAIA,QAAQA,CAACA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;YAC5EA,CAACA;;YAmBDF;;;;;;;;;;;;;;;;cADGA;oCACHA,UAA2BA,CAAUA,EAAEA,CAAUA;gBAEhDG,OAAOA,IAAIA,CAACA,IAAIA,CAACA,CAACA,CAACA,UAAUA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,MAAMA,GAACA,CAACA,CAACA,MAAMA,CAACA,CAACA;YACtDA,CAACA;;YASDH;;;;;;cADGA;uCACHA;gBAECI,OAAOA,IAAIA,QAAQA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,CAACA;YACpDA,CAACA;;YAQDJ;;;;;cADGA;0CACHA,UAAgBA,GAAYA;gBAE3BK,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;YACfA,CAACA;;YAmBDL;;;;;;;;;;;;;;;;cADGA;8CACHA,UAAoBA,CAAUA;gBAE7BM,OAAOA,IAAIA,QAAQA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA;YAClGA,CAACA;;YAaDN;;;;;;;;;;cADGA;6CACHA,UAAmBA,CAAUA;gBAE5BO,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;YACdA,CAACA;;YAYDP;;;;;;;;;cADGA;gCACHA,UAAgBA,GAAYA,EAAEA,GAAYA;gBAEzCQ,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBAC9BA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;YAClCA,CAACA;;YA6BDR;;;;;;;;;;;;;;;;;;;;;;;;;;cADGA;4CACHA,UAAkBA,CAAUA;gBAE3BS,OAAOA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA;YAC5CA,CAACA;;YAqBDT;;;;;;;cAZGA;YAEHA;;;;;;;;;cASGA;wCACHA,UAAcA,SAAkBA,EAAEA,OAAuBA;gBAAvBU,sCAAAA,OAAOA,GAAWA,KAAKA;AAAAA,gBAExDA,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,CAACA,CAACA,OAAOA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,CAAEA,CAACA;YACzHA,CAACA;;YAYDV;;;;;;;;;cADGA;6CACHA,UAAmBA,CAAUA;gBAE5BW,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;YACdA,CAACA;;YAmCDX;;;;;;;;;;;;cArBGA;YAEHA;;;;;;;;;;;;;;;;;;cAkBGA;4CACHA,UAAkBA,SAAkBA,EAAEA,SAAgBA,EAAEA,OAAsBA;gBAAtBY,sCAAAA,OAAOA,GAAWA,IAAIA;AAAAA,gBAE7EA,OAAOA,CAACA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,IAAIA,CAACA,CAACA,OAAOA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA;YAClNA,CAACA;;YAQDZ;;;;;cADGA;wCACHA;gBAECa,IAAIA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;gBAChBA,IAAIA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;gBAChBA,IAAIA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;YACjBA,CAACA;;YAgBDb;;;;;cATGA;YACHA;;;;;;;cAOGA;2CACHA,UAAiBA,SAAoBA;gBAApBc,wCAAAA,SAASA,GAAUA,CAACA;AAAAA,gBAEpCA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,CAACA,CAAEA;oBACrBA,IAAIA,SAASA,GAAGA,SAASA,GAACA,IAAIA,CAACA,MAAMA;oBACrCA,IAAIA,CAACA,CAACA,IAAIA,SAASA;oBACnBA,IAAIA,CAACA,CAACA,IAAIA,SAASA;oBACnBA,IAAIA,CAACA,CAACA,IAAIA,SAASA;oBACnBA,MAAOA;iBACPA;YACFA,CAACA;;YAcDd;;;;;;;;;;;cADGA;yCACHA;gBAECe,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA;gBAChBA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA;gBAChBA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA;YACjBA,CAACA;;YAaDf;;;;;;;;;;cADGA;yCACHA,UAAeA,CAAQA;gBAEtBgB,IAAIA,CAACA,CAACA,IAAIA,CAACA;gBACXA,IAAIA,CAACA,CAACA,IAAIA,CAACA;gBACXA,IAAIA,CAACA,CAACA,IAAIA,CAACA;YACZA,CAACA;;YASDhB;;;;;;cADGA;uCACHA,UAAaA,EAASA,EAAEA,EAASA,EAAEA,EAASA;gBAE3CiB,IAAIA,CAACA,CAACA,GAAGA,EAAEA;gBACXA,IAAIA,CAACA,CAACA,GAAGA,EAAEA;gBACXA,IAAIA,CAACA,CAA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AACA,GAAUA,KAAKA,CAACA,CAACA;gBAClFA,IAAIA,OAAOA,GAAYA,aAAaA,CAACA,kBAAkBA;gBACvDA,IAAIA,GAAGA,GAAUA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACvBA,IAAIA,GAAGA,GAAUA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACvBA,IAAIA,GAAGA,GAAUA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;;gBACvBA,oBAAoBA;gBACpBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACtBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACpBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACtBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACpBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACvBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACpBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACdA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACdA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACfA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACfA,MAAMA,CAACA,eAAe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AGA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBACZA,GAAGA,GAAGA,GAAGA,CAACA,EAAEA,CAACA;gBACbA,GAAGA,GAAGA,GAAGA,CAACA,EAAEA,CAACA;;gBAEbA,aAAaA;gBACbA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAEzBA,cAAcA;gBACdA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAExBA,SAASA;gBACTA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAEzBA,MAAMA;gBACNA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAExBA,OAAOA;gBACPA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA;gBACPA,CAACA,GAAGA,GAAGA;gBACPA,CAACA,GAAGA,GAAGA;gBACPA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAACA,MAAMA;;gBAEjBA,MAAMA;gBACNA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAExBA,IAAIA,CAACA,mBAAmBA,GAAGA,KAAKA;YAEjCA,CAACA;;YAKDL;;cADGA;yDACHA;gBAECM,gBAAKA,CAACA,yBAAyBA,KAACA,KAAAA,CAACA;;gBAEjCA,IAAIA,CAACA,oBAAoBA,GAAGA,IAAIA;gBAChCA,IAAIA,CAACA,mBAAmBA,GAAGA,IAAIA;YAChCA,CAACA;;YAKDN;;cADGA;6CACHA;gBAECO,IAAIA,CAACA,eAAeA,GAAGA,KAAKA;gBAC5BA,IAAIA,CAACA,QAAQA,CAACA,OAAOA,CAACA,CAACA;YACxBA,CAACA;;YAKDP;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"}
\ No newline at end of file
+{"version":3,"file":"awayjs.next.js","sourceRoot":"","sources":["../src/away/errors/Error.ts","../src/away/errors/ArgumentError.ts","../src/away/errors/CastError.ts","../src/away/errors/PartialImplementationError.ts","../src/away/errors/AbstractMethodError.ts","../src/away/errors/DocumentError.ts","../src/away/errors/RangeError.ts","../src/away/events/Event.ts","../src/away/events/AssetEvent.ts","../src/away/events/CameraEvent.ts","../src/away/events/DisplayObjectEvent.ts","../src/away/events/EventDispatcher.ts","../src/away/events/GeometryEvent.ts","../src/away/events/HTTPStatusEvent.ts","../src/away/events/IEventDispatcher.ts","../src/away/events/IOErrorEvent.ts","../src/away/events/ProjectionEvent.ts","../src/away/events/LoaderEvent.ts","../src/away/events/ParserEvent.ts","../src/away/events/MouseEvent.ts","../src/away/events/MaterialEvent.ts","../src/away/events/ProgressEvent.ts","../src/away/events/RendererEvent.ts","../src/away/events/SceneEvent.ts","../src/away/events/StageGLEvent.ts","../src/away/events/SubGeometryEvent.ts","../src/away/events/TimerEvent.ts","../src/away/utils/ByteArrayBase.ts","../src/away/utils/ByteArray.ts","../src/away/utils/ByteArrayBuffer.ts","../src/away/utils/ColorUtils.ts","../src/away/utils/Cast.ts","../src/away/utils/CSS.ts","../src/away/utils/Debug.ts","../src/away/utils/Delegate.ts","../src/away/utils/getTimer.ts","../src/away/utils/RequestAnimationFrame.ts","../src/away/utils/TextureUtils.ts","../src/away/utils/Timer.ts","../src/away/parsers/ParserBase.ts","../src/away/parsers/BitmapParser.ts","../src/away/parsers/CubeTextureParser.ts","../src/away/parsers/Texture2DParser.ts","../src/away/parsers/ParserDataFormat.ts","../src/away/parsers/ParserUtils.ts","../src/away/parsers/ResourceDependency.ts","../src/away/core/library/IAsset.ts","../src/away/core/library/IDUtil.ts","../src/away/core/library/NamedAssetBase.ts","../src/away/core/library/AssetType.ts","../src/away/core/library/AssetLibraryIterator.ts","../src/away/core/library/ConflictStrategyBase.ts","../src/away/core/library/NumSuffixConflictStrategy.ts","../src/away/core/library/IgnoreConflictStrategy.ts","../src/away/core/library/ErrorConflictStrategy.ts","../src/away/core/library/ConflictPrecedence.ts","../src/away/core/library/ConflictStrategy.ts","../src/away/core/library/AssetLibraryBundle.ts","../src/away/core/library/AssetLibrary.ts","../src/away/core/gl/ContextGLClearMask.ts","../src/away/core/gl/VertexBuffer.ts","../src/away/core/gl/VertexData.ts","../src/away/core/gl/VertexDataPool.ts","../src/away/core/gl/IndexBuffer.ts","../src/away/core/gl/IndexData.ts","../src/away/core/gl/IndexDataPool.ts","../src/away/core/gl/Program.ts","../src/away/core/gl/SamplerState.ts","../src/away/core/gl/ContextGLTextureFormat.ts","../src/away/core/gl/TextureBase.ts","../src/away/core/gl/Texture.ts","../src/away/core/gl/CubeTexture.ts","../src/away/core/gl/ContextGLTriangleFace.ts","../src/away/core/gl/ContextGLVertexBufferFormat.ts","../src/away/core/gl/ContextGLProgramType.ts","../src/away/core/gl/ContextGLBlendFactor.ts","../src/away/core/gl/ContextGLCompareMode.ts","../src/away/core/gl/ContextGLMipFilter.ts","../src/away/core/gl/ContextGLProfile.ts","../src/away/core/gl/ContextGLStencilAction.ts","../src/away/core/gl/ContextGLTextureFilter.ts","../src/away/core/gl/ContextGLWrapMode.ts","../src/away/core/gl/ContextGL.ts","../src/away/core/gl/AGLSLContextGL.ts","../src/away/core/base/BlendMode.ts","../src/away/core/base/AlignmentMode.ts","../src/away/core/base/OrientationMode.ts","../src/away/core/base/BitmapData.ts","../src/away/core/base/BitmapDataChannel.ts","../src/away/core/base/CapsStyle.ts","../src/away/core/base/DisplayObject.ts","../src/away/core/base/Geometry.ts","../src/away/core/base/GradientType.ts","../src/away/core/base/Graphics.ts","../src/away/core/base/GraphicsPathWinding.ts","../src/away/core/base/IBitmapDrawable.ts","../src/away/core/base/IGraphicsData.ts","../src/away/core/base/IMaterialOwner.ts","../src/away/core/base/InterpolationMethod.ts","../src/away/core/base/ISubMesh.ts","../src/away/core/base/ISubMeshClass.ts","../src/away/core/base/SubGeometryBase.ts","../src/away/core/base/SubMeshBase.ts","../src/away/core/base/JointStyle.ts","../src/away/core/base/LineScaleMode.ts","../src/away/core/base/LineSubGeometry.ts","../src/away/core/base/LineSubMesh.ts","../src/away/core/base/LoaderInfo.ts","../src/away/core/base/PixelSnapping.ts","../src/away/core/base/SpreadMethod.ts","../src/away/core/base/StageGL.ts","../src/away/core/base/TriangleCulling.ts","../src/away/core/base/TriangleSubGeometry.ts","../src/away/core/base/TriangleSubMesh.ts","../src/away/core/pool/EntityListItem.ts","../src/away/core/pool/EntityListItemPool.ts","../src/away/core/pool/IRenderable.ts","../src/away/core/pool/IRenderableClass.ts","../src/away/core/pool/RenderablePool.ts","../src/away/core/pool/CSSRenderableBase.ts","../src/away/core/pool/CSSBillboardRenderable.ts","../src/away/core/pool/CSSLineSegmentRenderable.ts","../src/away/core/traverse/ICollector.ts","../src/away/core/traverse/CollectorBase.ts","../src/away/core/traverse/RaycastCollector.ts","../src/away/core/traverse/CSSEntityCollector.ts","../src/away/core/partition/NodeBase.ts","../src/away/core/partition/NullNode.ts","../src/away/core/partition/Partition.ts","../src/away/core/partition/EntityNode.ts","../src/away/core/partition/CameraNode.ts","../src/away/core/partition/SkyboxNode.ts","../src/away/core/pick/IPickingCollider.ts","../src/away/core/pick/IPicker.ts","../src/away/core/pick/PickingCollisionVO.ts","../src/away/core/pick/RaycastPicker.ts","../src/away/core/render/IRenderer.ts","../src/away/core/render/CSSRendererBase.ts","../src/away/core/render/CSSDefaultRenderer.ts","../src/away/core/sort/IEntitySorter.ts","../src/away/core/sort/RenderableMergeSort.ts","../src/away/core/geom/Box.ts","../src/away/core/geom/ColorTransform.ts","../src/away/core/geom/Matrix.ts","../src/away/core/geom/Matrix3D.ts","../src/away/core/geom/Orientation3D.ts","../src/away/core/geom/PerspectiveProjection.ts","../src/away/core/geom/Point.ts","../src/away/core/geom/Rectangle.ts","../src/away/core/geom/Transform.ts","../src/away/core/geom/UVTransform.ts","../src/away/core/geom/Vector3D.ts","../src/away/core/geom/MathConsts.ts","../src/away/core/geom/Quaternion.ts","../src/away/core/geom/PlaneClassification.ts","../src/away/core/geom/Plane3D.ts","../src/away/core/geom/Matrix3DUtils.ts","../src/away/core/geom/PoissonLookup.ts","../src/away/core/net/AssetLoaderContext.ts","../src/away/core/net/AssetLoader.ts","../src/away/core/net/AssetLoaderToken.ts","../src/away/core/net/URLRequest.ts","../src/away/core/net/URLLoaderDataFormat.ts","../src/away/core/net/URLRequestMethod.ts","../src/away/core/net/URLLoader.ts","../src/away/core/net/URLVariables.ts","../src/away/core/text/AntiAliasType.ts","../src/away/core/text/GridFitType.ts","../src/away/core/text/TextFieldAutoSize.ts","../src/away/core/text/TextFieldType.ts","../src/away/core/text/TextFormat.ts","../src/away/core/text/TextFormatAlign.ts","../src/away/core/text/TextInteractionMode.ts","../src/away/core/text/TextLineMetrics.ts","../src/away/core/ui/Keyboard.ts","../src/away/containers/DisplayObjectContainer.ts","../src/away/entities/IEntity.ts","../src/away/entities/Billboard.ts","../src/away/entities/Camera.ts","../src/away/entities/LineSegment.ts","../src/away/entities/Mesh.ts","../src/away/entities/Shape.ts","../src/away/entities/Skybox.ts","../src/away/entities/TextField.ts","../src/away/projections/CoordinateSystem.ts","../src/away/projections/IProjection.ts","../src/away/projections/ProjectionBase.ts","../src/away/projections/PerspectiveProjection.ts","../src/away/projections/FreeMatrixProjection.ts","../src/away/projections/OrthographicProjection.ts","../src/away/projections/OrthographicOffCenterProjection.ts","../src/away/projections/ObliqueNearPlaneProjection.ts","../src/away/managers/MouseManager.ts","../src/away/managers/RTTBufferManager.ts","../src/away/managers/StageGLManager.ts","../src/away/containers/Loader.ts","../src/away/containers/Scene.ts","../src/away/containers/View.ts","../src/away/bounds/BoundingVolumeBase.ts","../src/away/bounds/NullBounds.ts","../src/away/bounds/BoundingSphere.ts","../src/away/bounds/AxisAlignedBoundingBox.ts","../src/away/controllers/ControllerBase.ts","../src/away/controllers/LookAtController.ts","../src/away/controllers/HoverController.ts","../src/away/controllers/FirstPersonController.ts","../src/away/controllers/FollowController.ts","../src/away/controllers/SpringController.ts","../src/away/materials/IMaterial.ts","../src/away/materials/CSSMaterialBase.ts","../src/away/prefabs/PrefabBase.ts","../src/away/animators/nodes/AnimationNodeBase.ts","../src/away/animators/IAnimationSet.ts","../src/away/animators/IAnimator.ts","../src/away/textures/TextureProxyBase.ts","../src/away/textures/Texture2DBase.ts","../src/away/textures/CubeTextureBase.ts","../src/away/textures/ATFData.ts","../src/away/textures/ATFCubeTexture.ts","../src/away/textures/ATFTexture.ts","../src/away/textures/ImageTexture.ts","../src/away/textures/BitmapTexture.ts","../src/away/textures/RenderTexture.ts","../src/away/textures/ImageCubeTexture.ts","../src/away/textures/BitmapCubeTexture.ts","../src/away/textures/MipmapGenerator.ts","../src/away/textures/SpecularBitmapTexture.ts","../src/aglsl/Sampler.ts","../src/aglsl/Token.ts","../src/aglsl/Header.ts","../src/aglsl/OpLUT.ts","../src/aglsl/Description.ts","../src/aglsl/Destination.ts","../src/aglsl/ContextGL.ts","../src/aglsl/Mapping.ts","../src/aglsl/assembler/OpCode.ts","../src/aglsl/assembler/OpcodeMap.ts","../src/aglsl/assembler/Part.ts","../src/aglsl/assembler/RegMap.ts","../src/aglsl/assembler/SamplerMap.ts","../src/aglsl/assembler/AGALMiniAssembler.ts","../src/aglsl/AGALTokenizer.ts","../src/aglsl/Parser.ts","../src/aglsl/AGLSLCompiler.ts","../src/away/_definitions.ts","../src/awayjs.ts"],"names":["away","away.errors","away.errors.Error","away.errors.Error.constructor","away.errors.ArgumentError","away.errors.ArgumentError.constructor","away.errors.CastError","away.errors.CastError.constructor","away.errors.PartialImplementationError","away.errors.PartialImplementationError.constructor","away.errors.AbstractMethodError","away.errors.AbstractMethodError.constructor","away.errors.DocumentError","away.errors.DocumentError.constructor","away.errors.RangeError","away.errors.RangeError.constructor","away.events","away.events.Event","away.events.Event.constructor","away.events.Event.clone","away.events.AssetEvent","away.events.AssetEvent.constructor","away.events.AssetEvent.clone","away.events.CameraEvent","away.events.CameraEvent.constructor","away.events.DisplayObjectEvent","away.events.DisplayObjectEvent.constructor","away.events.EventDispatcher","away.events.EventDispatcher.constructor","away.events.EventDispatcher.addEventListener","away.events.EventDispatcher.removeEventListener","away.events.EventDispatcher.dispatchEvent","away.events.EventDispatcher.getEventListenerIndex","away.events.EventDispatcher.hasEventListener","away.events.GeometryEvent","away.events.GeometryEvent.constructor","away.events.GeometryEvent.clone","away.events.HTTPStatusEvent","away.events.HTTPStatusEvent.constructor","away.events.IOErrorEvent","away.events.IOErrorEvent.constructor","away.events.ProjectionEvent","away.events.ProjectionEvent.constructor","away.events.LoaderEvent","away.events.LoaderEvent.constructor","away.events.LoaderEvent.clone","away.events.ParserEvent","away.events.ParserEvent.constructor","away.events.ParserEvent.clone","away.events.MouseEvent","away.events.MouseEvent.constructor","away.events.MouseEvent.stopPropagation","away.events.MouseEvent.stopImmediatePropagation","away.events.MouseEvent.clone","away.events.MaterialEvent","away.events.MaterialEvent.constructor","away.events.ProgressEvent","away.events.ProgressEvent.constructor","away.events.RendererEvent","away.events.RendererEvent.constructor","away.events.SceneEvent","away.events.SceneEvent.constructor","away.events.StageGLEvent","away.events.StageGLEvent.constructor","away.events.SubGeometryEvent","away.events.SubGeometryEvent.constructor","away.events.SubGeometryEvent.clone","away.events.TimerEvent","away.events.TimerEvent.constructor","away.utils","away.utils.ByteArrayBase","away.utils.ByteArrayBase.constructor","away.utils.ByteArrayBase.writeByte","away.utils.ByteArrayBase.readByte","away.utils.ByteArrayBase.writeUnsignedByte","away.utils.ByteArrayBase.readUnsignedByte","away.utils.ByteArrayBase.writeUnsignedShort","away.utils.ByteArrayBase.readUnsignedShort","away.utils.ByteArrayBase.writeUnsignedInt","away.utils.ByteArrayBase.readUnsignedInt","away.utils.ByteArrayBase.writeFloat","away.utils.ByteArrayBase.toFloatBits","away.utils.ByteArrayBase.readFloat","away.utils.ByteArrayBase.fromFloatBits","away.utils.ByteArrayBase.getBytesAvailable","away.utils.ByteArrayBase.toString","away.utils.ByteArrayBase.compareEqual","away.utils.ByteArrayBase.writeBase64String","away.utils.ByteArrayBase.dumpToConsole","away.utils.ByteArrayBase.dumpToConsole.asHexString","away.utils.ByteArrayBase.internalGetBase64String","away.utils.ByteArray","away.utils.ByteArray.constructor","away.utils.ByteArray.ensureWriteableSpace","away.utils.ByteArray.setArrayBuffer","away.utils.ByteArray.getBytesAvailable","away.utils.ByteArray.ensureSpace","away.utils.ByteArray.writeByte","away.utils.ByteArray.readByte","away.utils.ByteArray.readBytes","away.utils.ByteArray.writeUnsignedByte","away.utils.ByteArray.readUnsignedByte","away.utils.ByteArray.writeUnsignedShort","away.utils.ByteArray.readUTFBytes","away.utils.ByteArray.readInt","away.utils.ByteArray.readShort","away.utils.ByteArray.readDouble","away.utils.ByteArray.readUnsignedShort","away.utils.ByteArray.writeUnsignedInt","away.utils.ByteArray.readUnsignedInt","away.utils.ByteArray.writeFloat","away.utils.ByteArray.readFloat","away.utils.ByteArrayBuffer","away.utils.ByteArrayBuffer.constructor","away.utils.ByteArrayBuffer.writeByte","away.utils.ByteArrayBuffer.readByte","away.utils.ByteArrayBuffer.writeUnsignedByte","away.utils.ByteArrayBuffer.readUnsignedByte","away.utils.ByteArrayBuffer.writeUnsignedShort","away.utils.ByteArrayBuffer.readUnsignedShort","away.utils.ByteArrayBuffer.writeUnsignedInt","away.utils.ByteArrayBuffer.readUnsignedInt","away.utils.ByteArrayBuffer.writeFloat","away.utils.ByteArrayBuffer.toFloatBits","away.utils.ByteArrayBuffer.readFloat","away.utils.ByteArrayBuffer.fromFloatBits","away.utils.ColorUtils","away.utils.ColorUtils.constructor","away.utils.ColorUtils.float32ColorToARGB","away.utils.ColorUtils.componentToHex","away.utils.ColorUtils.RGBToHexString","away.utils.ColorUtils.ARGBToHexString","away.utils.Cast","away.utils.Cast.constructor","away.utils.Cast.string","away.utils.Cast.byteArray","away.utils.Cast.isHex","away.utils.Cast.tryColor","away.utils.Cast.color","away.utils.Cast.tryClass","away.utils.Cast.bitmapData","away.utils.Cast.bitmapTexture","away.utils.CSS","away.utils.CSS.constructor","away.utils.CSS.setCanvasSize","away.utils.CSS.setCanvasWidth","away.utils.CSS.setCanvasHeight","away.utils.CSS.setCanvasX","away.utils.CSS.setCanvasY","away.utils.CSS.getCanvasVisibility","away.utils.CSS.setCanvasVisibility","away.utils.CSS.setCanvasAlpha","away.utils.CSS.setCanvasPosition","away.Debug","away.Debug.constructor","away.Debug.breakpoint","away.Debug.throwPIROnKeyWordOnly","away.Debug.throwPIR","away.Debug.logPIR","away.Debug.log","away.utils.Delegate","away.utils.Delegate.constructor","away.utils.Delegate.create","away.utils.Delegate.createDelegate","away.utils.getTimer","away.utils.RequestAnimationFrame","away.utils.RequestAnimationFrame.constructor","away.utils.RequestAnimationFrame.setCallback","away.utils.RequestAnimationFrame.start","away.utils.RequestAnimationFrame.stop","away.utils.RequestAnimationFrame._tick","away.utils.TextureUtils","away.utils.TextureUtils.constructor","away.utils.TextureUtils.isBitmapDataValid","away.utils.TextureUtils.isHTMLImageElementValid","away.utils.TextureUtils.isDimensionValid","away.utils.TextureUtils.isPowerOfTwo","away.utils.TextureUtils.getBestPowerOf2","away.utils.Timer","away.utils.Timer.constructor","away.utils.Timer.reset","away.utils.Timer.start","away.utils.Timer.stop","away.utils.Timer.tick","away.parsers","away.parsers.ParserBase","away.parsers.ParserBase.constructor","away.parsers.ParserBase.supportsType","away.parsers.ParserBase.isBitmapDataValid","away.parsers.ParserBase.parseAsync","away.parsers.ParserBase._iResolveDependency","away.parsers.ParserBase._iResolveDependencyFailure","away.parsers.ParserBase._iResolveDependencyName","away.parsers.ParserBase._iResumeParsingAfterDependencies","away.parsers.ParserBase._pFinalizeAsset","away.parsers.ParserBase._pProceedParsing","away.parsers.ParserBase._pDieWithError","away.parsers.ParserBase._pAddDependency","away.parsers.ParserBase._pPauseAndRetrieveDependencies","away.parsers.ParserBase._pHasTime","away.parsers.ParserBase._pOnInterval","away.parsers.ParserBase._pStartParsing","away.parsers.ParserBase._pFinishParsing","away.parsers.ParserBase._pGetTextData","away.parsers.ParserBase._pGetByteData","away.parsers.BitmapParser","away.parsers.BitmapParser.constructor","away.parsers.BitmapParser.supportsType","away.parsers.BitmapParser.supportsData","away.parsers.BitmapParser._pProceedParsing","away.parsers.BitmapParser.onLoadComplete","away.parsers.CubeTextureParser","away.parsers.CubeTextureParser.constructor","away.parsers.CubeTextureParser.supportsType","away.parsers.CubeTextureParser.supportsData","away.parsers.CubeTextureParser._iResolveDependency","away.parsers.CubeTextureParser._iResolveDependencyFailure","away.parsers.CubeTextureParser._pProceedParsing","away.parsers.CubeTextureParser._validateCubeData","away.parsers.CubeTextureParser._getHTMLImageElement","away.parsers.Texture2DParser","away.parsers.Texture2DParser.constructor","away.parsers.Texture2DParser.supportsType","away.parsers.Texture2DParser.supportsData","away.parsers.Texture2DParser._pProceedParsing","away.parsers.ParserDataFormat","away.parsers.ParserDataFormat.constructor","away.parsers.ParserUtils","away.parsers.ParserUtils.constructor","away.parsers.ParserUtils.arrayBufferToImage","away.parsers.ParserUtils.byteArrayToImage","away.parsers.ParserUtils.blobToImage","away.parsers.ParserUtils.toByteArray","away.parsers.ParserUtils.toString","away.parsers.ResourceDependency","away.parsers.ResourceDependency.constructor","away.parsers.ResourceDependency._iSetData","away.parsers.ResourceDependency._iSetParser","away.parsers.ResourceDependency.resolve","away.parsers.ResourceDependency.resolveFailure","away.parsers.ResourceDependency.resolveName","away.library","away.library.IDUtil","away.library.IDUtil.constructor","away.library.IDUtil.createUID","away.library.NamedAssetBase","away.library.NamedAssetBase.constructor","away.library.NamedAssetBase.dispose","away.library.NamedAssetBase.assetPathEquals","away.library.NamedAssetBase.resetAssetPath","away.library.NamedAssetBase.updateFullPath","away.library.AssetType","away.library.AssetType.constructor","away.library.AssetLibraryIterator","away.library.AssetLibraryIterator.constructor","away.library.AssetLibraryIterator.next","away.library.AssetLibraryIterator.reset","away.library.AssetLibraryIterator.setIndex","away.library.AssetLibraryIterator.filter","away.library.ConflictStrategyBase","away.library.ConflictStrategyBase.constructor","away.library.ConflictStrategyBase.resolveConflict","away.library.ConflictStrategyBase.create","away.library.ConflictStrategyBase._pUpdateNames","away.library.NumSuffixConflictStrategy","away.library.NumSuffixConflictStrategy.constructor","away.library.NumSuffixConflictStrategy.resolveConflict","away.library.NumSuffixConflictStrategy.create","away.library.IgnoreConflictStrategy","away.library.IgnoreConflictStrategy.constructor","away.library.IgnoreConflictStrategy.resolveConflict","away.library.IgnoreConflictStrategy.create","away.library.ErrorConflictStrategy","away.library.ErrorConflictStrategy.constructor","away.library.ErrorConflictStrategy.resolveConflict","away.library.ErrorConflictStrategy.create","away.library.ConflictPrecedence","away.library.ConflictPrecedence.constructor","away.library.ConflictStrategy","away.library.ConflictStrategy.constructor","away.library.AssetLibraryBundle","away.library.AssetLibraryBundle.constructor","away.library.AssetLibraryBundle.getInstance","away.library.AssetLibraryBundle.enableParser","away.library.AssetLibraryBundle.enableParsers","away.library.AssetLibraryBundle.createIterator","away.library.AssetLibraryBundle.load","away.library.AssetLibraryBundle.loadData","away.library.AssetLibraryBundle.getAsset","away.library.AssetLibraryBundle.addAsset","away.library.AssetLibraryBundle.removeAsset","away.library.AssetLibraryBundle.removeAssetByName","away.library.AssetLibraryBundle.removeAllAssets","away.library.AssetLibraryBundle.removeNamespaceAssets","away.library.AssetLibraryBundle.removeAssetFromDict","away.library.AssetLibraryBundle.stopAllLoadingSessions","away.library.AssetLibraryBundle.rehashAssetDict","away.library.AssetLibraryBundle.onLoadError","away.library.AssetLibraryBundle.onParseError","away.library.AssetLibraryBundle.onAssetComplete","away.library.AssetLibraryBundle.onTextureSizeError","away.library.AssetLibraryBundle.onResourceComplete","away.library.AssetLibraryBundle.loadingSessionGC","away.library.AssetLibraryBundle.killLoadingSession","away.library.AssetLibraryBundle.onAssetRename","away.library.AssetLibraryBundle.onAssetConflictResolved","AssetLibraryBundleSingletonEnforcer","AssetLibraryBundleSingletonEnforcer.constructor","away.library.AssetLibrary","away.library.AssetLibrary.constructor","away.library.AssetLibrary.getBundle","away.library.AssetLibrary.enableParser","away.library.AssetLibrary.enableParsers","away.library.AssetLibrary.createIterator","away.library.AssetLibrary.load","away.library.AssetLibrary.loadData","away.library.AssetLibrary.stopLoad","away.library.AssetLibrary.getAsset","away.library.AssetLibrary.addEventListener","away.library.AssetLibrary.removeEventListener","away.library.AssetLibrary.addAsset","away.library.AssetLibrary.removeAsset","away.library.AssetLibrary.removeAssetByName","away.library.AssetLibrary.removeAllAssets","away.library.AssetLibrary.removeNamespaceAssets","AssetLibrarySingletonEnforcer","AssetLibrarySingletonEnforcer.constructor","away.gl","away.gl.ContextGLClearMask","away.gl.ContextGLClearMask.constructor","away.gl.VertexBuffer","away.gl.VertexBuffer.constructor","away.gl.VertexBuffer.uploadFromArray","away.gl.VertexBuffer.dispose","away.gl.VertexData","away.gl.VertexData.constructor","away.gl.VertexData.updateData","away.gl.VertexData.invalidateData","away.gl.VertexData.dispose","away.gl.VertexData.disposeBuffers","away.gl.VertexData.invalidateBuffers","away.gl.VertexData.setData","away.gl.VertexDataPool","away.gl.VertexDataPool.constructor","away.gl.VertexDataPool.getItem","away.gl.VertexDataPool.disposeItem","away.gl.VertexDataPool.disposeData","away.gl.IndexBuffer","away.gl.IndexBuffer.constructor","away.gl.IndexBuffer.uploadFromArray","away.gl.IndexBuffer.dispose","away.gl.IndexData","away.gl.IndexData.constructor","away.gl.IndexData.updateData","away.gl.IndexData.invalidateData","away.gl.IndexData.dispose","away.gl.IndexData.disposeBuffers","away.gl.IndexData.invalidateBuffers","away.gl.IndexData.setData","away.gl.IndexDataPool","away.gl.IndexDataPool.constructor","away.gl.IndexDataPool.getItem","away.gl.IndexDataPool.disposeItem","away.gl.IndexDataPool.disposeData","away.gl.Program","away.gl.Program.constructor","away.gl.Program.upload","away.gl.Program.dispose","away.gl.Program.focusProgram","away.gl.SamplerState","away.gl.SamplerState.constructor","away.gl.ContextGLTextureFormat","away.gl.ContextGLTextureFormat.constructor","away.gl.TextureBase","away.gl.TextureBase.constructor","away.gl.TextureBase.dispose","away.gl.Texture","away.gl.Texture.constructor","away.gl.Texture.dispose","away.gl.Texture.uploadFromHTMLImageElement","away.gl.Texture.uploadFromBitmapData","away.gl.Texture.uploadCompressedTextureFromByteArray","away.gl.Texture.generateFromRenderBuffer","away.gl.Texture.generateMipmaps","away.gl.CubeTexture","away.gl.CubeTexture.constructor","away.gl.CubeTexture.dispose","away.gl.CubeTexture.uploadFromHTMLImageElement","away.gl.CubeTexture.uploadFromBitmapData","away.gl.CubeTexture.uploadCompressedTextureFromByteArray","away.gl.ContextGLTriangleFace","away.gl.ContextGLTriangleFace.constructor","away.gl.ContextGLVertexBufferFormat","away.gl.ContextGLVertexBufferFormat.constructor","away.gl.ContextGLProgramType","away.gl.ContextGLProgramType.constructor","away.gl.ContextGLBlendFactor","away.gl.ContextGLBlendFactor.constructor","away.gl.ContextGLCompareMode","away.gl.ContextGLCompareMode.constructor","away.gl.ContextGLMipFilter","away.gl.ContextGLMipFilter.constructor","away.gl.ContextGLProfile","away.gl.ContextGLProfile.constructor","away.gl.ContextGLStencilAction","away.gl.ContextGLStencilAction.constructor","away.gl.ContextGLTextureFilter","away.gl.ContextGLTextureFilter.constructor","away.gl.ContextGLWrapMode","away.gl.ContextGLWrapMode.constructor","away.gl.ContextGL","away.gl.ContextGL.constructor","away.gl.ContextGL.gl","away.gl.ContextGL.clear","away.gl.ContextGL.configureBackBuffer","away.gl.ContextGL.createCubeTexture","away.gl.ContextGL.createIndexBuffer","away.gl.ContextGL.createProgram","away.gl.ContextGL.createTexture","away.gl.ContextGL.createVertexBuffer","away.gl.ContextGL.dispose","away.gl.ContextGL.drawToBitmapData","away.gl.ContextGL.drawTriangles","away.gl.ContextGL.present","away.gl.ContextGL.setBlendFactors","away.gl.ContextGL.setColorMask","away.gl.ContextGL.setCulling","away.gl.ContextGL.setDepthTest","away.gl.ContextGL.setProgram","away.gl.ContextGL.getUniformLocationNameFromAgalRegisterIndex","away.gl.ContextGL.setProgramConstantsFromMatrix","away.gl.ContextGL.setProgramConstantsFromArray","away.gl.ContextGL.setGLSLProgramConstantsFromMatrix","away.gl.ContextGL.setGLSLProgramConstantsFromArray","away.gl.ContextGL.setScissorRectangle","away.gl.ContextGL.setTextureAt","away.gl.ContextGL.setGLSLTextureAt","away.gl.ContextGL.setSamplerStateAt","away.gl.ContextGL.setVertexBufferAt","away.gl.ContextGL.setGLSLVertexBufferAt","away.gl.ContextGL.setRenderToTexture","away.gl.ContextGL.setRenderToBackBuffer","away.gl.ContextGL.updateBlendStatus","away.gl.AGLSLContextGL","away.gl.AGLSLContextGL.constructor","away.gl.AGLSLContextGL.setProgramConstantsFromMatrix","away.base","away.base.BlendMode","away.base.BlendMode.constructor","away.base.AlignmentMode","away.base.AlignmentMode.constructor","away.base.OrientationMode","away.base.OrientationMode.constructor","away.base.BitmapData","away.base.BitmapData.constructor","away.base.BitmapData.dispose","away.base.BitmapData.lock","away.base.BitmapData.unlock","away.base.BitmapData.getPixel","away.base.BitmapData.setPixel","away.base.BitmapData.setPixels","away.base.BitmapData.setPixel32","away.base.BitmapData.setVector","away.base.BitmapData.drawImage","away.base.BitmapData._drawImage","away.base.BitmapData.copyPixels","away.base.BitmapData._copyPixels","away.base.BitmapData.fillRect","away.base.BitmapData.draw","away.base.BitmapData._draw","away.base.BitmapData.copyChannel","away.base.BitmapData.colorTransform","away.base.BitmapData.hexToRGBACSS","away.base.BitmapDataChannel","away.base.BitmapDataChannel.constructor","away.base.CapsStyle","away.base.CapsStyle.constructor","away.base.DisplayObject","away.base.DisplayObject.constructor","away.base.DisplayObject.addEventListener","away.base.DisplayObject.clone","away.base.DisplayObject.dispose","away.base.DisplayObject.disposeAsset","away.base.DisplayObject.getBounds","away.base.DisplayObject.getRect","away.base.DisplayObject.globalToLocal","away.base.DisplayObject.globalToLocal3D","away.base.DisplayObject.hitTestObject","away.base.DisplayObject.hitTestPoint","away.base.DisplayObject.isIntersectingRay","away.base.DisplayObject.local3DToGlobal","away.base.DisplayObject.lookAt","away.base.DisplayObject.localToGlobal","away.base.DisplayObject.moveTo","away.base.DisplayObject.movePivot","away.base.DisplayObject.pitch","away.base.DisplayObject.getRenderSceneTransform","away.base.DisplayObject.roll","away.base.DisplayObject.rotate","away.base.DisplayObject.rotateTo","away.base.DisplayObject.removeEventListener","away.base.DisplayObject.translate","away.base.DisplayObject.translateLocal","away.base.DisplayObject.yaw","away.base.DisplayObject.iSetParent","away.base.DisplayObject.pCreateDefaultBoundingVolume","away.base.DisplayObject.pCreateEntityPartitionNode","away.base.DisplayObject.pInvalidateBounds","away.base.DisplayObject.pInvalidateSceneTransform","away.base.DisplayObject.pUpdateBounds","away.base.DisplayObject._pUpdateImplicitMouseEnabled","away.base.DisplayObject._pUpdateImplicitPartition","away.base.DisplayObject._pUpdateImplicitVisibility","away.base.DisplayObject._pUpdateMatrix3D","away.base.DisplayObject.pUpdateSceneTransform","away.base.DisplayObject._iAddRenderable","away.base.DisplayObject._iRemoveRenderable","away.base.DisplayObject._iTestCollision","away.base.DisplayObject._iInternalUpdate","away.base.DisplayObject._iIsVisible","away.base.DisplayObject._iIsMouseEnabled","away.base.DisplayObject._iSetScene","away.base.DisplayObject._pUpdateScene","away.base.DisplayObject.notifyPositionChanged","away.base.DisplayObject.notifyRotationChanged","away.base.DisplayObject.notifyScaleChanged","away.base.DisplayObject.notifySceneChange","away.base.DisplayObject.notifySceneTransformChange","away.base.DisplayObject.invalidateMatrix3D","away.base.DisplayObject.invalidatePartition","away.base.DisplayObject.invalidatePivot","away.base.DisplayObject.invalidatePosition","away.base.DisplayObject.invalidateRotation","away.base.DisplayObject.invalidateScale","away.base.Geometry","away.base.Geometry.constructor","away.base.Geometry.getSubGeometries","away.base.Geometry.applyTransformation","away.base.Geometry.addSubGeometry","away.base.Geometry.removeSubGeometry","away.base.Geometry.clone","away.base.Geometry.scale","away.base.Geometry.dispose","away.base.Geometry.scaleUV","away.base.Geometry.iInvalidateBounds","away.base.GradientType","away.base.GradientType.constructor","away.base.Graphics","away.base.Graphics.constructor","away.base.Graphics.beginBitmapFill","away.base.Graphics.beginFill","away.base.Graphics.beginGradientFill","away.base.Graphics.clear","away.base.Graphics.copyFrom","away.base.Graphics.cubicCurveTo","away.base.Graphics.curveTo","away.base.Graphics.drawCircle","away.base.Graphics.drawEllipse","away.base.Graphics.drawGraphicsData","away.base.Graphics.drawPath","away.base.Graphics.drawRect","away.base.Graphics.drawRoundRect","away.base.Graphics.drawTriangles","away.base.Graphics.endFill","away.base.Graphics.lineBitmapStyle","away.base.Graphics.lineGradientStyle","away.base.Graphics.lineStyle","away.base.Graphics.lineTo","away.base.Graphics.moveTo","away.base.GraphicsPathWinding","away.base.GraphicsPathWinding.constructor","away.base.InterpolationMethod","away.base.InterpolationMethod.constructor","away.base.SubGeometryBase","away.base.SubGeometryBase.constructor","away.base.SubGeometryBase._pUpdateStrideOffset","away.base.SubGeometryBase.getStride","away.base.SubGeometryBase.getOffset","away.base.SubGeometryBase.updateVertices","away.base.SubGeometryBase.dispose","away.base.SubGeometryBase.updateIndices","away.base.SubGeometryBase.pInvalidateBounds","away.base.SubGeometryBase.clone","away.base.SubGeometryBase.applyTransformation","away.base.SubGeometryBase.scale","away.base.SubGeometryBase.scaleUV","away.base.SubGeometryBase.getBoundingPositions","away.base.SubGeometryBase.notifyIndicesUpdate","away.base.SubGeometryBase._pNotifyVerticesUpdate","away.base.SubMeshBase","away.base.SubMeshBase.constructor","away.base.SubMeshBase.dispose","away.base.SubMeshBase.getRenderSceneTransform","away.base.SubMeshBase._iAddRenderable","away.base.SubMeshBase._iRemoveRenderable","away.base.SubMeshBase._iInvalidateRenderableGeometry","away.base.SubMeshBase._iCollectRenderable","away.base.SubMeshBase._iGetExplicitMaterial","away.base.JointStyle","away.base.JointStyle.constructor","away.base.LineScaleMode","away.base.LineScaleMode.constructor","away.base.LineSubGeometry","away.base.LineSubGeometry.constructor","away.base.LineSubGeometry._pUpdateStrideOffset","away.base.LineSubGeometry.getBoundingPositions","away.base.LineSubGeometry.updatePositions","away.base.LineSubGeometry.updateThickness","away.base.LineSubGeometry.updateColors","away.base.LineSubGeometry.dispose","away.base.LineSubGeometry.pInvalidateBounds","away.base.LineSubGeometry.clone","away.base.LineSubGeometry._pNotifyVerticesUpdate","away.base.LineSubGeometry.notifyPositionsUpdate","away.base.LineSubGeometry.notifyThicknessUpdate","away.base.LineSubGeometry.notifyColorsUpdate","away.base.LineSubMesh","away.base.LineSubMesh.constructor","away.base.LineSubMesh.dispose","away.base.LineSubMesh._iCollectRenderable","away.base.LoaderInfo","away.base.LoaderInfo.constructor","away.base.PixelSnapping","away.base.PixelSnapping.constructor","away.base.SpreadMethod","away.base.SpreadMethod.constructor","away.base.StageGL","away.base.StageGL.constructor","away.base.StageGL.requestContext","away.base.StageGL.notifyViewportUpdated","away.base.StageGL.notifyEnterFrame","away.base.StageGL.notifyExitFrame","away.base.StageGL.dispose","away.base.StageGL.configureBackBuffer","away.base.StageGL.setRenderTarget","away.base.StageGL.clear","away.base.StageGL.present","away.base.StageGL.addEventListener","away.base.StageGL.removeEventListener","away.base.StageGL.activateBuffer","away.base.StageGL.disposeVertexData","away.base.StageGL.getIndexBuffer","away.base.StageGL.disposeIndexData","away.base.StageGL.freeContextGL","away.base.StageGL.onEnterFrame","away.base.StageGL.recoverFromDisposal","away.base.StageGL.clearDepthBuffer","away.base.TriangleCulling","away.base.TriangleCulling.constructor","away.base.TriangleSubGeometry","away.base.TriangleSubGeometry.constructor","away.base.TriangleSubGeometry._pUpdateStrideOffset","away.base.TriangleSubGeometry.getBoundingPositions","away.base.TriangleSubGeometry.updatePositions","away.base.TriangleSubGeometry.updateVertexNormals","away.base.TriangleSubGeometry.updateVertexTangents","away.base.TriangleSubGeometry.updateUVs","away.base.TriangleSubGeometry.updateSecondaryUVs","away.base.TriangleSubGeometry.updateJointIndices","away.base.TriangleSubGeometry.updateJointWeights","away.base.TriangleSubGeometry.dispose","away.base.TriangleSubGeometry.updateIndices","away.base.TriangleSubGeometry.clone","away.base.TriangleSubGeometry.scaleUV","away.base.TriangleSubGeometry.scale","away.base.TriangleSubGeometry.applyTransformation","away.base.TriangleSubGeometry.updateFaceTangents","away.base.TriangleSubGeometry.updateFaceNormals","away.base.TriangleSubGeometry._pNotifyVerticesUpdate","away.base.TriangleSubGeometry.notifyPositionsUpdate","away.base.TriangleSubGeometry.notifyNormalsUpdate","away.base.TriangleSubGeometry.notifyTangentsUpdate","away.base.TriangleSubGeometry.notifyUVsUpdate","away.base.TriangleSubGeometry.notifySecondaryUVsUpdate","away.base.TriangleSubGeometry.notifyJointIndicesUpdate","away.base.TriangleSubGeometry.notifyJointWeightsUpdate","away.base.TriangleSubMesh","away.base.TriangleSubMesh.constructor","away.base.TriangleSubMesh.dispose","away.base.TriangleSubMesh._iCollectRenderable","away.pool","away.pool.EntityListItem","away.pool.EntityListItem.constructor","away.pool.EntityListItemPool","away.pool.EntityListItemPool.constructor","away.pool.EntityListItemPool.getItem","away.pool.EntityListItemPool.freeAll","away.pool.EntityListItemPool.dispose","away.pool.RenderablePool","away.pool.RenderablePool.constructor","away.pool.RenderablePool.getItem","away.pool.RenderablePool.disposeItem","away.pool.RenderablePool.getPool","away.pool.RenderablePool.disposePool","away.pool.CSSRenderableBase","away.pool.CSSRenderableBase.constructor","away.pool.CSSRenderableBase.dispose","away.pool.CSSRenderableBase.invalidateGeometry","away.pool.CSSRenderableBase.invalidateIndexData","away.pool.CSSRenderableBase.invalidateVertexData","away.pool.CSSBillboardRenderable","away.pool.CSSBillboardRenderable.constructor","away.pool.CSSLineSegmentRenderable","away.pool.CSSLineSegmentRenderable.constructor","away.traverse","away.traverse.CollectorBase","away.traverse.CollectorBase.constructor","away.traverse.CollectorBase.clear","away.traverse.CollectorBase.enterNode","away.traverse.CollectorBase.applyDirectionalLight","away.traverse.CollectorBase.applyEntity","away.traverse.CollectorBase.applyLightProbe","away.traverse.CollectorBase.applyPointLight","away.traverse.RaycastCollector","away.traverse.RaycastCollector.constructor","away.traverse.RaycastCollector.enterNode","away.traverse.CSSEntityCollector","away.traverse.CSSEntityCollector.constructor","away.partition","away.partition.NodeBase","away.partition.NodeBase.constructor","away.partition.NodeBase.isInFrustum","away.partition.NodeBase.isIntersectingRay","away.partition.NodeBase.isCastingShadow","away.partition.NodeBase.findPartitionForEntity","away.partition.NodeBase.acceptTraverser","away.partition.NodeBase._pCreateBoundsPrimitive","away.partition.NodeBase.iAddNode","away.partition.NodeBase.iRemoveNode","away.partition.NodeBase._iUpdateImplicitBoundsVisible","away.partition.NodeBase._iIsBoundsVisible","away.partition.NodeBase._iUpdateEntityBounds","away.partition.NullNode","away.partition.NullNode.constructor","away.partition.Partition","away.partition.Partition.constructor","away.partition.Partition.traverse","away.partition.Partition.iMarkForUpdate","away.partition.Partition.iRemoveEntity","away.partition.Partition.updateEntities","away.partition.EntityNode","away.partition.EntityNode.constructor","away.partition.EntityNode.removeFromParent","away.partition.EntityNode.isCastingShadow","away.partition.EntityNode.isInFrustum","away.partition.EntityNode.acceptTraverser","away.partition.EntityNode.isIntersectingRay","away.partition.EntityNode._pCreateBoundsPrimitive","away.partition.CameraNode","away.partition.CameraNode.constructor","away.partition.CameraNode.acceptTraverser","away.partition.SkyboxNode","away.partition.SkyboxNode.constructor","away.partition.SkyboxNode.isInFrustum","away.pick","away.pick.PickingCollisionVO","away.pick.PickingCollisionVO.constructor","away.pick.RaycastPicker","away.pick.RaycastPicker.constructor","away.pick.RaycastPicker.getViewCollision","away.pick.RaycastPicker.getSceneCollision","away.pick.RaycastPicker.setIgnoreList","away.pick.RaycastPicker.isIgnored","away.pick.RaycastPicker.sortOnNearT","away.pick.RaycastPicker.getPickingCollisionVO","away.pick.RaycastPicker.updateLocalPosition","away.pick.RaycastPicker.dispose","away.render","away.render.CSSRendererBase","away.render.CSSRendererBase.constructor","away.render.CSSRendererBase.dispose","away.render.CSSRendererBase.render","away.render.CSSRendererBase._iRender","away.render.CSSRendererBase.pCollectRenderables","away.render.CSSRendererBase.pExecuteRender","away.render.CSSRendererBase.pDraw","away.render.CSSRendererBase.applyBillboard","away.render.CSSRendererBase.applyLineSubMesh","away.render.CSSRendererBase.applySkybox","away.render.CSSRendererBase.applyTriangleSubMesh","away.render.CSSRendererBase._applyRenderable","away.render.CSSRendererBase.notifyScissorUpdate","away.render.CSSRendererBase.notifyViewportUpdate","away.render.CSSRendererBase.updateGlobalPos","away.render.CSSRendererBase._iCreateEntityCollector","away.render.CSSDefaultRenderer","away.render.CSSDefaultRenderer.constructor","away.render.CSSDefaultRenderer.render","away.render.CSSDefaultRenderer.pDraw","away.render.CSSDefaultRenderer.pUpdateBackBuffer","away.render.CSSDefaultRenderer.drawSkyBox","away.render.CSSDefaultRenderer.drawRenderables","away.render.CSSDefaultRenderer.dispose","away.render.CSSDefaultRenderer._iCreateEntityCollector","away.sort","away.sort.RenderableMergeSort","away.sort.RenderableMergeSort.constructor","away.sort.RenderableMergeSort.sortBlendedRenderables","away.sort.RenderableMergeSort.sortOpaqueRenderables","away.geom","away.geom.Box","away.geom.Box.constructor","away.geom.Box.clone","away.geom.Box.contains","away.geom.Box.containsPoint","away.geom.Box.containsRect","away.geom.Box.copyFrom","away.geom.Box.equals","away.geom.Box.inflate","away.geom.Box.inflatePoint","away.geom.Box.intersection","away.geom.Box.intersects","away.geom.Box.isEmpty","away.geom.Box.offset","away.geom.Box.offsetPosition","away.geom.Box.setEmpty","away.geom.Box.setTo","away.geom.Box.toString","away.geom.Box.union","away.geom.ColorTransform","away.geom.ColorTransform.constructor","away.geom.ColorTransform.concat","away.geom.Matrix","away.geom.Matrix.constructor","away.geom.Matrix.clone","away.geom.Matrix.concat","away.geom.Matrix.copyColumnFrom","away.geom.Matrix.copyColumnTo","away.geom.Matrix.copyFrom","away.geom.Matrix.copyRowFrom","away.geom.Matrix.copyRowTo","away.geom.Matrix.createBox","away.geom.Matrix.createGradientBox","away.geom.Matrix.deltaTransformPoint","away.geom.Matrix.identity","away.geom.Matrix.invert","away.geom.Matrix.multiply","away.geom.Matrix.rotate","away.geom.Matrix.scale","away.geom.Matrix.setTo","away.geom.Matrix.toString","away.geom.Matrix.transformPoint","away.geom.Matrix.translate","away.geom.Matrix3D","away.geom.Matrix3D.constructor","away.geom.Matrix3D.append","away.geom.Matrix3D.appendRotation","away.geom.Matrix3D.appendScale","away.geom.Matrix3D.appendTranslation","away.geom.Matrix3D.clone","away.geom.Matrix3D.copyColumnFrom","away.geom.Matrix3D.copyColumnTo","away.geom.Matrix3D.copyFrom","away.geom.Matrix3D.copyRawDataFrom","away.geom.Matrix3D.copyRawDataTo","away.geom.Matrix3D.copyRowFrom","away.geom.Matrix3D.copyRowTo","away.geom.Matrix3D.copyToMatrix3D","away.geom.Matrix3D.decompose","away.geom.Matrix3D.deltaTransformVector","away.geom.Matrix3D.identity","away.geom.Matrix3D.interpolate","away.geom.Matrix3D.interpolateTo","away.geom.Matrix3D.invert","away.geom.Matrix3D.prepend","away.geom.Matrix3D.prependRotation","away.geom.Matrix3D.prependScale","away.geom.Matrix3D.prependTranslation","away.geom.Matrix3D.recompose","away.geom.Matrix3D.transformVector","away.geom.Matrix3D.transformVectors","away.geom.Matrix3D.transpose","away.geom.Matrix3D.getAxisRotation","away.geom.Matrix3D.toFixed","away.geom.Matrix3D.toString","away.geom.Orientation3D","away.geom.Orientation3D.constructor","away.geom.PerspectiveProjection","away.geom.PerspectiveProjection.constructor","away.geom.PerspectiveProjection.toMatrix3D","away.geom.Point","away.geom.Point.constructor","away.geom.Point.add","away.geom.Point.clone","away.geom.Point.copyFrom","away.geom.Point.equals","away.geom.Point.normalize","away.geom.Point.offset","away.geom.Point.setTo","away.geom.Point.subtract","away.geom.Point.toString","away.geom.Point.distance","away.geom.Point.interpolate","away.geom.Point.polar","away.geom.Rectangle","away.geom.Rectangle.constructor","away.geom.Rectangle.clone","away.geom.Rectangle.contains","away.geom.Rectangle.containsPoint","away.geom.Rectangle.containsRect","away.geom.Rectangle.copyFrom","away.geom.Rectangle.equals","away.geom.Rectangle.inflate","away.geom.Rectangle.inflatePoint","away.geom.Rectangle.intersection","away.geom.Rectangle.intersects","away.geom.Rectangle.isEmpty","away.geom.Rectangle.offset","away.geom.Rectangle.offsetPoint","away.geom.Rectangle.setEmpty","away.geom.Rectangle.setTo","away.geom.Rectangle.toString","away.geom.Rectangle.union","away.geom.Transform","away.geom.Transform.constructor","away.geom.Transform.getRelativeMatrix3D","away.geom.Transform.moveForward","away.geom.Transform.moveBackward","away.geom.Transform.moveLeft","away.geom.Transform.moveRight","away.geom.Transform.moveUp","away.geom.Transform.moveDown","away.geom.UVTransform","away.geom.UVTransform.constructor","away.geom.UVTransform.updateUVMatrix","away.geom.Vector3D","away.geom.Vector3D.constructor","away.geom.Vector3D.add","away.geom.Vector3D.angleBetween","away.geom.Vector3D.clone","away.geom.Vector3D.copyFrom","away.geom.Vector3D.crossProduct","away.geom.Vector3D.decrementBy","away.geom.Vector3D.distance","away.geom.Vector3D.dotProduct","away.geom.Vector3D.equals","away.geom.Vector3D.incrementBy","away.geom.Vector3D.nearEquals","away.geom.Vector3D.negate","away.geom.Vector3D.normalize","away.geom.Vector3D.project","away.geom.Vector3D.scaleBy","away.geom.Vector3D.setTo","away.geom.Vector3D.subtract","away.geom.Vector3D.toString","away.geom.MathConsts","away.geom.MathConsts.constructor","away.geom.Quaternion","away.geom.Quaternion.constructor","away.geom.Quaternion.multiply","away.geom.Quaternion.multiplyVector","away.geom.Quaternion.fromAxisAngle","away.geom.Quaternion.slerp","away.geom.Quaternion.lerp","away.geom.Quaternion.fromEulerAngles","away.geom.Quaternion.toEulerAngles","away.geom.Quaternion.normalize","away.geom.Quaternion.toString","away.geom.Quaternion.toMatrix3D","away.geom.Quaternion.fromMatrix","away.geom.Quaternion.toRawData","away.geom.Quaternion.clone","away.geom.Quaternion.rotatePoint","away.geom.Quaternion.copyFrom","away.geom.PlaneClassification","away.geom.PlaneClassification.constructor","away.geom.Plane3D","away.geom.Plane3D.constructor","away.geom.Plane3D.fromPoints","away.geom.Plane3D.fromNormalAndPoint","away.geom.Plane3D.normalize","away.geom.Plane3D.distance","away.geom.Plane3D.classifyPoint","away.geom.Plane3D.toString","away.geom.Matrix3DUtils","away.geom.Matrix3DUtils.constructor","away.geom.Matrix3DUtils.quaternion2matrix","away.geom.Matrix3DUtils.getForward","away.geom.Matrix3DUtils.getUp","away.geom.Matrix3DUtils.getRight","away.geom.Matrix3DUtils.compare","away.geom.Matrix3DUtils.lookAt","away.geom.Matrix3DUtils.reflection","away.geom.Matrix3DUtils.transformVector","away.geom.Matrix3DUtils.deltaTransformVector","away.geom.Matrix3DUtils.getTranslation","away.geom.Matrix3DUtils.deltaTransformVectors","away.geom.PoissonLookup","away.geom.PoissonLookup.constructor","away.geom.PoissonLookup.initDistributions","away.geom.PoissonLookup.getDistribution","away.net","away.net.AssetLoaderContext","away.net.AssetLoaderContext.constructor","away.net.AssetLoaderContext.mapUrl","away.net.AssetLoaderContext.mapUrlToData","away.net.AssetLoaderContext._iHasDataForUrl","away.net.AssetLoaderContext._iGetDataForUrl","away.net.AssetLoaderContext._iHasMappingForUrl","away.net.AssetLoaderContext._iGetRemappedUrl","away.net.AssetLoader","away.net.AssetLoader.constructor","away.net.AssetLoader.enableParser","away.net.AssetLoader.enableParsers","away.net.AssetLoader.load","away.net.AssetLoader.loadData","away.net.AssetLoader.retrieveNext","away.net.AssetLoader.retrieveDependency","away.net.AssetLoader.joinUrl","away.net.AssetLoader.resolveDependencyUrl","away.net.AssetLoader.retrieveParserDependencies","away.net.AssetLoader.resolveParserDependencies","away.net.AssetLoader.onLoadError","away.net.AssetLoader.onParseError","away.net.AssetLoader.onAssetComplete","away.net.AssetLoader.onReadyForDependencies","away.net.AssetLoader.onLoadComplete","away.net.AssetLoader.onParseComplete","away.net.AssetLoader.onTextureSizeError","away.net.AssetLoader.addEventListeners","away.net.AssetLoader.removeEventListeners","away.net.AssetLoader.stop","away.net.AssetLoader.dispose","away.net.AssetLoader._iAddParseErrorHandler","away.net.AssetLoader._iAddErrorHandler","away.net.AssetLoader.getParserFromData","away.net.AssetLoader.parseDependency","away.net.AssetLoader.getParserFromSuffix","away.net.AssetLoaderToken","away.net.AssetLoaderToken.constructor","away.net.AssetLoaderToken.addEventListener","away.net.AssetLoaderToken.removeEventListener","away.net.AssetLoaderToken.hasEventListener","away.net.URLRequest","away.net.URLRequest.constructor","away.net.URLRequest.dispose","away.net.URLLoaderDataFormat","away.net.URLLoaderDataFormat.constructor","away.net.URLRequestMethod","away.net.URLRequestMethod.constructor","away.net.URLLoader","away.net.URLLoader.constructor","away.net.URLLoader.load","away.net.URLLoader.close","away.net.URLLoader.dispose","away.net.URLLoader.setResponseType","away.net.URLLoader.getRequest","away.net.URLLoader.postRequest","away.net.URLLoader.handleXmlHttpRequestException","away.net.URLLoader.initXHR","away.net.URLLoader.disposeXHR","away.net.URLLoader.decodeURLVariables","away.net.URLLoader.onReadyStateChange","away.net.URLLoader.onLoadEnd","away.net.URLLoader.onTimeOut","away.net.URLLoader.onAbort","away.net.URLLoader.onProgress","away.net.URLLoader.onLoadStart","away.net.URLLoader.onLoadComplete","away.net.URLLoader.onLoadError","away.net.URLVariables","away.net.URLVariables.constructor","away.net.URLVariables.decode","away.net.URLVariables.toString","away.text","away.text.AntiAliasType","away.text.AntiAliasType.constructor","away.text.GridFitType","away.text.GridFitType.constructor","away.text.TextFieldAutoSize","away.text.TextFieldAutoSize.constructor","away.text.TextFieldType","away.text.TextFieldType.constructor","away.text.TextFormat","away.text.TextFormat.constructor","away.text.TextFormatAlign","away.text.TextFormatAlign.constructor","away.text.TextInteractionMode","away.text.TextInteractionMode.constructor","away.text.TextLineMetrics","away.text.TextLineMetrics.constructor","away.ui","away.ui.Keyboard","away.ui.Keyboard.constructor","away.containers","away.containers.DisplayObjectContainer","away.containers.DisplayObjectContainer.constructor","away.containers.DisplayObjectContainer.addChild","away.containers.DisplayObjectContainer.addChildAt","away.containers.DisplayObjectContainer.addChildren","away.containers.DisplayObjectContainer.clone","away.containers.DisplayObjectContainer.contains","away.containers.DisplayObjectContainer.disposeWithChildren","away.containers.DisplayObjectContainer.getChildAt","away.containers.DisplayObjectContainer.getChildByName","away.containers.DisplayObjectContainer.getChildIndex","away.containers.DisplayObjectContainer.getObjectsUnderPoint","away.containers.DisplayObjectContainer.removeChild","away.containers.DisplayObjectContainer.removeChildAt","away.containers.DisplayObjectContainer.removeChildren","away.containers.DisplayObjectContainer.setChildIndex","away.containers.DisplayObjectContainer.swapChildren","away.containers.DisplayObjectContainer.swapChildrenAt","away.containers.DisplayObjectContainer.pInvalidateSceneTransform","away.containers.DisplayObjectContainer._pUpdateScene","away.containers.DisplayObjectContainer._pUpdateImplicitMouseEnabled","away.containers.DisplayObjectContainer._pUpdateImplicitVisibility","away.containers.DisplayObjectContainer._pUpdateImplicitPartition","away.containers.DisplayObjectContainer.removeChildInternal","away.entities","away.entities.Billboard","away.entities.Billboard.constructor","away.entities.Billboard.pCreateEntityPartitionNode","away.entities.Billboard.pUpdateBounds","away.entities.Billboard._iTestCollision","away.entities.Billboard.onSizeChanged","away.entities.Billboard._iCollectRenderables","away.entities.Billboard._iCollectRenderable","away.entities.Camera","away.entities.Camera.constructor","away.entities.Camera.pCreateDefaultBoundingVolume","away.entities.Camera.pCreateEntityPartitionNode","away.entities.Camera.onProjectionMatrixChanged","away.entities.Camera.updateFrustum","away.entities.Camera.pInvalidateSceneTransform","away.entities.Camera.pUpdateBounds","away.entities.Camera.getRay","away.entities.Camera.project","away.entities.Camera.unproject","away.entities.Camera._iCollectRenderables","away.entities.Camera._iCollectRenderable","away.entities.LineSegment","away.entities.LineSegment.constructor","away.entities.LineSegment.dispose","away.entities.LineSegment.pCreateEntityPartitionNode","away.entities.LineSegment.pUpdateBounds","away.entities.LineSegment.onSizeChanged","away.entities.LineSegment.notifyRenderableUpdate","away.entities.LineSegment._iCollectRenderables","away.entities.LineSegment._iCollectRenderable","away.entities.Mesh","away.entities.Mesh.constructor","away.entities.Mesh.bakeTransformations","away.entities.Mesh.dispose","away.entities.Mesh.disposeWithAnimatorAndChildren","away.entities.Mesh.clone","away.entities.Mesh.getSubMeshFromSubGeometry","away.entities.Mesh.pCreateEntityPartitionNode","away.entities.Mesh.pUpdateBounds","away.entities.Mesh.onGeometryBoundsInvalid","away.entities.Mesh.onSubGeometryAdded","away.entities.Mesh.onSubGeometryRemoved","away.entities.Mesh.addSubMesh","away.entities.Mesh._iTestCollision","away.entities.Mesh._iCollectRenderables","away.entities.Shape","away.entities.Shape.constructor","away.entities.Skybox","away.entities.Skybox.constructor","away.entities.Skybox.pInvalidateBounds","away.entities.Skybox.pCreateEntityPartitionNode","away.entities.Skybox.pGetDefaultBoundingVolume","away.entities.Skybox.pUpdateBounds","away.entities.Skybox._iCollectRenderables","away.entities.Skybox._iCollectRenderable","away.entities.TextField","away.entities.TextField.constructor","away.entities.TextField.maxScrollH","away.entities.TextField.maxScrollV","away.entities.TextField.appendText","away.entities.TextField.getCharBoundaries","away.entities.TextField.getCharIndexAtPoint","away.entities.TextField.getFirstCharInParagraph","away.entities.TextField.getImageReference","away.entities.TextField.getLineIndexAtPoint","away.entities.TextField.getLineIndexOfChar","away.entities.TextField.getLineLength","away.entities.TextField.getLineMetrics","away.entities.TextField.getLineOffset","away.entities.TextField.getLineText","away.entities.TextField.getParagraphLength","away.entities.TextField.getTextFormat","away.entities.TextField.replaceSelectedText","away.entities.TextField.replaceText","away.entities.TextField.setSelection","away.entities.TextField.setTextFormat","away.entities.TextField.isFontCompatible","away.projections","away.projections.CoordinateSystem","away.projections.CoordinateSystem.constructor","away.projections.ProjectionBase","away.projections.ProjectionBase.constructor","away.projections.ProjectionBase.project","away.projections.ProjectionBase.unproject","away.projections.ProjectionBase.clone","away.projections.ProjectionBase.pInvalidateMatrix","away.projections.ProjectionBase.pUpdateMatrix","away.projections.ProjectionBase._iUpdateScissorRect","away.projections.ProjectionBase._iUpdateViewport","away.projections.PerspectiveProjection","away.projections.PerspectiveProjection.constructor","away.projections.PerspectiveProjection.unproject","away.projections.PerspectiveProjection.clone","away.projections.PerspectiveProjection.pUpdateMatrix","away.projections.FreeMatrixProjection","away.projections.FreeMatrixProjection.constructor","away.projections.FreeMatrixProjection.clone","away.projections.FreeMatrixProjection.pUpdateMatrix","away.projections.OrthographicProjection","away.projections.OrthographicProjection.constructor","away.projections.OrthographicProjection.unproject","away.projections.OrthographicProjection.clone","away.projections.OrthographicProjection.pUpdateMatrix","away.projections.OrthographicOffCenterProjection","away.projections.OrthographicOffCenterProjection.constructor","away.projections.OrthographicOffCenterProjection.unproject","away.projections.OrthographicOffCenterProjection.clone","away.projections.OrthographicOffCenterProjection.pUpdateMatrix","away.projections.ObliqueNearPlaneProjection","away.projections.ObliqueNearPlaneProjection.constructor","away.projections.ObliqueNearPlaneProjection.onProjectionMatrixChanged","away.projections.ObliqueNearPlaneProjection.pUpdateMatrix","away.managers","away.managers.MouseManager","away.managers.MouseManager.constructor","away.managers.MouseManager.getInstance","away.managers.MouseManager.fireMouseEvents","away.managers.MouseManager.registerView","away.managers.MouseManager.unregisterView","away.managers.MouseManager.queueDispatch","away.managers.MouseManager.onMouseMove","away.managers.MouseManager.onMouseOut","away.managers.MouseManager.onMouseOver","away.managers.MouseManager.onClick","away.managers.MouseManager.onDoubleClick","away.managers.MouseManager.onMouseDown","away.managers.MouseManager.onMouseUp","away.managers.MouseManager.onMouseWheel","away.managers.MouseManager.updateColliders","away.managers.RTTBufferManager","away.managers.RTTBufferManager.constructor","away.managers.RTTBufferManager.getInstance","away.managers.RTTBufferManager.getRTTBufferManagerFromStageGL","away.managers.RTTBufferManager.deleteRTTBufferManager","away.managers.RTTBufferManager.dispose","away.managers.RTTBufferManager.updateRTTBuffers","RTTBufferManagerVO","RTTBufferManagerVO.constructor","SingletonEnforcer","SingletonEnforcer.constructor","away.managers.StageGLManager","away.managers.StageGLManager.constructor","away.managers.StageGLManager.getInstance","away.managers.StageGLManager.getStageGLAt","away.managers.StageGLManager.iRemoveStageGL","away.managers.StageGLManager.getFreeStageGL","away.managers.StageGLManager.onContextCreated","StageGLManagerSingletonEnforcer","StageGLManagerSingletonEnforcer.constructor","away.containers.Loader","away.containers.Loader.constructor","away.containers.Loader.close","away.containers.Loader.load","away.containers.Loader.loadData","away.containers.Loader.unload","away.containers.Loader.enableParser","away.containers.Loader.enableParsers","away.containers.Loader.removeListeners","away.containers.Loader.onAssetComplete","away.containers.Loader.onLoadError","away.containers.Loader.onParseError","away.containers.Loader.onResourceComplete","away.containers.Scene","away.containers.Scene.constructor","away.containers.Scene.traversePartitions","away.containers.Scene.contains","away.containers.Scene.addChild","away.containers.Scene.removeChild","away.containers.Scene.removeChildAt","away.containers.Scene.getChildAt","away.containers.Scene.iRegisterEntity","away.containers.Scene.iRegisterPartition","away.containers.Scene.iUnregisterEntity","away.containers.Scene.iUnregisterPartition","away.containers.View","away.containers.View.constructor","away.containers.View.onScenePartitionChanged","away.containers.View.render","away.containers.View.pUpdateTime","away.containers.View.dispose","away.containers.View.onProjectionChanged","away.containers.View.onViewportUpdated","away.containers.View.onScissorUpdated","away.containers.View.project","away.containers.View.unproject","away.containers.View.getRay","away.containers.View.updateCollider","away.bounds","away.bounds.BoundingVolumeBase","away.bounds.BoundingVolumeBase.constructor","away.bounds.BoundingVolumeBase.nullify","away.bounds.BoundingVolumeBase.disposeRenderable","away.bounds.BoundingVolumeBase.fromVertices","away.bounds.BoundingVolumeBase.fromGeometry","away.bounds.BoundingVolumeBase.fromSphere","away.bounds.BoundingVolumeBase.fromExtremes","away.bounds.BoundingVolumeBase.isInFrustum","away.bounds.BoundingVolumeBase.overlaps","away.bounds.BoundingVolumeBase.clone","away.bounds.BoundingVolumeBase.rayIntersection","away.bounds.BoundingVolumeBase.containsPoint","away.bounds.BoundingVolumeBase.pUpdateAABBPoints","away.bounds.BoundingVolumeBase.pUpdateBoundingEntity","away.bounds.BoundingVolumeBase.pCreateBoundingEntity","away.bounds.BoundingVolumeBase.classifyToPlane","away.bounds.BoundingVolumeBase.transformFrom","away.bounds.NullBounds","away.bounds.NullBounds.constructor","away.bounds.NullBounds.clone","away.bounds.NullBounds.pCreateBoundingEntity","away.bounds.NullBounds.isInFrustum","away.bounds.NullBounds.fromSphere","away.bounds.NullBounds.fromExtremes","away.bounds.NullBounds.classifyToPlane","away.bounds.NullBounds.transformFrom","away.bounds.BoundingSphere","away.bounds.BoundingSphere.constructor","away.bounds.BoundingSphere.nullify","away.bounds.BoundingSphere.isInFrustum","away.bounds.BoundingSphere.fromSphere","away.bounds.BoundingSphere.fromExtremes","away.bounds.BoundingSphere.clone","away.bounds.BoundingSphere.rayIntersection","away.bounds.BoundingSphere.containsPoint","away.bounds.BoundingSphere.pUpdateBoundingEntity","away.bounds.BoundingSphere.pCreateBoundingEntity","away.bounds.BoundingSphere.classifyToPlane","away.bounds.BoundingSphere.transformFrom","away.bounds.AxisAlignedBoundingBox","away.bounds.AxisAlignedBoundingBox.constructor","away.bounds.AxisAlignedBoundingBox.nullify","away.bounds.AxisAlignedBoundingBox.isInFrustum","away.bounds.AxisAlignedBoundingBox.rayIntersection","away.bounds.AxisAlignedBoundingBox.containsPoint","away.bounds.AxisAlignedBoundingBox.fromExtremes","away.bounds.AxisAlignedBoundingBox.clone","away.bounds.AxisAlignedBoundingBox.closestPointToPoint","away.bounds.AxisAlignedBoundingBox.pUpdateBoundingRenderable","away.bounds.AxisAlignedBoundingBox.pCreateBoundingEntity","away.bounds.AxisAlignedBoundingBox.classifyToPlane","away.bounds.AxisAlignedBoundingBox.transformFrom","away.controllers","away.controllers.ControllerBase","away.controllers.ControllerBase.constructor","away.controllers.ControllerBase.pNotifyUpdate","away.controllers.ControllerBase.update","away.controllers.LookAtController","away.controllers.LookAtController.constructor","away.controllers.LookAtController.update","away.controllers.LookAtController.onLookAtObjectChanged","away.controllers.HoverController","away.controllers.HoverController.constructor","away.controllers.HoverController.update","away.controllers.FirstPersonController","away.controllers.FirstPersonController.constructor","away.controllers.FirstPersonController.update","away.controllers.FirstPersonController.incrementWalk","away.controllers.FirstPersonController.incrementStrafe","away.controllers.FollowController","away.controllers.FollowController.constructor","away.controllers.FollowController.update","away.controllers.SpringController","away.controllers.SpringController.constructor","away.controllers.SpringController.update","away.materials","away.materials.CSSMaterialBase","away.materials.CSSMaterialBase.constructor","away.materials.CSSMaterialBase.dispose","away.materials.CSSMaterialBase.iAddOwner","away.materials.CSSMaterialBase.iRemoveOwner","away.materials.CSSMaterialBase.notifySizeChanged","away.prefabs","away.prefabs.PrefabBase","away.prefabs.PrefabBase.constructor","away.prefabs.PrefabBase.getNewObject","away.prefabs.PrefabBase._pCreateObject","away.prefabs.PrefabBase._iValidate","away.animators","away.animators.AnimationNodeBase","away.animators.AnimationNodeBase.constructor","away.animators.AnimationNodeBase.dispose","away.textures","away.textures.TextureProxyBase","away.textures.TextureProxyBase.constructor","away.textures.TextureProxyBase.getTextureForStageGL","away.textures.TextureProxyBase.pUploadContent","away.textures.TextureProxyBase.pSetSize","away.textures.TextureProxyBase.invalidateContent","away.textures.TextureProxyBase.pInvalidateSize","away.textures.TextureProxyBase.pCreateTexture","away.textures.TextureProxyBase.dispose","away.textures.Texture2DBase","away.textures.Texture2DBase.constructor","away.textures.Texture2DBase.pCreateTexture","away.textures.CubeTextureBase","away.textures.CubeTextureBase.constructor","away.textures.CubeTextureBase.pCreateTexture","away.textures.ATFData","away.textures.ATFData.constructor","away.textures.ATFCubeTexture","away.textures.ATFCubeTexture.constructor","away.textures.ATFCubeTexture.pUploadContent","away.textures.ATFCubeTexture.pCreateTexture","away.textures.ATFTexture","away.textures.ATFTexture.constructor","away.textures.ATFTexture.pUploadContent","away.textures.ATFTexture.pCreateTexture","away.textures.ImageTexture","away.textures.ImageTexture.constructor","away.textures.ImageTexture.pUploadContent","away.textures.ImageTexture.getMipMapHolder","away.textures.ImageTexture.freeMipMapHolder","away.textures.ImageTexture.dispose","away.textures.BitmapTexture","away.textures.BitmapTexture.constructor","away.textures.BitmapTexture.pUploadContent","away.textures.BitmapTexture.getMipMapHolder","away.textures.BitmapTexture.freeMipMapHolder","away.textures.BitmapTexture.dispose","away.textures.RenderTexture","away.textures.RenderTexture.constructor","away.textures.RenderTexture.pUploadContent","away.textures.RenderTexture.pCreateTexture","away.textures.ImageCubeTexture","away.textures.ImageCubeTexture.constructor","away.textures.ImageCubeTexture.testSize","away.textures.ImageCubeTexture.pUploadContent","away.textures.BitmapCubeTexture","away.textures.BitmapCubeTexture.constructor","away.textures.BitmapCubeTexture.testSize","away.textures.BitmapCubeTexture.pUploadContent","away.textures.MipmapGenerator","away.textures.MipmapGenerator.constructor","away.textures.MipmapGenerator.generateHTMLImageElementMipMaps","away.textures.MipmapGenerator.generateMipMaps","away.textures.SpecularBitmapTexture","away.textures.SpecularBitmapTexture.constructor","away.textures.SpecularBitmapTexture.testSize","away.textures.SpecularBitmapTexture.pUploadContent","away.textures.SpecularBitmapTexture.dispose","aglsl","aglsl.Sampler","aglsl.Sampler.constructor","aglsl.Token","aglsl.Token.constructor","aglsl.Header","aglsl.Header.constructor","aglsl.OpLUT","aglsl.OpLUT.constructor","aglsl.Description","aglsl.Description.constructor","aglsl.Destination","aglsl.Destination.constructor","aglsl.ContextGL","aglsl.ContextGL.constructor","aglsl.Mapping","aglsl.Mapping.constructor","aglsl.assembler","aglsl.assembler.Opcode","aglsl.assembler.Opcode.constructor","aglsl.assembler.FS","aglsl.assembler.FS.constructor","aglsl.assembler.Flags","aglsl.assembler.Flags.constructor","aglsl.assembler.OpcodeMap","aglsl.assembler.OpcodeMap.constructor","aglsl.assembler.Part","aglsl.assembler.Part.constructor","aglsl.assembler.Reg","aglsl.assembler.Reg.constructor","aglsl.assembler.RegMap","aglsl.assembler.RegMap.constructor","aglsl.assembler.Sampler","aglsl.assembler.Sampler.constructor","aglsl.assembler.SamplerMap","aglsl.assembler.SamplerMap.constructor","aglsl.assembler.AGALMiniAssembler","aglsl.assembler.AGALMiniAssembler.constructor","aglsl.assembler.AGALMiniAssembler.assemble","aglsl.assembler.AGALMiniAssembler.processLine","aglsl.assembler.AGALMiniAssembler.emitHeader","aglsl.assembler.AGALMiniAssembler.emitOpcode","aglsl.assembler.AGALMiniAssembler.emitZeroDword","aglsl.assembler.AGALMiniAssembler.emitZeroQword","aglsl.assembler.AGALMiniAssembler.emitDest","aglsl.assembler.AGALMiniAssembler.stringToMask","aglsl.assembler.AGALMiniAssembler.stringToSwizzle","aglsl.assembler.AGALMiniAssembler.emitSampler","aglsl.assembler.AGALMiniAssembler.emitSource","aglsl.assembler.AGALMiniAssembler.addHeader","aglsl.AGALTokenizer","aglsl.AGALTokenizer.constructor","aglsl.AGALTokenizer.decribeAGALByteArray","aglsl.AGALTokenizer.readReg","aglsl.AGLSLParser","aglsl.AGLSLParser.constructor","aglsl.AGLSLParser.parse","aglsl.AGLSLParser.regtostring","aglsl.AGLSLParser.sourcetostring","aglsl.AGLSLCompiler","aglsl.AGLSLCompiler.constructor","aglsl.AGLSLCompiler.compile","away.AwayJS","away.AwayJS.constructor"],"mappings":"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CAACA;oBAC7FA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAAEA,EAAEA,CAACA,CAACA;iBAClGA,KAAMA;oBACNA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBAC5FA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,CAAEA,EAAEA,CAACA,CAACA;oBAChGA,IAAIA,CAACA,4BAA4BA,CAACA,WAAWA,EAAEA,aAAaA,GAAGA,CAACA,EAAEA,CAAEA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA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IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,GAAUA,GAAGA,CAACA,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,GAAYA,IAAIA,kBAAQA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA;gBACvDA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACVA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACVA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA;;gBAEVA,IAAIA,KAAKA,GAAYA,IAAIA,kBAAQA,CAACA,CAACA;;gBAEnCA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA;gBAC5DA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA;gBAC5DA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,GAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA;;gBAE9DA,IAAIA,EAAEA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAACA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA;oBAClHA,KAAKA,CAACA,CAACA,GAAGA,CAACA,KAAKA,CAACA,CAACA,CAACA;;gBAEpBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,EAAEA,CAACA,IAAIA,KAAKA,CAACA,CAACA;;gBAEjBA,IAAIA,GAAGA,GAAGA,IAAIA,kBAAQA,CAACA,CAACA;;gBAExBA,QAAQA,gBAAgBA,CAACA;oBACxBA,KAAKA,uBAAaA,CAACA,UAAUA;wBAE5BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,CAACA;;wBAEjDA,IAAIA,GAAGA,GAAUA,IAAIA,CAACA,IAAIA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,CAACA;wBAC/HA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,GAAGA;wBAC3BA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,GAAGA;wBAC3BA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,GAAGA;;wBAE3BA,KAAMA;AAAAA,oBACPA,KAAKA,uBAAaA,CAACA,UAAUA;wBAE5BA,IAAIA,EAAEA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA;;wBAE/BA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;4BACXA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,GAACA,CAACA;;4BAE3BA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA,MAAMA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;4BAC/CA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAACA,GAACA,CAACA;;4BAE/CA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA,MAAMA,IAAIA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAAEA;4BAC1BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,CAACA,GAACA,CAACA;;4BAE/CA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA,KAAMA;4BACNA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAAGA,EAAEA,CAACA,EAAEA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA;;4BAE/CA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,CAACA,EAAEA,CAACA,CAACA,CAACA,GAAGA,EAAEA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,GAACA,GAAGA,CAACA,CAACA,CAACA;yBACjCA;;wBAGDA,KAAMA;AAAAA,oBACPA,KAAKA,uBAAaA,CAACA,YAAYA;wBAE9BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,CAACA,EAAEA,CAACA,CAACA,CAACA,CAACA;;wBAEzBA,mCAAmCA;wBAEnCA,IAAIA,EAAEA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAAEA;4BAC9BA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,EAAEA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA;4BACjCA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,EAAEA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAACA;yBAChCA,KAAMA;4BACNA,GAAGA,CAACA,CAACA,GAAGA,CAACA;4BACTA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,EAAEA,CAACA,CAACA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAACA;yBAChCA;;wBAEDA,KAAMA;AAAAA,iBACPA;;gBAEDA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA;gBACbA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA;gBACbA,GAAGA,CAACA,IAAIA,CAACA,KAAKA,CAACA;;gBAEfA,OAAOA,GAAGA;YACXA,CAACA;;YAMDf;;;cADGA;sDACHA,UAA4BA,CAAUA;gBAErCgB,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA;;gBAElBA,OAAOA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,CAACA;YACpRA,CAACA;;YAKDhB;;cADGA;0CACHA;gBAECiB,IAAIA,CAACA,OAAOA,GAAGA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAAEA;YACjEA,CAACA;;YAKDjB;;cADGA;mCACHA,UAAmBA,OAAgBA,EAAEA,KAAcA,EAAEA,OAAcA;gBAElEkB,IAAIA,CAACA,GAAYA,IAAIA,QAAQA,CAACA,CAACA;gBAC/BA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,EAAEA,EAAEA,EAAEA,CAACA;oBACjCA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,OAAOA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,KAAKA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAA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,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACjGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACnGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACnGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBAClGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,GAAGA,GAAGA,GAACA,CAACA,GAAGA,GAACA,GAAGA,GAAGA,GAAGA,GAACA,GAAGA,CAACA,CAACA;oBACnGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAA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,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;;gBAE/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;;gBAE/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBAC/DA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA,GAAGA,IAAIA,GAACA,IAAIA;gBACh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A,CAACA;;gBAElBA,OAAOA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,CAACA;YAChWA,CAACA;;YAKD1B;;cADGA;kDACHA,UAAwBA,GAAYA,EAAEA,IAAaA;gBAGlD2B,qBAAqBA;gBAErBA,IAAIA,CAACA,GAAUA,CAACA;gBAChBA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAUA,CAACA;;gBAE5CA,OAAOA,CAACA,GAAGA,CAACA,IAAIA,GAAGA,CAACA,MAAMA,CAAEA;oBAC3BA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;oBACVA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA;oBACdA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAGA,CAACA,CAACA;oBACdA,IAAIA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA;oBACtFA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA;oBAC1FA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA;oBAC3FA,CAACA,IAAIA,CAACA;iBACNA;YACFA,CAACA;;YAKD3B;;cADGA;2CACHA;gBAGC4B,qBAAqBA;gBAErBA,IAAIA,QAAQA,GAAYA,IAAIA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,CAACA;;gBAE7CA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;gBAC/BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,QAAQA,CAACA,EAAEA,CAACA;YAChCA,CAACA;;YAED5B,2BAAAA,UAAuBA,CAAQA,EAAEA,CAAQA,EAAEA,CAAQA,EAAEA,OAAcA;gBAGlE6B,yDAAyDA;gBAEzDA,IAAIA,CAACA,GAAYA,IAAIA,QAAQA,CAACA,CAACA;;gBAE/BA,IAAIA,GAAGA,GAAGA,OAAOA,GAACA,CAAEA,IAAIA,CAACA,EAAEA,GAACA,GAAGA,CAAEA;gBACjCA,IAAIA,CAACA,GAAUA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAC5BA,IAAIA,CAACA,GAAUA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAC5BA,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA;gBACpBA,IAAIA,IAAIA,EAASA,IAAIA;;gBAErBA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACxBA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACxBA,CAACA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;;gBAEzBA,IAAIA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACZA,IAAIA,GAAGA,CAACA,GAACA,CAACA;gBACVA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,IAAIA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACZA,IAAIA,GAAGA,CAACA,GAACA,CAACA;gBACVA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,IAAIA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACZA,IAAIA,GAAGA,CAACA,GAACA,CAACA;gBACVA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC1BA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,GAAGA,IAAIA;;gBAE1BA,OAAOA,CAACA;YACTA,CAACA;;YAKD7B;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAUA,CAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,CAACA;gBACx1BA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,kBAAQA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,CAACA;gBAC1EA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAcA;oBAEjCA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC1BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC1BA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAC3BA,CAACA;;;;AAPAA;;YASDA,6BAAAA,UAAeA,YAAmBA;gBAEjC8B,IAAIA,SAASA,GAAUA,IAAIA,CAACA,GAAGA,CAACA,EAAEA,EAAEA,YAAYA,CAACA;gBACjDA,OAAOA,WAAWA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,SAASA,CAACA,GAACA,SAASA,GAAGA,GAAGA;YACz5BA,CAACA;;YAED9B,8BAAAA;gBAEC+B,OAAOA,WAAWA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CAACA,GAACA,IAAIA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,EAAEA,CAACA,GAACA,IAAIA,CA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AmCDA;;;;;;;;;;;;;cADGA;qCACHA,UAAWA,CAAUA;gBAEpBE,OAAOA,IAAIA,QAAQA,CAACA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;YAC5EA,CAACA;;YAmBDF;;;;;;;;;;;;;;;;cADGA;oCACHA,UAA2BA,CAAUA,EAAEA,CAAUA;gBAEhDG,OAAOA,IAAIA,CAACA,IAAIA,CAACA,CAACA,CAACA,UAAUA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,MAAMA,GAACA,CAACA,CAACA,MAAMA,CAACA,CAACA;YACtDA,CAACA;;YASDH;;;;;;cADGA;uCACHA;gBAECI,OAAOA,IAAIA,QAAQA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,CAACA;YACpDA,CAACA;;YAQDJ;;;;;cADGA;0CACHA,UAAgBA,GAAYA;gBAE3BK,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;YACfA,CAACA;;YAmBDL;;;;;;;;;;;;;;;;cADGA;8CACHA,UAAoBA,CAAUA;gBAE7BM,OAAOA,IAAIA,QAAQA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA;YAClGA,CAACA;;YAaDN;;;;;;;;;;cADGA;6CACHA,UAAmBA,CAAUA;gBAE5BO,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;YACdA,CAACA;;YAYDP;;;;;;;;;cADGA;gCACHA,UAAgBA,GAAYA,EAAEA,GAAYA;gBAEzCQ,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBAC9BA,IAAIA,CAACA,GAAUA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA;gBAC9BA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;YAClCA,CAACA;;YA6BDR;;;;;;;;;;;;;;;;;;;;;;;;;;cADGA;4CACHA,UAAkBA,CAAUA;gBAE3BS,OAAOA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA;YAC5CA,CAACA;;YAqBDT;;;;;;;cAZGA;YAEHA;;;;;;;;;cASGA;wCACHA,UAAcA,SAAkBA,EAAEA,OAAuBA;gBAAvBU,sCAAAA,OAAOA,GAAWA,KAAKA;AAAAA,gBAExDA,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,CAACA,CAACA,OAAOA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,CAAEA,CAACA;YACzHA,CAACA;;YAYDV;;;;;;;;;cADGA;6CACHA,UAAmBA,CAAUA;gBAE5BW,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;gBACbA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA;YACdA,CAACA;;YAmCDX;;;;;;;;;;;;cArBGA;YAEHA;;;;;;;;;;;;;;;;;;cAkBGA;4CACHA,UAAkBA,SAAkBA,EAAEA,SAAgBA,EAAEA,OAAsBA;gBAAtBY,sCAAAA,OAAOA,GAAWA,IAAIA;AAAAA,gBAE7EA,OAAOA,CAACA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,IAAIA,CAACA,CAACA,OAAOA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA,CAACA,GAAGA,SAASA,CAACA,CAACA;YAClNA,CAACA;;YAQDZ;;;;;cADGA;wCACHA;gBAECa,IAAIA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;gBAChBA,IAAIA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;gBAChBA,IAAIA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;YACjBA,CAACA;;YAgBDb;;;;;cATGA;YACHA;;;;;;;cAOGA;2CACHA,UAAiBA,SAAoBA;gBAApBc,wCAAAA,SAASA,GAAUA,CA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CA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACpBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACtBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACpBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,GAAGA;gBAChBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACvBA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA,CAACA,GAACA,CAACA,GAACA,CAACA;gBACpBA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACdA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACdA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACfA,OAAOA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBACfA,MAAMA,CAACA,eAAeA,CAACA,OAAOA,CAACA;;gBAE/BA,OAAOA,MAAMA;YACdA,CAACA;;YAGDR,gCAAAA,UAA8BA,MAAeA,EAAEA,MAAeA,EAAEA,MAAsBA;gBAAtBS,qCAAAA,MAAMA,GAAYA,IAAIA;AAAAA,gBAErFA,IAAIA,CAACA,MAAMA;oBACVA,MAAMA,GAAGA,IAAIA,kBAAQA,CAACA,CAACA,CAACA;;gBAEzBA,IAAIA,GAAGA,GAAiBA,aAAaA,CAACA,kBAAkBA;gBACxDA,MAAMA,CAACA,aAAaA,CAACA,GAAGA,CAACA;gBACzBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;;gBAEtBA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,CAACA;gBACvBA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,CAACA;gBACvBA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,CAACA;gBACvBA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBACpCA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBACpCA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBACpCA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBACpCA,OAAOA,MAAMA;YACdA,CAACA;;YAEDT,qCAAAA,UAAmCA,MAAeA,EAAEA,MAAeA,EAAEA,MAAsBA;gBAAtBU,qCAAAA,MAAMA,GAAYA,IAAIA;AAAAA,gBAE1FA,IAAIA,CAACA,MAAMA;oBACVA,MAAMA,GAAGA,IAAIA,kBAAQA,CAACA,CAACA,CAACA;;gBAEzBA,IAAIA,GAAGA,GAAiBA,aAAaA,CAACA,kBAAkBA;gBACxDA,MAAMA,CAACA,aAAaA,CAACA,GAAGA,CAACA;gBACzBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,CAACA;gBACvBA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,CAACA;gBACvBA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,CAACA;gBACvBA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAChCA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAChCA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAChCA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;gBAChCA,OAAOA,MAAMA;YACdA,CAACA;;YAEDV,+BAAAA,UAA6BA,SAAkBA,EAAEA,MAAsBA;gBAAtBW,qCAAAA,MAAMA,GAAYA,IAAIA;AAAAA,gBAEtEA,IAAGA,CAACA,MAAMA;oBACTA,MAAMA,GAAGA,IAAIA,kBAAQA,CAACA,CAACA,CAACA;;gBAEzBA,SAASA,CAACA,YAAYA,CAACA,CAACA,EAAEA,MAAMA,CAACA;gBACjCA,OAAOA,MAAMA;YACdA,CAACA;;YAEDX,sCAAAA,UAAoCA,MAAeA,EAAEA,GAAiBA,EAAEA,IAAkBA;gBAEzFY,IAAIA,GAAGA,GAAiBA,aAAaA,CAACA,kBAAkBA;gBACxDA,MAAMA,CAACA,aAAaA,CAACA,GAAGA,CAACA;gBACzBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,CAACA,CAACA;gBACrBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACtBA,IAAIA,QAAQA,GAAUA,CAACA;gBACvBA,IAAIA,MAAMA,GAAUA,GAAGA,CAACA,MAAMA;gBAC9BA,KAAIA,IAAIA,KAAKA,GAAUA,CAACA,EAAEA,KAAKA,GAACA,MAAMA,EAAEA,KAAKA,IAAEA,CAACA,CAAEA;oBACjDA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,KAAKA,CAACA;oBACzBA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,KAAKA,GAACA,CAACA,CAACA;oBAC3BA,IAAIA,CAACA,GAAUA,GAAGA,CAACA,KAAKA,GAACA,CAACA,CAACA;oBAC3BA,IAAIA,CAACA,QAAQA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;oBACxCA,IAAIA,CAACA,QAAQA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;oBACxCA,IAAIA,CAACA,QAAQA,EAAEA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA,GAAGA,CAACA;iBACxCA;YACFA,CAACA;YA3SDZ,mCAA4CA,IAAIA,KAAKA,CAASA,EAAEA,CAACA;;YAGjEA,mCAA4CA,IAAIA,kBAAQA,CAACA,CAACA;YAyS3DA,qBAACA;QAADA,CAACA,IAAA/K;QAjTDA,mCAiTCA;IACFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;AC3TD,4CAA4C;AAE5C,IAAO,IAAI;AAuDV,CAvDD,UAAO,IAAI;KAAXA,UAAYA,IAAIA;QAEf+xB;YAAA4L;;AAoDCA,YAhDAA,kCAAAA;gBAECE,iCAAiCA;gBACjCA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,KAAKA,CAAgBA,CAACA;gBAChDA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,SAASA,CAACA;gBAChEA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,CAACA;gBACxFA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,YAAYA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,CAACA;gBAClHA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,SAASA,CAACA;gBACtIA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,UAAUA,CAACA;gBAC9JA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,UAAUA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,CAACA,UAAUA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,QAAQA,CAACA;gBACtLA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,UAAUA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,CAACA;gBAC5MA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,SAASA,EAAEA,CAACA,UAAUA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,WAAWA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,CAACA;gBACrOA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,UAAUA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,UAAUA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,QAAQA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,CAACA;gBAC3PA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,CAACA,UAAUA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,SAASA,EAAEA,SAASA,EAAEA,CAACA,OAAOA,EAAEA,SAASA,EAAEA,SAASA,EAAEA,CAACA,SAASA,CAACA;gBAChRA,IAAIA,CAACA,cAAcA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,KAAKA,CAASA,SAASA,EAAEA,CAACA,SAASA,EAAEA,CAACA,S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ACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAEzBA,cAAcA;gBACdA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAExBA,SAASA;gBACTA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAEzBA,MAAMA;gBACNA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA;gBACbA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,CAACA,GAACA,MAAMA;;gBAExBA,OAAOA;gBACPA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;gBAC1BA,CAACA,GAAGA,GAAGA;gBACPA,CAACA,GAAGA,GAAGA;gBACPA,CAACA,GAAGA,GAAGA;gBACPA,MAAMA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,CAACA;gBACrCA,CAACA,CAACA,CAACA,GAAGA,CAACA,GAACA,MAAMA;gBACdA,CAACA,CAACA,CAACA,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ACA,GAAGA,CAACA,CAACA;gBAClCA,IAAIA,CAACA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,EAAEA,KAAKA,EAAEA,CAACA,EAAEA,CAACA,CAACA;gBACrEA,IAAIA,OAAOA,GAAsBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,CAACA;gBACtDA,OAAOA,CAACA,MAAMA,CAACA,CAACA;gBAChBA,IAAIA,CAACA,GAAsBA,OAAOA,CAACA,eAAeA,CAACA,CAACA,CAACA;gBACrDA,IAAIA,CAACA,QAAQA,CAACA,SAASA,CAACA,CAACA,EAAEA,CAACA,CAACA;gBAC7BA,IAAIA,CAACA,GAAUA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,GAACA,CAACA,CAACA,CAACA,GAAGA,EAAEA,GAACA,CAACA,CAACA,CAACA,GAAGA,EAAEA,GAACA,CAACA,CAACA,CAACA,GAAGA,EAAEA,GAACA,CAACA,CAACA,CAACA,CAACA;gBAC1FA,IAAIA,CAACA,QAAQA,CAACA,WAAWA,CAACA,CAACA,EAAEA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,EAAEA,GAACA,CAACA,EAAEA,EAAEA,GAACA,CAACA,EAAEA,EAAEA,GAACA,CAACA,EAAEA,EAAEA,GAACA,CAACA,CAACA,CAACA;YAC7EA,CAACA;YACFH,kCAACA;QAADA,CAACA,EA1G+C/B,+BAAcA,EA0G7DA;QA1GDA,oEA0GCA;IACFA,CAACA,+CAAAnqC;uCAAAA;AAADA,CAACA,uBAAA;AC/GD,yCAAyC;AAIzC,IAAO,IAAI;AAuSV,CAvSD,UAAO,IAAI;IAFXA,mEAAmEA;KAEnEA,UAAYA,QAAQA;QAEnBssC;;;UAGGA;QACHA;YAqCCC;;cADGA;YACHA;gBAAAC,iBAUCA;gBA3CDA,KAAQA,WAAWA,GAA+BA,IAAIA,KAAKA,CAAuBA,CAACA,CAACA;gBAMpFA,KAAQA,WAAWA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA;gBAElEA,KAAQA,aAAaA,GAA4BA,IAAIA,KAAKA,CAAyBA,CAACA,CAACA;gBAIrFA,KAAQA,QAAQA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,QAAQA,CAACA,CAACA;gBACtGA,KAAQA,WAAWA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,KAAKA,CAACA,CAACA;gBACtGA,KAAQA,SAASA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,SAASA,CAACA,CAACA;gBACxGA,KAAQA,UAAUA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,UAAUA,CAACA,CAACA;gBAC1GA,KAAQA,UAAUA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,UAAUA,CAACA,CAACA;gBAC1GA,KAAQA,UAAUA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,UAAUA,CAACA,CAACA;gBAC1GA,KAAQA,WAAWA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,WAAWA,CAACA,CAACA;gBAC5GA,KAAQA,iBAAiBA,GAA0BA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,YAAYA,CAACA,CAACA;gBAgBlHA,IAAIA,CAACA,eAAeA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,OAAOA,CAACA,KAAKA,CAACA;gBAAnBA,CAAmBA;gBAChEA,IAAIA,CAACA,qBAAqBA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA;gBAAzBA,CAAyBA;gBAC5EA,IAAIA,CAACA,mBAAmBA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,WAAWA,CAACA,KAAKA,CAACA;gBAAvBA,CAAuBA;gBACxEA,IAAIA,CAACA,mBAAmBA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,WAAWA,CAACA,KAAKA,CAACA;gBAAvBA,CAAuBA;gBACxEA,IAAIA,CAACA,iBAAiBA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,SAASA,CAACA,KAAKA,CAACA;gBAArBA,CAAqBA;gBACpEA,IAAIA,CAACA,oBAAoBA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA;gBAAxBA,CAAwBA;gBAC1EA,IAAIA,CAACA,mBAAmBA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,WAAWA,CAACA,KAAKA,CAACA;gBAAvBA,CAAuBA;gBACxEA,IAAIA,CAACA,kBAAkBA,GAAGA,UAACA,KAAgBA;2BAAKA,KAAIA,CAACA,UAAUA,CAACA,KAAKA,CAACA;gBAAtBA,CAAsBA;YACvEA,CAACA;YAEDD,2BAAAA;gBAECE,IAAIA,IAAIA,CAACA,SAASA;oBACjBA,OAAOA,IAAIA,CAACA,SAASA,CAACA;;gBAEvBA,OAAOA,CAACA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,YAAYA,CAACA,CAACA,CAACA;YAC7CA,CAACA;;YAEDF,yCAAAA,UAAuBA,cAAsBA;gBAE3CG,0DAA0DA;gBAC3DA,IAAIA,IAAIA,CAACA,iBAAiBA,IAAIA,IAAIA,CAACA,wBAAwBA,CAAEA;oBAC5DA,IAAIA,IAAIA,CAACA,wBAAwBA;wBAChCA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,SAASA,EAAEA,IAAIA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,wBAAwBA,CAACA,CAACA;;oBAEzFA,IAAIA,IAAIA,CAACA,iBAAiBA;wBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,UAAUA,EAAEA,IAAIA,CAACA,eAAeA,CAACA,CAACA;iBAC3DA;;gBAEAA,uDAAuDA;gBACxDA,IAAIA,cAAcA,IAAIA,IAAIA,CAACA,iBAAiBA;oBAC3CA,IAAIA,CAACA,aAAaA,CAAEA,IAAIA,CAACA,UAAUA,EAAEA,IAAIA,CAACA,eAAeA,CAACA,CAACA;;gBAE5DA,IAAIA,KAAKA;gBACTA,IAAIA,UAAUA;;gBAEbA,8BAA8BA;gBAC/BA,IAAIA,GAAGA,GAAUA,IAAIA,CAACA,aAAaA,CAACA,MAAMA;gBAC1CA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,GAAGA,EAAEA,EAAEA,CAACA,CAAEA;oBACpCA,uHAAuHA;oBACvHA,KAAKA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,CAACA,CAACA;oBAC7BA,UAAUA,GAAGA,KAAKA,CAACA,MAAMA;;oBAEzBA,OAAOA,UAAUA,IAAIA,CAACA,UAAUA,CAACA,gBAAgBA,CAACA,CAACA;wBAClDA,UAAUA,GAAGA,UAAUA,CAACA,MAAMA,CAACA;;oBAEhCA,IAAIA,UAAUA;wBACbA,UAAUA,CAACA,aAAaA,CAACA,KAAKA,CAACA,CAACA;iBACjCA;;gBAEDA,IAAIA,CAACA,aAAaA,CAACA,MAAMA,GAAGA,CAACA;;gBAE7BA,IAAIA,CAACA,wBAAwBA,GAAGA,IAAIA,CAACA,iBAAiBA;;gBAEtDA,IAAIA,CAACA,aAAaA,GAAGA,KAAKA;YAC3BA,CAACA;;YAkBDH,kDAhBgDA;YAClDA,KAAKA;YACLA,gCAAgCA;YAChCA,EAAEA;YACFA,8EAA8EA;YAC9EA,sCAAsCA;YACtCA,yCAAyCA;YACzCA,EAAEA;YACFA,uBAAuBA;YACvBA,yBAAyBA;YACzBA,EAAEA;YACFA,qBAAqBA;YACrBA,iCAAiCA;YACjCA,8BAA8BA;YAC9BA,KAAKA;kDAEHA,UAAoBA,IAAyBA;gBAE5CI,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,eAAeA,CAACA;gBAChEA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,UAAUA,EAAEA,IAAIA,CAACA,qBAAqBA,CAACA;gBACzEA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,WAAWA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA;gBACxEA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,WAAWA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA;gBACxEA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,SAASA,EAAEA,IAAIA,CAACA,iBAAiBA,CAACA;gBACpEA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,YAAYA,EAAEA,IAAIA,CAACA,oBAAoBA,CAACA;gBAC1EA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,WAAWA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA;gBACxEA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,UAAUA,EAAEA,IAAIA,CAACA,kBAAkBA,CAACA;;gBAEtEA,IAAIA,CAACA,WAAWA,CAACA,IAAIA,CAACA,IAAIA,CAACA;YAC5BA,CAACA;;YAEDJ,wCAAAA,UAAsBA,IAAyBA;gBAE9CK,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,eAAeA,CAACA;gBACnEA,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,UAAUA,EAAEA,IAAIA,CAACA,qBAAqBA,CAACA;gBAC5EA,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,WAAWA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA;gBAC3EA,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,WAAWA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA;gBAC3EA,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,SAASA,EAAEA,IAAIA,CAACA,iBAAiBA,CAACA;gBACvEA,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,YAAYA,EAAEA,IAAIA,CAACA,oBAAoBA,CAACA;gBAC7EA,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,WAAWA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA;gBAC3EA,IAAIA,CAACA,WAAWA,CAACA,mBAAmBA,CAACA,UAAUA,EAAEA,IAAIA,CAACA,kBAAkBA,CAACA;;gBAEzEA,IAAIA,CAACA,WAAWA,CAACA,KAAKA,CAACA,IAAIA,CAACA,WAAWA,CAACA,OAAOA,CAACA,IAAIA,CAACA,EAAEA,CAACA,CAACA;YAC1DA,CAACA;;YAMDL,wEAJwEA;YACxEA,WAAWA;YACXA,wEAAwEA;mDAExEA,UAAsBA,KAA4BA,EAAEA,WAAsBA,EAAEA,QAA4CA;gBAA5CM,uCAAAA,QAAQA,GAAgCA,IAAIA;AAAAA,gBAEvHA,iBAAiBA;gBACjBA,IAAIA,WAAWA,CAAEA;oBAChBA,KAAKA,CAACA,OAAOA,GAAGA,WAAWA,CAACA,OAAOA;oBACnCA,KAAKA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,MAAMA;oBACjCA,KAAKA,CAACA,QAAQA,GAAGA,WAAWA,CAACA,QAAQA;oBACrCA,KAAKA,CAACA,OAAOA,GAAGA,WAAWA,CAACA,OAAOA;oBACnCA,KAAKA,CAACA,OAAOA,GAAGA,WAAWA,CAACA,OAAOA;iBACnCA;;gBAEDA,IAAIA,QAAQA,IAAIA,IAAIA;oBACnBA,QAAQA,GAAGA,IAAIA,CAACA,iBAAiBA,CAACA;;gBAEnCA,iBAAiBA;gBACjBA,IAAIA,QAAQA,CAAEA;oBACbA,UAAUA;oBACVA,KAAKA,CAACA,MAAMA,GAAGA,QAAQA,CAACA,aAAaA;oBACrCA,KAAKA,CAACA,aAAaA,GAAGA,QAAQA,CAACA,aAAaA;;oBAC5CA,MAAMA;oBACNA,KAAKA,CAACA,EAAEA,GAAGA,QAAQA,CAACA,EAAEA;;oBACtBA,YAAYA;oBACZA,KAAKA,CAACA,aAAaA,GAAGA,QAAQA,CAACA,aAAaA,GAAEA,QAAQA,CAACA,aAAaA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;;oBACnFA,UAAUA;oBACVA,KAAKA,CAACA,WAAWA,GAAGA,QAAQA,CAACA,WAAWA,GAAEA,QAAQA,CAACA,WAAWA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;;oBAC7EA,cAAcA;oBACdA,KAAKA,CAACA,KAAKA,GAAGA,QAAQA,CAACA,KAAKA;iBAC5BA,KAAMA;oBACNA,mBAAmBA;oBACnBA,KAAKA,CAACA,EAAEA,GAAGA,IAAIA;oBACfA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA;oBACnBA,KAAKA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,WAAWA;oBACtCA,KAAKA,CAACA,WAAWA,GAAGA,IAAIA,CAACA,WAAWA;oBACpCA,KAAKA,CAACA,KAAKA,GAAGA,CAACA;oBACfA,KAAKA,CAACA,gBAAgBA,GAAGA,CAACA;iBAC1BA;;gBAEDA,sCAAsCA;gBACtCA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,KAAKA,CAACA;YAC/BA,CAACA;;YAMDN,wEAJwEA;YACxEA,aAAaA;YACbA,wEAAwEA;iDAExEA,UAAoBA,KAAgBA;gBAEnCO,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,UAAUA,EAAEA,IAAIA,CAACA,eAAeA,GAAGA,KAAKA,CAACA,CAACA;YACpEA,CAACA;;YAEDP,oCAAAA,UAAmBA,KAAgBA;gBAElCQ,IAAIA,CAACA,WAAWA,GAAGA,IAAIA;;gBAEvBA,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,SAASA,EAAEA,KAAKA,CAACA,CAACA;YAC5CA,CAACA;;YAEDR,qCAAAA,UAAoBA,KAAgBA;gBAEnCS,IAAIA,CAACA,WAAWA,GAAoBA,KAAKA,CAACA,MAAMA;;gBAEhDA,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAAEA,IAAIA,CAACA,UAAUA,EAAEA,KAAKA,CAACA,CAACA;YAC9CA,CAACA;;YAEDT,iCAAAA,UAAgBA,KAAgBA;gBAE/BU,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,WAAWA,EAAEA,KAAKA,CAACA,CAACA;YAC9CA,CAACA;;YAEDV,uCAAAA,UAAsBA,KAAgBA;gBAErCW,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,iBAAiBA,EAAEA,KAAKA,CAACA,CAACA;YACpDA,CAACA;;YAEDX,qCAAAA,UAAoBA,KAAgBA;gBAEnCY,IAAIA,CAACA,WAAWA,GAAoBA,KAAKA,CAACA,MAAMA;;gBAEhDA,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,UAAUA,EAAEA,KAAKA,CAACA,CAACA;YAC7CA,CAACA;;YAEDZ,mCAAAA,UAAkBA,KAAgBA;gBAEjCa,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,QAAQA,EAAGA,KAAKA,CAACA,CAACA;YAC5CA,CAACA;;YAEDb,sCAAAA,UAAqBA,KAAgBA;gBAEpCc,IAAIA,CAACA,eAAeA,CAACA,KAAKA,CAACA;;gBAE3BA,IAAIA,IAAIA,CAACA,iBAAiBA;oBACzBA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,WAAWA,EAAEA,KAAKA,CAACA,CAACA;YAC9CA,CAACA;;YAGDd,yCAAAA,UAAwBA,KAAgBA;gBAEvCe,IAAIA,IAAIA,CAACA,aAAaA;oBACrBA,MAAOA,CAAAA;;gBAERA,IAAIA,IAAIA;gBACRA,IAAIA,MAAMA;gBACVA,IAAIA,MAAMA,GAAUA,KAAKA,CAACA,OAAOA;gBACjCA,IAAIA,MAAMA,GAAUA,KAAKA,CAACA,OAAOA;gBACjCA,IAAIA,GAAGA,GAAUA,IAAIA,CAACA,WAAWA,CAACA,MAAMA;gBACxCA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,GAAGA,EAAEA,CAACA,EAAEA,CAAEA;oBACpCA,IAAIA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,CAACA,CAACA;oBAC1BA,MAAMA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,qBAAqBA,CAACA,CAACA;oBACjDA,IAAIA,MAAMA,GAAGA,MAAMA,CAACA,IAAIA,IAAIA,MAAMA,GAAGA,MAAMA,CAACA,KAAKA,IAAIA,MAAMA,GAAGA,MAAMA,CAACA,GAAGA,IAAIA,MAAMA,GAAGA,MAAMA,CAACA,MAAMA,CAAEA;wBACnGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA;wBACpBA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA;qBACpBA,KAAMA;wBACNA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA,GAAGA,MAAMA,CAACA,IAAIA;wBACpCA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA,GAAGA,MAAMA,CAACA,GAAGA;wBACnCA,IAAIA,CAACA,cAAcA,CAACA,CAACA;;wBAErBA,IAAIA,IAAIA,CAACA,WAAWA,IAAIA,IAAIA,CAACA,iBAAiBA;4BAC7CA,KAAMA,CAAAA;qBACPA;iBACDA;;gBAEDA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA;YAC1BA,CAACA;YACFf,oBAACA;QAADA,CAACA,IAAAD;QAhSDA,qCAgSCA;IACFA,CAACA,yCAAAtsC;iCAAAA;AAADA,CAACA,uBAAA;AC3SD,yCAAyC;AAEzC,IAAO,IAAI;AA2UV,CA3UD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAGnBssC;;YAmBCiB,0BAAYA,EAAoBA,EAAEA,OAAyBA;gBAG1DC,WAAMA,KAAAA,CAACA;gBAbRA,KAAQA,UAAUA,GAAUA,CAACA,CAACA,CAACA;gBAC/BA,KAAQA,WAAWA,GAAUA,CAACA,CAACA,CAACA;gBAChCA,KAAQA,aAAaA,GAAUA,CAACA,CAACA,CAACA;gBAClCA,KAAQA,cAAcA,GAAUA,CAACA,CAACA,CAACA;gBAEnCA,KAAQA,eAAeA,GAAWA,IAAIA,CAACA;;gBAUtCA,IAAIA,CAACA,EAAEA,CAAEA;oBAERA,MAAMA,IAAIA,KAAKA,CAACA,2BAA2BA,CAACA;iBAE5CA;;gBAGDA,IAAIA,CAACA,oBAAoBA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,SAASA,CAACA,CAACA;;gBAErDA,IAAIA,CAACA,QAAQA,GAAGA,OAAOA;YAExBA,CAACA;YAEDD,+BAAAA,UAA0BA,OAAyBA;gBAElDE,IAAIA,CAACA,OAAOA;oBACXA,MAAMA,IAAIA,KAAKA,CAACA,6BAA6BA,CAACA,CAACA;;gBAEhDA,IAAIA,gBAAgBA,CAACA,UAAUA,IAAIA,IAAIA,CAAEA;oBAExCA,gBAAgBA,CAACA,UAAUA,GAAGA,IAAIA,KAAKA,CAAqBA,CAACA;iBAC7DA;;gBAGDA,IAAIA,gBAAgBA,GAAoBA,gBAAgBA,CAACA,8BAA8BA,CAACA,OAAOA,CAACA;;gBAEhGA,IAAIA,gBAAgBA,IAAIA,IAAIA,CAAEA;oBAE7BA,gBAAgBA,GAAGA,IAAIA,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,CAACA,IAAIA,iBAAiBA,CAACA,CAACA,EAAEA,OAAOA,CAACA;;oBAEvFA,IAAIA,EAAEA,GAAsBA,IAAIA,kBAAkBA,CAACA,CAACA;;oBAEpDA,EAAEA,CAACA,OAAOA,GAAGA,OAAOA;oBACpBA,EAAEA,CAACA,MAAMA,GAAGA,gBAAgBA;;oBAE5BA,gBAAgBA,CAACA,UAAUA,CAACA,IAAIA,CAACA,EAAEA,CAACA;iBAEpCA;;gBAEDA,OAAOA,gBAAgBA;YAExBA,CAACA;;YAEDF,kDAAAA,UAA8CA,OAAyBA;gBAGtEG,IAAIA,CAACA,GAAUA,gBAAgBA,CAACA,UAAUA,CAACA,MAAMA;gBACjDA,IAAIA,CAACA;;gBAELA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,CAACA,EAAEA,CAACA,EAAEA,CAAEA;oBAElCA,CAACA,GAAGA,gBAAgBA,CAACA,UAAUA,CAAEA,CAACA,CAAEA;;oBAEpCA,IAAIA,CAACA,CAACA,OAAOA,KAAKA,OAAOA,CAAEA;wBAE1BA,OAAOA,CAACA,CAACA,MAAMA;qBAEfA;iBAEDA;;gBAEDA,OAAOA,IAAIA;YAEZA,CAACA;;YAEDH,0CAAAA,UAAsCA,OAAyBA;gBAG9DI,IAAIA,CAACA,GAAUA,gBAAgBA,CAACA,UAAUA,CAACA,MAAMA;gBACjDA,IAAIA,CAACA;;gBAELA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,CAACA,EAAEA,CAACA,EAAEA,CAAEA;oBAElCA,CAACA,GAAGA,gBAAgBA,CAACA,UAAUA,CAAEA,CAACA,CAAEA;;oBAEpCA,IAAIA,CAACA,CAACA,OAAOA,KAAKA,OAAOA,CAAEA;wBAE1BA,gBAAgBA,CAACA,UAAUA,CAACA,MAAMA,CAACA,CAACA,EAAEA,CAACA,CAACA;wBACxCA,MAAOA;qBAEPA;iBAEDA;YAGFA,CAACA;;YAEDJ;gBAAAA,KAAAA;oBAGCA,IAAIA,IAAIA,CAACA,eAAeA,CAAEA;wBAEzBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;qBAEvBA;;oBAEDA,OAAOA,IAAIA,CAACA,cAAcA;gBAE3BA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAGCA,IAAIA,IAAIA,CAACA,eAAeA,CAAEA;wBAEzBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;qBAEvBA;;oBAEDA,OAAOA,IAAIA,CAACA,cAAcA;gBAE3BA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA;gBACvBA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAYA;oBAEhCA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,UAAUA,CAAEA;wBAE7BA,MAAOA;qBAEPA;;oBAEDA,IAAIA,CAACA,UAAUA,GAAGA,KAAKA;;oBAEvBA,IAAIA,CAACA,eAAeA,GAAGA,IAAIA;;oBAE3BA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,eAAeA,CAACA,IAAIA,CAACA,UAAUA,CAACA;;oBAE7EA,IAAIA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,UAAUA,CAAEA;wBAEzCA,IAAIA,CAACA,oBAAoBA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,UAAUA,CAACA,GAACA,EAAEA,CAACA;wBACnFA,IAAIA,CAACA,oBAAoBA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,UAAUA;qBAEjDA,KAAMA;wBACNA,IAAIA,CAACA,oBAAoBA,CAACA,CAACA,GAAGA,CAACA;wBAC/BA,IAAIA,CAACA,oBAAoBA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,aAAaA;qBAEpDA;;oBAEDA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,MAAMA,CAACA,CAACA;gBAEpEA,CAACA;;;;AA7BAA;;YA+BDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,WAAWA;gBACxBA,CAACA;gBAEDA,KAAAA,UAAsBA,KAAYA;oBAEjCA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,WAAWA,CAAEA;wBAE9BA,MAAOA;qBAEPA;;oBAEDA,IAAIA,CAACA,WAAWA,GAAGA,KAAKA;;oBAExBA,IAAIA,CAACA,eAAeA,GAAGA,IAAIA;;oBAE3BA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,eAAeA,CAACA,IAAIA,CAACA,WAAWA,CAACA;;oBAE/EA,IAAIA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,CAACA,WAAWA,CAAEA;wBAE3CA,IAAIA,CAACA,oBAAoBA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,GAACA,EAAEA,CAACA;wBACrFA,IAAIA,CAACA,oBAAoBA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,WAAWA;qBAEnDA,KAAMA;wBAENA,IAAIA,CAACA,oBAAoBA,CAACA,CAACA,GAAGA,CAACA;wBAC/BA,IAAIA,CAACA,oBAAoBA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,cAAcA;qBAEtDA;;oBAEDA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,MAAMA,CAACA,CAACA;gBAEpEA,CAACA;;;;AA9BAA;;YAgCDA;gBAAAA,KAAAA;oBAGCA,IAAIA,IAAIA,CAACA,eAAeA,CAAEA;wBAEzBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;qBAEvBA;;oBAEDA,OAAOA,IAAIA,CAACA,4BAA4BA;gBACzCA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAGCA,IAAIA,IAAIA,CAACA,eAAeA,CAAEA;wBAEzBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;qBAEvBA;;oBAEDA,OAAOA,IAAIA,CAACA,2BAA2BA;gBAExCA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAGCA,IAAIA,IAAIA,CAACA,eAAeA,CAAEA;wBAEzBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;qBAEvBA;;oBAEDA,OAAOA,IAAIA,CAACA,oBAAoBA;gBACjCA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,cAAcA;gBAC3BA,CAACA;;;;AAAAA;YAEDA,qCAAAA;gBAGCK,gBAAgBA,CAACA,sBAAsBA,CAACA,IAAIA,CAACA,QAAQA,CAACA;;gBAEtDA,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;oBAEtBA,IAAIA,CAACA,YAAYA,CAACA,OAAOA,CAACA,CAACA;oBAC3BA,IAAIA,CAACA,2BAA2BA,CAACA,OAAOA,CAACA,CAACA;oBAC1CA,IAAIA,CAACA,4BAA4BA,CAACA,OAAOA,CAACA,CAACA;oBAC3CA,IAAIA,CAACA,2BAA2BA,GAAGA,IAAIA;oBACvCA,IAAIA,CAACA,4BAA4BA,GAAGA,IAAIA;oBACxCA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA;iBAExBA;YACFA,CAACA;;YAKDL,+EAH+EA;YAC/EA,wEAAwEA;YACxEA,wCAAwCA;0DACxCA;gBAECM,IAAIA,OAAOA,GAAqBA,IAAIA,CAACA,QAAQA,CAACA,SAASA;gBACvDA,IAAIA,YAAYA;gBAChBA,IAAIA,WAAWA;;gBAEfA,IAAIA,CAACA;gBACLA,IAAIA,CAACA;;gBAELA,IAAIA,IAAIA,CAACA,4BAA4BA,IAAIA,IAAIA,CAAEA;oBAE9CA,IAAIA,CAACA,4BAA4BA,GAAGA,OAAOA,CAACA,kBAAkBA,CAACA,CAACA,EAAEA,CAACA,CAACA;iBAEpEA;;gBAEDA,IAAIA,IAAIA,CAACA,2BAA2BA,IAAIA,IAAIA,CAAEA;oBAE7CA,IAAIA,CAACA,2BAA2BA,GAAGA,OAAOA,CAACA,kBAAkBA,CAACA,CAACA,EAAEA,CAACA,CAACA;iBAEnEA;;gBAEDA,IAAIA,CAACA,IAAIA,CAACA,YAAYA,CAAEA;oBAEvBA,IAAIA,CAACA,YAAYA,GAAGA,OAAOA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;;oBAEhDA,IAAIA,CAACA,YAAYA,CAACA,eAAeA,CAACA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA;iBAC3DA;;gBAEDA,IAAIA,CAACA,cAAcA,GAAGA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,UAAUA,GAACA,IAAIA,CAACA,aAAaA,EAAEA,CAACA,CAACA;gBACzEA,IAAIA,CAACA,cAAcA,GAAGA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,WAAWA,GAACA,IAAIA,CAACA,cAAcA,EAAEA,CAACA,CAACA;;gBAE3EA,IAAIA,EAAEA,GAAUA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,EAAEA;gBAC1BA,IAAIA,EAAEA,GAAUA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,EAAEA;gBAC1BA,IAAIA,EAAEA,GAAUA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,EAAEA;gBAC1BA,IAAIA,EAAEA,GAAUA,CAACA,CAACA,GAAGA,CAACA,CAACA,GAACA,EAAEA;;gBAE1BA,sJAAsJA;gBACtJA,YAAYA,GAAGA,CAAKA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,CAAEA;;gBAE5FA,WAAWA,GAAGA,CAAMA,CAACA,CAACA,EAAEA,CAACA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA,EAAEA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA,CAAEA;;gBAE5FA,IAAIA,CAACA,4BAA4BA,CAACA,eAAeA,CAACA,YAAYA,EAAEA,CAACA,EAAEA,CAACA,CAACA;gBACrEA,IAAIA,CAACA,2BAA2BA,CAACA,eAAeA,CAACA,WAAWA,EAAEA,CAACA,EAAEA,CAACA,CAACA;;gBAEnEA,IAAIA,CAACA,eAAeA,GAAGA,KAAKA;YAE7BA,CAACA;YACFN,wBAACA;QAADA,CAACA,EArUqCjB,IAAIA,CAACA,MAAMA,CAACA,eAAeA,EAqUhEA;QArUDA,6CAqUCA;IAGFA,CAACA,yCAAAtsC;iCAAAA;AAADA,CAACA,uBAAA;;AAED;IAAA8tC;;AAKCA,IAADA,0BAACA;AAADA,CAACA,IAAA;;AAED;IAAAE;;AAECA,IAADA,yBAACA;AAADA,CAACA,IAAA;ACxVD,yCAAyC;AAEzC,IAAO,IAAI;AA8JV,CA9JD,UAAO,IAAI;KAAXhuC,UAAYA,QAAQA;QAEnBssC,qBAAqBA;QAErBA,0BAA0BA;QAC1BA,gCAAgCA;QAEhCA,uBAAuBA;QAEvBA;;;;;UAKGA;QACHA;;YAcC4B;;;;cADGA;YACHA,wBAAYA,+BAA+DA;gBAE1EC,WAAMA,KAAAA,CAACA;;gBAEPA,IAAIA,CAACA,+BAA+BA;oBACnCA,MAAMA,IAAIA,KAAKA,CAACA,uGAAuGA,CAACA,CAACA;;gBAE1HA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,KAAKA,CAAoBA,cAAcA,CAACA,oBAAoBA,CAACA;;gBAElFA,IAAIA,CAACA,yBAAyBA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA;YACzFA,CAACA;YAODD;;;;cADGA;yCACHA;gBAECE,IAAIA,IAAIA,CAACA,SAASA,IAAIA,IAAIA;oBACzBA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,cAAcA,CAACA,IAAIA,+BAA+BA,CAACA,CAACA,CAACA,CAACA;;gBAE5EA,OAAOA,IAAIA,CAACA,SAASA;YAEtBA,CAACA;;YAUDF;;;;;;;cADGA;oDACHA,UAAoBA,KAAYA,EAAEA,aAA6BA,EAAEA,OAA2BA;gBAA1DG,4CAAAA,aAAaA,GAAWA,KAAKA;AAAAA,gBAAEA,sCAAAA,OAAOA,GAAUA,UAAUA;AAAAA,gBAE3FA,IAAIA,KAAKA,GAAGA,CAACA,IAAIA,KAAKA,IAAIA,cAAcA,CAACA,oBAAoBA;oBAC5DA,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,aAAaA,CAACA,6BAA6BA,GAAGA,cAAcA,CAACA,oBAAoBA,GAAGA,GAAGA,CAACA,CAACA;;gBAEhHA,IAAIA,CAACA,IAAIA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAAEA;oBAC3BA,cAAcA,CAACA,YAAYA,EAAEA;;oBAE7BA,IAAIA,MAAMA,GAAqBA,QAAQA,CAACA,aAAaA,CAACA,QAAQA,CAACA;oBAC/DA,IAAIA,OAAOA,GAAqBA,IAAIA,CAACA,SAASA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,OAAOA,CAACA,MAAMA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,aAAaA,EAAEA,OAAOA,CAACA;oBAC1HA,OAAOA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,yBAAyBA,CAACA;oBACpGA,OAAOA,CAACA,cAAcA,CAACA,IAAIA,EAAEA,aAAaA,EAAEA,OAAOA,CAACA;iBACpDA;;gBAEDA,OAAOA,OAAOA;YACfA,CAACA;;YAODH;;;;cADGA;sDACHA,UAAsBA,OAAyBA;gBAE9CI,cAAcA,CAACA,YAAYA,EAAEA;;gBAE7BA,OAAOA,CAACA,mBAAmBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,yBAAyBA,CAACA;;gBAEvGA,IAAIA,CAACA,SAASA,CAAEA,OAAOA,CAACA,cAAcA,CAAEA,GAAGA,IAAIA;YAChDA,CAACA;;YAQDJ;;;;;cADGA;sDACHA,UAAsBA,aAA6BA,EAAEA,OAA2BA;gBAA1DK,4CAAAA,aAAaA,GAAWA,KAAKA;AAAAA,gBAAEA,sCAAAA,OAAOA,GAAUA,UAAUA;AAAAA,gBAE/EA,IAAIA,CAACA,GAAUA,CAACA;gBAChBA,IAAIA,GAAGA,GAAUA,IAAIA,CAACA,SAASA,CAACA,MAAMA;;gBAItCA,OAAOA,CAACA,GAAGA,GAAGA,CAAEA;oBACfA,IAAIA,CAACA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA;wBACrBA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,EAAEA,aAAaA,EAAEA,OAAOA,CAACA,CAACA;;oBAErDA,EAAEA,CAACA;iBACHA;;gBAEDA,OAAOA,IAAIA;YACZA,CAACA;;YAMDL;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,cAAcA,CAACA,YAAYA,GAAGA,cAAcA,CAACA,oBAAoBA,GAAEA,IAAIA,GAAGA,KAAKA;gBACvFA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,cAAcA,CAACA,oBAAoBA,GAAGA,cAAcA,CAACA,YAAYA;gBACzEA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,cAAcA,CAACA,YAAYA;gBACnCA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,SAASA,CAACA,MAAMA;gBAC7BA,CAACA;;;;AAAAA;YAEDA,4CAAAA,UAAyBA,CAAmBA;gBAE3CM,IAAIA,OAAOA,GAAyCA,CAACA,CAACA,MAAMA;gBAC5DA,QAAQA,CAACA,IAAIA,CAACA,WAAWA,CAACA,OAAOA,CAACA,MAAMA,CAACA;YAC1CA,CAACA;YA3IDN,sCAA6CA,CAACA;;YAK9CA,8BAAqCA,CAACA;YAuIvCA,sBAACA;QAADA,CAACA,EA9ImC5B,IAAIA,CAACA,MAAMA,CAACA,eAAeA,EA8I9DA;QA9IDA,yCA8ICA;IACFA,CAACA,yCAAAtsC;iCAAAA;AAADA,CAACA,uBAAA;;AAED;IAAAyuC;;AAECA,IAADA,uCAACA;AAADA,CAACA,IAAA;ACpKD,yCAAyC;AAiEzC,IAAO,IAAI;AAujBV,CAvjBD,UAAO,IAAI;IA/DXzuC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA8DGA;KACHA,UAAYA,UAAUA;QAGrB4jC;;;;;UAKGA;QACHA,gEAAgEA;QAGhEA;;;;UAIGA;QACHA,oEAAoEA;QAEpEA;;YAsGC+K;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cADGA;YACHA,gBAAYA,eAA8BA,EAAEA,cAA4BA;gBAA5DC,8CAAAA,eAAeA,GAAWA,IAAIA;AAAAA,gBAAEA,6CAAAA,cAAcA,GAAUA,IAAIA;AAAAA,gBAEvEA,WAAMA,KAAAA,CAACA;;gBAEPA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA,KAAKA,CAAuBA,CAACA;gBACzDA,IAAIA,CAACA,YAAYA,GAAGA,eAAeA;gBACnCA,IAAIA,CAACA,WAAWA,GAAGA,cAAcA;;gBAEjCA,IAAIA,CAACA,2BAA2BA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,kBAAkBA,CAACA;gBAC5FA,IAAIA,CAACA,wBAAwBA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,eAAeA,CAACA;YACvFA,CAACA;YApFDD;gBAAAA;;;;;;;;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;;;;AAAAA;YAkBDA;gBAAAA;;;;;;;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,kBAAkBA;gBAC/BA,CAACA;;;;AAAAA;YAmEDA;;;;cADGA;qCACHA;gBAECE,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;oBACtBA,IAAIA,GAAGA;oBACPA,GAAGA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,kBAAkBA,CAACA,WAAWA,CAACA,IAAIA,CAACA,WAAWA,CAACA;oBACnEA,GAAGA,CAACA,sBAAsBA,CAACA,CAACA;oBAC5BA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA;oBAC5BA,MAAMA;iBACNA;gBACDA,IAAIA,CAACA;gBACLA,IAAIA,MAAMA,GAAkBA,IAAIA,CAACA,gBAAgBA,CAACA,MAAMA;gBACxDA,KAAKA,CAACA,GAAGA,CAACA,EAAEA,CAACA,GAAGA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;oBAC5BA,IAAIA,CAACA,eAAeA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA,CAACA;oBAC9CA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,CAACA;oBAC/BA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA,GAAGA,IAAIA;iBAC/BA;gBACDA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA;YAC7BA,CAACA;;YAyKDF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cADGA;oCACHA,UAAYA,OAA2BA,EAAEA,OAA0CA,EAAEA,EAAgBA,EAAEA,MAAqCA;gBAAnGG,sCAAAA,OAAOA,GAA+BA,IAAIA;AAAAA,gBAAEA,iCAAAA,EAAEA,GAAUA,IAAIA;AAAAA,gBAAEA,qCAAAA,MAAMA,GAA2BA,IAAIA;AAAAA,gBAE3IA,IAAIA,KAAKA;;gBAETA,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;oBACtBA,IAAIA,GAAGA;oBACPA,GAAGA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,kBAAkBA,CAACA,WAAWA,CAACA,IAAIA,CAACA,WAAWA,CAACA;oBACnEA,KAAKA,GAAGA,GAAGA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,OAAOA,EAAEA,EAAEA,EAAEA,MAAMA,CAACA;iBAC9CA,KAAMA;oBACNA,IAAIA,MAAMA,GAAwBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,WAAWA,CAACA,CAACA;oBAC5DA,IAAIA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA;oBAClCA,KAAKA,GAAGA,MAAMA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,OAAOA,EAAEA,EAAEA,EAAEA,MAAMA,CAACA;iBACjDA;;gBAEDA,KAAKA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,WAAWA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,2BAA2BA,CAACA;gBACnGA,KAAKA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,cAAcA,EAAEA,IAAIA,CAACA,wBAAwBA,CAACA;;gBAE5FA,uEAAuEA;gBACvEA,KAAKA,CAACA,QAAQA,CAACA,iBAAiBA,CAACA,IAAIA,CAACA,WAAWA,CAACA;gBAClDA,KAAKA,CAACA,QAAQA,CAACA,sBAAsBA,CAACA,IAAIA,CAACA,YAAYA,CAACA;;gBAExDA,OAAOA,KAAKA;YACbA,CAACA;;YAwFDH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cADGA;wCACHA,UAAgBA,IAAQA,EAAEA,OAA0CA,EAAEA,EAAgBA,EAAEA,MAAqCA;gBAAnGI,sCAAAA,OAAOA,GAA+BA,IAAIA;AAAAA,gBAAEA,iCAAAA,EAAEA,GAAUA,IAAIA;AAAAA,gBAAEA,qCAAAA,MAAMA,GAA2BA,IAAIA;AAAAA,gBAE5HA,IAAIA,KAAKA;;gBAETA,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;oBACtBA,IAAIA,GAAGA;oBACPA,GAAGA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,kBAAkBA,CAACA,WAAWA,CAACA,IAAIA,CAACA,WAAWA,CAACA;oBACnEA,KAAKA,GAAGA,GAAGA,CAACA,QAAQA,CAACA,IAAIA,EAAEA,OAAOA,EAAEA,EAAEA,EAAEA,MAAMA,CAACA;iBAC/CA,KAAMA;oBACNA,IAAIA,MAAMA,GAAwBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,WAAWA,CAACA,CAACA;oBAC5DA,IAAIA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA;oBAClCA,KAAKA,GAAGA,MAAMA,CAACA,QAAQA,CAACA,IAAIA,EAAEA,EAAEA,EAAEA,OAAOA,EAAEA,EAAEA,EAAEA,MAAMA,CAACA;iBACtDA;;gBAEDA,KAAKA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,WAAWA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,2BAA2BA,CAACA;gBACnGA,KAAKA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,cAAcA,EAAEA,IAAIA,CAACA,wBAAwBA,CAACA;;gBAE5FA,uEAAuEA;gBACvEA,KAAKA,CAACA,QAAQA,CAACA,iBAAiBA,CAACA,IAAIA,CAACA,WAAWA,CAACA;gBAClDA,KAAKA,CAACA,QAAQA,CAACA,sBAAsBA,CAACA,IAAIA,CAACA,YAAYA,CAACA;;gBAExDA,OAAOA,KAAKA;YACbA,CAACA;;YAyBDJ;;;;;;;;;;;;;;;;;;;;;;cADGA;sCACHA;gBAECK,MAAMA;YACPA,CAACA;;YAWDL;;;;;;;;cADGA;kCACHA,UAA2BA,WAAkBA;gBAE5CM,IAAIA,CAACA,GAAGA,CAACA,WAAWA,CAACA,YAAYA,CAACA,WAAWA,CAACA;YAC/CA,CAACA;;YAWDN;;;;;;;;cADGA;mCACHA,UAA4BA,aAAsBA;gBAEjDO,IAAIA,CAACA,GAAGA,CAACA,WAAWA,CAACA,aAAaA,CAACA,aAAaA,CAACA;YAClDA,CAACA;;YAGDP,mCAAAA,UAAwBA,UAAsCA;gBAE7DQ,UAAUA,CAACA,mBAAmBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,WAAWA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,2BAA2BA,CAACA;gBAC3GA,UAAUA,CAACA,mBAAmBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,cAAcA,EAAEA,IAAIA,CAACA,wBAAwBA,CAACA;YACrGA,CAACA;;YAEDR,mCAAAA,UAAwBA,KAA4BA;gBAEnDS,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA;YAC1BA,CAACA;;YAKDT;;cADGA;2CACHA,UAAoBA,KAA6BA;gBAEhDU,IAAIA,IAAIA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,QAAQA,CAACA,CAAEA;oBAC7DA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA;oBACzBA,OAAOA,IAAIA;iBACXA,KAAMA;oBACNA,OAAOA,KAAKA;iBACZA;YACFA,CAACA;;YAKDV;;cADGA;4CACHA,UAAqBA,KAA6BA;gBAEjDW,IAAIA,IAAIA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,WAAWA,CAACA,WAAWA,CAACA,CAAEA;oBAC/DA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA;oBACzBA,OAAOA,IAAIA;iBACXA,KAAMA;oBACNA,OAAOA,KAAKA;iBACZA;YACFA,CAACA;;YAKDX;;cADGA;kDACHA,UAA2BA,KAA6BA;gBAEvDY,IAAIA,OAAOA,GAA2BA,KAAKA,CAACA,OAAOA;;gBAEnDA,IAAIA,CAACA,QAAQA,GAAGA,OAAOA;;gBAEvBA,IAAIA,OAAOA;oBACVA,IAAIA,CAACA,QAAQA,CAACA,OAAOA,CAACA,CAACA;;gBAExBA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA;YAC1BA,CAACA;YACFZ,cAACA;QAADA,CAACA,EAniB2B/K,sCAAsBA,EAmiBjDA;QAniBDA,2BAmiBCA;IACFA,CAACA,6CAAA5jC;qCAAAA;AAADA,CAACA,uBAAA;ACxnBD,0CAA0C;AAE1C,IAAO,IAAI;AA6HV,CA7HD,UAAO,IAAI;KAAXA,UAAYA,UAAUA;QAErB4jC;;YAQC4L;gBAECC,WAAMA,KAAAA,CAACA;gBARRA,KAAQA,mBAAmBA,GAAmCA,IAAIA,KAAKA,CAA2BA,CAACA,CAACA;gBACpGA,KAAQA,WAAWA,GAAmCA,IAAIA,KAAKA,CAA2BA,CAACA,CAACA;gBAG5FA,KAAOA,gBAAgBA,GAAGA,CAACA,CAACA;;gBAM3BA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA,IAAIA,CAACA,UAAUA,CAACA,sBAAsBA,CAACA,CAACA;;gBAEpEA,IAAIA,CAACA,gBAAgBA,CAACA,UAAUA,CAACA,IAAIA,CAACA;gBACtCA,IAAIA,CAACA,gBAAgBA,CAACA,QAAQA,GAAGA,IAAIA;gBACrCA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,GAAGA,IAAIA,IAAIA,CAACA,SAASA,CAACA,SAASA,CAACA,IAAIA,IAAIA,CAACA,SAASA,CAACA,QAAQA,CAACA,CAACA,CAACA;YAC9FA,CAACA;YAEDD,qCAAAA,UAA0BA,SAAkCA;gBAE3DE,IAAIA,CAACA,GAAUA,CAACA;gBAChBA,IAAIA,GAAGA,GAAUA,IAAIA,CAACA,WAAWA,CAACA,MAAMA;;gBAExCA,SAASA,CAACA,KAAKA,GAAGA,IAAIA;;gBAEtBA,OAAOA,CAACA,GAAGA,GAAGA,CAAEA;oBACfA,IAAIA,CAACA,gBAAgBA,EAAEA;oBACvBA,IAAIA,CAACA,WAAWA,CAACA,CAACA,EAAEA,CAACA,CAACA,QAAQA,CAACA,SAASA,CAACA;iBACzCA;YACFA,CAACA;;YAEDF;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA;gBACvCA,CAACA;gBAEDA,KAAAA,UAAqBA,KAA8BA;oBAElDA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,GAAGA,KAAKA;;oBAEvCA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;gBAChHA,CAACA;;;;AAPAA;;YASDA,2BAAAA,UAAgBA,KAA6BA;gBAE5CG,OAAOA,IAAIA,CAACA,gBAAgBA,CAACA,QAAQA,CAACA,KAAKA,CAACA;YAC7CA,CAACA;;YAEDH,2BAAAA,UAAgBA,KAA6BA;gBAE5CI,OAAOA,IAAIA,CAACA,gBAAgBA,CAACA,QAAQA,CAACA,KAAKA,CAACA;YAC7CA,CAACA;;YAEDJ,8BAAAA,UAAmBA,KAA6BA;gBAE/CK,IAAIA,CAACA,gBAAgBA,CAACA,WAAWA,CAACA,KAAKA,CAACA;YACzCA,CAACA;;YAEDL,gCAAAA,UAAqBA,KAAYA;gBAEhCM,IAAIA,CAACA,gBAAgBA,CAACA,aAAaA,CAACA,KAAKA,CAACA;YAC3CA,CAACA;;YAGDN,6BAAAA,UAAkBA,KAAYA;gBAE7BO,OAAOA,IAAIA,CAACA,gBAAgBA,CAACA,UAAUA,CAACA,KAAKA,CAACA;YAC/CA,CAACA;;YAEDP;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,gBAAgBA,CAACA,WAAWA;gBACzCA,CAACA;;;;AAAAA;YAKDA;;cADGA;8CACHA,UAAuBA,aAAqCA;gBAE3DQ,IAAIA,aAAaA,CAACA,SAASA;oBAC1BA,IAAIA,CAACA,kBAAkBA,CAACA,aAAaA,CAACA,SAASA,CAACA,CAACA;;gBAElDA,IAAIA,aAAaA,CAACA,QAAQA;oBACzBA,aAAaA,CAACA,mBAAmBA,CAACA,cAAcA,CAACA,aAAaA,CAACA,CAACA;YAClEA,CAACA;;YAKDR;;cADGA;iDACHA,UAA0BA,SAAkCA;gBAE3DS,IAAIA,CAACA,mBAAmBA,CAACA,IAAIA,CAACA,SAASA,CAACA;;gBAExCA,qDAAqDA;gBACrDA,IAAIA,IAAIA,CAACA,WAAWA,CAACA,OAAOA,CAACA,SAASA,CAACA,IAAIA,CAACA,CAACA;oBAC5CA,IAAIA,CAACA,WAAWA,CAACA,IAAIA,CAACA,SAASA,CAACA,CAACA;YACnCA,CAACA;;YAKDT;;cADGA;gDACHA,UAAyBA,aAAqCA;gBAE7DU,IAAIA,aAAaA,CAACA,SAASA;oBAC1BA,IAAIA,CAACA,oBAAoBA,CAACA,aAAaA,CAACA,SAASA,CAACA,CAACA;;gBAEpDA,IAAIA,aAAaA,CAACA,QAAQA;oBACzBA,aAAaA,CAACA,mBAAmBA,CAACA,aAAaA,CAACA,aAAaA,CAACA,CAACA;YACjEA,CAACA;;YAKDV;;cADGA;mDACHA,UAA4BA,SAAkCA;gBAE7DW,IAAIA,CAACA,mBAAmBA,CAACA,MAAMA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,OAAOA,CAACA,SAASA,CAACA,EAAEA,CAACA,CAACA;;gBAE/EA,qEAAqEA;gBACrEA,IAAIA,IAAIA,CAACA,mBAAmBA,CAACA,OAAOA,CAACA,SAASA,CAACA,IAAIA,CAACA,CAACA;oBACpDA,IAAIA,CAACA,WAAWA,CAACA,MAAMA,CAACA,IAAIA,CAACA,WAAWA,CAACA,OAAOA,CAACA,SAASA,CAACA,EAAEA,CAACA,CAACA,CAACA;YAClEA,CAACA;YACFX,aAACA;QAADA,CAACA,EA1H0B5L,IAAIA,CAACA,MAAMA,CAACA,eAAeA,EA0HrDA;QA1HDA,yBA0HCA;IACFA,CAACA,6CAAA5jC;qCAAAA;AAADA,CAACA,uBAAA;AC/HD,0CAA0C;AAE1C,IAAO,IAAI;AAolBV,CAplBD,UAAO,IAAI;KAAXA,UAAYA,UAAUA;QAErB4jC,YAAoBA,IAAIA,CAACA,UAAUA,CAACA,KAAKA;QACzCA,aAAqBA,IAAIA,CAACA,QAAQA,CAACA,MAAMA;QACzCA,kBAAyBA,IAAIA,CAACA,MAAMA,CAACA,WAAWA;QAChDA,iBAAwBA,IAAIA,CAACA,MAAMA,CAACA,UAAUA;QAC9CA,oBAA0BA,IAAIA,CAACA,MAAMA,CAACA,aAAaA;QACnDA,eAAuBA,IAAIA,CAACA,IAAIA,CAACA,QAAQA;QACzCA,YAAoBA,IAAIA,CAACA,IAAIA,CAACA,KAAKA;QACnCA,gBAAuBA,IAAIA,CAACA,IAAIA,CAACA,SAASA;QAC1CA,eAAuBA,IAAIA,CAACA,IAAIA,CAACA,QAAQA;QACzCA,gBAAuBA,IAAIA,CAACA,EAAEA,CAACA,SAASA;QACxCA,6BAAiCA,IAAIA,CAACA,EAAEA,CAACA,sBAAsBA;QAC/DA,cAAsBA,IAAIA,CAACA,EAAEA,CAACA,OAAOA;QACrCA,mBAA0BA,IAAIA,CAACA,QAAQA,CAACA,YAAYA;;QAEpDA,sBAA4BA,IAAIA,CAACA,MAAMA,CAACA,eAAeA;;QAEvDA,eAAuBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAG1CA;YA0DCwM;;;;;;;;;cADGA;YACHA,cAAYA,QAAkBA,EAAEA,KAAkBA,EAAEA,MAAoBA;gBAAxCC,oCAAAA,KAAKA,GAASA,IAAIA;AAAAA,gBAAEA,qCAAAA,MAAMA,GAAUA,IAAIA;AAAAA,gBAjCxEA,KAAQA,MAAMA,GAAUA,CAACA,CAACA;gBAC1BA,KAAQA,OAAOA,GAAUA,CAACA,CAACA;gBAE3BA,KAAQA,KAAKA,GAAUA,CAACA,CAACA;gBACzBA,KAAQA,UAAUA,GAAUA,CAACA,CAACA;gBAC9BA,KAAQA,gBAAgBA,GAAUA,QAAQA,CAACA;gBAC3CA,KAAQA,gBAAgBA,GAAUA,CAACA,CAACA;gBAEpCA,KAAQA,cAAcA,GAAWA,IAAIA,CAACA;gBACtCA,KAAQA,aAAaA,GAAWA,IAAIA,CAACA;gBAOrCA,KAAQA,YAAYA,GAAqBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,CAACA,CAACA;gBAmBtEA,IAAIA,CAACA,gCAAgCA,GAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,uBAAuBA,CAACA;gBAC3FA,IAAIA,CAACA,4BAA4BA,GAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA;gBACnFA,IAAIA,CAACA,0BAA0BA,GAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,iBAAiBA,CAACA;gBAC/EA,IAAIA,CAACA,yBAAyBA,GAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA;;gBAE7EA,IAAIA,CAACA,KAAKA,GAAGA,KAAKA,IAAIA,IAAIA,KAAKA,CAACA,CAACA;gBACjCA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA,IAAIA,IAAIA,MAAMA,CAACA,CAACA;gBACpCA,IAAIA,CAACA,QAAQA,GAAGA,QAAQA;;gBAExBA,mCAAmCA;gBACnCA,QAAQA,CAACA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,KAAKA;;gBAElCA,IAAIA,CAACA,YAAYA,GAAGA,QAAQA,CAACA,aAAaA,CAACA,KAAKA,CAACA;gBACjDA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA,QAAQA,GAAGA,UAAUA;;gBAE7CA,QAAQA,CAACA,IAAIA,CAACA,WAAWA,CAACA,IAAIA,CAACA,YAAYA,CAACA;;gBAE5CA,IAAIA,CAACA,aAAaA,GAAGA,YAAYA,CAACA,WAAWA,CAACA,CAACA;gBAC/CA,IAAIA,CAACA,aAAaA,CAACA,YAAYA,CAACA,IAAIA,CAACA;gBAExCA,4BAA4BA;gBAC5BA,8CAA8CA;YAC5CA,CAACA;YAMDD;;;cADGA;qDACHA,UAAgCA,CAAYA;gBAE3CE,IAAIA,IAAIA,CAACA,QAAQA;oBAChBA,IAAIA,CAACA,QAAQA,CAACA,SAASA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,SAASA,CAACA;YACjDA,CAACA;;YAIDF;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAIDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA;gBACvBA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAeA;oBAElCA,IAAIA,IAAIA,CAACA,UAAUA,IAAIA,KAAKA;wBAC3BA,MAAOA,CAAAA;;oBAERA,IAAIA,IAAIA,CAACA,UAAUA,CAAEA;wBACpBA,IAAIA,CAACA,UAAUA,CAACA,OAAOA,CAACA,CAACA;wBACzBA,IAAIA,CAACA,UAAUA,CAACA,mBAAmBA,CAACA,aAAaA,CAACA,gBAAgBA,EAAEA,IAAIA,CAACA,0BAA0BA,CAACA;wBACpGA,IAAIA,CAACA,UAAUA,CAACA,mBAAmBA,CAACA,aAAaA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,yBAAyBA,CAACA;qBAClGA;;oBAEDA,IAAIA,CAACA,UAAUA,GAAGA,KAAKA;;oBAEvBA,IAAIA,CAACA,UAAUA,CAACA,gBAAgBA,CAACA,aAAaA,CAACA,gBAAgBA,EAAEA,IAAIA,CAACA,0BAA0BA,CAACA;oBACjGA,IAAIA,CAACA,UAAUA,CAACA,gBAAgBA,CAACA,aAAaA,CAACA,eAAeA,EAAEA,IAAIA,CAACA,yBAAyBA,CAACA;;oBAE/FA,wBAAwBA;oBACxBA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,UAAUA,CAACA,uBAAuBA,CAACA,CAACA;;oBAElEA,IAAIA,IAAIA,CAACA,QAAQA;wBAChBA,IAAIA,CAACA,iBAAiBA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,QAAQA,CAACA;;oBAE/CA,mBAAmBA;oBACnBA,IAAIA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,CAACA,CAACA,IAAIA,CAACA,gBAAgBA,IAAIA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,GAACA,IAAIA;oBAC3EA,IAAIA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,CAACA,CAACA,IAAIA,CAACA,gBAAgBA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAACA,IAAIA;oBAC1EA,IAAIA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,CAACA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA,CAACA,GAACA,IAAIA;oBACnEA,IAAIA,CAACA,UAAUA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,gBAAgBA;oBACzDA,IAAIA,CAACA,UAAUA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,MAAMA;oBACnCA,IAAIA,CAACA,UAAUA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,OAAOA;oBACrCA,IAAIA,CAACA,UAAUA,CAACA,YAAYA,GAAGA,IAAIA,CAACA,aAAaA;gBAClDA,CAACA;;;;AAhCAA;;YAqCDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;gBAEDA,KAAAA,UAAwBA,KAAaA;oBAEpCA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,KAAKA;wBAC9BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,aAAaA,GAAGA,KAAKA;;oBAE1BA,IAAIA,IAAIA,CAACA,UAAUA;wBAClBA,IAAIA,CAACA,UAAUA,CAACA,YAAYA,GAAGA,IAAIA,CAACA,aAAaA,CAACA;gBACpDA,CAACA;;;;AAXAA;;YAgBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,gBAAgBA;gBAC7BA,CAACA;gBAEDA,KAAAA,UAA2BA,KAAYA;oBAEtCA,IAAIA,IAAIA,CAACA,gBAAgBA,IAAIA,KAAKA;wBACjCA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,gBAAgBA,GAAGA,KAAKA;;oBAE7BA,IAAIA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,CAACA,CAACA,KAAKA,IAAIA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,GAACA,IAAIA;oBAC3DA,IAAIA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,CAACA,CAACA,KAAKA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAACA,IAAIA;oBAC1DA,IAAIA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,GAACA,IAAIA;gBACpDA,CAACA;;;;AAZAA;;YAkBDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,gBAAgBA;gBAC7BA,CAACA;gBAMDA;;;kBADGA;qBACHA,UAA2BA,KAAYA;oBAEtCA,IAAIA,KAAKA,GAAGA,CAACA;wBACZA,KAAKA,GAAGA,CAACA;yBACLA,IAAIA,KAAKA,GAAGA,CAACA;wBACjBA,KAAKA,GAAGA,CAACA,CAACA;;oBAEXA,IAAIA,IAAIA,CAACA,gBAAgBA,IAAIA,KAAKA;wBACjCA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,UAAUA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,gBAAgBA,GAAGA,KAAKA;gBAClEA,CAACA;;;;AAjBAA;;YAuBDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAKDA;;kBADGA;qBACHA,UAAkBA,KAAYA;oBAE7BA,IAAIA,IAAIA,CAACA,QAAQA,IAAIA,KAAKA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,IAAIA,CAACA,QAAQA;wBAChBA,IAAIA,CAACA,QAAQA,CAACA,mBAAmBA,CAACA,WAAWA,CAACA,kBAAkBA,EAAEA,IAAIA,CAACA,4BAA4BA,CAACA,CAACA;;oBAEtGA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;;oBAErBA,IAAIA,IAAIA,CAACA,iBAAiBA;wBACzBA,IAAIA,CAACA,iBAAiBA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,QAAQA,CAACA;;oBAE/CA,IAAIA,IAAIA,CAACA,OAAOA;wBACfA,IAAIA,CAACA,QAAQA,CAACA,SAASA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,SAASA,CAACA;;oBAElDA,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,CAACA,WAAWA,CAACA,kBAAkBA,EAAEA,IAAIA,CAACA,4BAA4BA,CAACA;oBACjGA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA;oBACzBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AAxBAA;;YA8BDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAKDA;;kBADGA;qBACHA,UAAiBA,KAAWA;oBAE3BA,IAAIA,IAAIA,CAACA,OAAOA,IAAIA,KAAKA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,IAAIA,CAACA,OAAOA;wBACfA,IAAIA,CAACA,OAAOA,CAACA,mBAAmBA,CAACA,UAAUA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,gCAAgCA,CAACA,CAACA;;oBAEvGA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;;oBAEpBA,IAAIA,CAACA,OAAOA,CAACA,gBAAgBA,CAACA,UAAUA,CAACA,iBAAiBA,EAAEA,IAAIA,CAACA,gCAAgCA,CAACA;;oBAElGA,IAAIA,IAAIA,CAACA,QAAQA;wBAChBA,IAAIA,CAACA,QAAQA,CAACA,SAASA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,SAASA,CAACA;gBACnDA,CAACA;;;;AAnBAA;;YAyBDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA;gBACvBA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,MAAMA;gBACnBA,CAACA;gBAEDA,KAAAA,UAAiBA,KAAYA;oBAE5BA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,KAAKA;wBACvBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,MAAMA,GAAGA,KAAKA;oBACnBA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,CAACA,MAAMA,GAACA,IAAIA,CAACA,OAAOA;oBAC5CA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,YAAYA;oBAC1DA,IAAIA,CAACA,UAAUA,CAACA,KAAKA,GAAGA,KAAKA;oBAC7BA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,KAAKA,GAAGA,IAAIA;gBAC7CA,CAACA;;;;AAZAA;;YAiBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAYA;oBAE7BA,IAAIA,IAAIA,CAACA,OAAOA,IAAIA,KAAKA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;oBACpBA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,CAACA,MAAMA,GAACA,IAAIA,CAACA,OAAOA;oBAC5CA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,YAAYA;oBAC1DA,IAAIA,CAACA,UAAUA,CAACA,MAAMA,GAAGA,KAAKA;oBAC9BA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,KAAKA,GAAGA,IAAIA;gBAC9CA,CAACA;;;;AAZAA;;YAiBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;gBAEDA,KAAAA,UAAuBA,KAAuBA;oBAE7CA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,KAAKA;wBAC7BA,MAAOA,CAAAA;;oBAERA,IAAIA,KAAKA,IAAIA,IAAIA;wBAChBA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,CAACA;;wBAEjDA,IAAIA,CAACA,YAAYA,GAAGA,KAAKA,CAACA;gBAC5BA,CAACA;;;;AAXAA;;YAgBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA,CAACA,CAACA;gBACzBA,CAACA;gBAEDA,KAAAA,UAAaA,KAAYA;oBAExBA,IAAIA,IAAIA,CAACA,UAAUA,CAACA,CAACA,IAAIA,KAAKA;wBAC7BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,UAAUA,CAACA,CAACA,IAAIA,KAAKA;oBAC1BA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA,IAAIA,GAAGA,KAAKA,GAAGA,IAAIA;gBAC5CA,CAACA;;;;AATAA;;YAcDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA,CAACA,CAACA;gBACzBA,CAACA;gBAEDA,KAAAA,UAAaA,KAAYA;oBAExBA,IAAIA,IAAIA,CAACA,UAAUA,CAACA,CAACA,IAAIA,KAAKA;wBAC7BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,UAAUA,CAACA,CAACA,IAAIA,KAAKA;oBAC1BA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA,GAAGA,GAAGA,KAAKA,GAAGA,IAAIA;gBAC3CA,CAACA;;;;AATAA;;YAcDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,CAACA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA,UAAUA,IAAIA,SAASA,CAACA;gBACzDA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAaA;oBAE/BA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,CAACA,UAAUA,GAAGA,KAAKA,GAAEA,SAASA,GAAGA,QAAQA;oBAChEA,sEAAsEA;gBACvEA,CAACA;;;;AANAA;;YAYDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,CAACA;oBACRA,8DAA8DA;gBAC/DA,CAACA;;;;AAAAA;YAKDA;;cADGA;oCACHA;gBAECG,IAAIA,CAACA,WAAWA,CAACA,CAACA;;gBAElBA,2BAA2BA;gBAC3BA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,YAAYA;;gBAE1DA,IAAIA,IAAIA,CAACA,aAAaA,CAAEA;oBACvBA,IAAIA,CAACA,aAAaA,GAAGA,KAAKA;oBAC1BA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,mBAAmBA,CAACA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,CAACA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,CAACA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,MAAMA,CAACA;iBACjLA;;gBAEDA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;oBACxBA,IAAIA,CAACA,cAAcA,GAAGA,KAAKA;oBAC3BA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,CAACA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,CAACA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,MAAMA,CAACA;iBAClKA;;gBAEDA,iBAAiBA;gBACjBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAAEA;oBACxBA,IAAIA,IAAIA,CAACA,cAAcA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,IAAIA,CAACA,aAAaA,CAACA,WAAWA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,aAAaA;wBAClHA,IAAIA,CAACA,aAAaA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,CAACA;;oBAE9GA,IAAIA,CAACA,aAAaA,CAACA,eAAeA,CAACA,IAAIA,CAACA,cAAcA,CAACA;oBACvDA,oCAAoCA;iBACpCA;;gBACDA,mCAAmCA;gBAEnCA,6CAA6CA;gBAC7CA,IAAIA,CAACA,iBAAiBA,CAACA,KAAKA,CAACA,CAACA;;gBAE9BA,0BAA0BA;gBAC1BA,IAAIA,CAACA,OAAOA,CAACA,kBAAkBA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA;;gBAEvDA,6CAA6CA;gBAC7CA,IAAIA,CAACA,UAAUA,CAACA,MAAMA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA;YAC/CA,CAACA;;YAKDH;;cADGA;yCACHA;gBAECI,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,CAACA,CAACA;;gBAEvCA,IAAIA,IAAIA,CAACA,KAAKA,IAAIA,CAACA;oBAClBA,IAAIA,CAACA,KAAKA,GAAGA,IAAIA,CAACA;;gBAEnBA,IAAIA,CAACA,UAAUA,GAAGA,IAAIA,GAAGA,IAAIA,CAACA,KAAKA;gBACnCA,IAAIA,CAACA,KAAKA,GAAGA,IAAIA;YAClBA,CAACA;;YAKDJ;;cADGA;qCACHA;gBAECK,IAAIA,CAACA,UAAUA,CAACA,OAAOA,CAACA,CAACA;;gBAEzBA,iDAAiDA;gBACjDA,IAAIA,CAACA,aAAaA,CAACA,cAAcA,CAACA,IAAIA,CAACA;;gBAEvCA,mDAAmDA;gBACnDA,iCAAiCA;gBAEjCA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA;;gBACzBA,8BAA8BA;gBAE9BA,IAAIA,CAACA,UAAUA,GAAGA,IAAIA;gBACtBA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA;YAC9BA,CAACA;;YAKDL;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,iBAAiBA;gBAC9BA,CAACA;;;;AAAAA;YAKDA;;cADGA;iDACHA,UAA4BA,KAAiBA;gBAE5CM,IAAIA,CAACA,aAAaA,GAAGA,IAAIA;gBACzBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;YAC3BA,CAACA;;YAKDN;;cADGA;+CACHA,UAA0BA,KAAmBA;gBAE5CO,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;YAC3BA,CAACA;;YAKDP;;cADGA;8CACHA,UAAyBA,KAAmBA;gBAE3CQ,IAAIA,CAACA,aAAaA,GAAGA,IAAIA;YAC1BA,CAACA;;YAEDR,yBAAAA,UAAeA,OAAgBA;gBAE9BS,IAAIA,CAACA,GAAsBA,IAAIA,CAACA,QAAQA,CAACA,OAAOA,CAACA,OAAOA,CAACA;gBACzDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,KAAKA,GAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,GAACA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,OAAOA;gBACzFA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAACA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,MAAMA,GAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,GAACA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,OAAOA;;gBAE3FA,OAAOA,CAACA;YACTA,CAACA;;YAEDT,2BAAAA,UAAiBA,EAASA,EAAEA,EAASA,EAAEA,EAASA;gBAE/CU,OAAOA,IAAIA,CAACA,QAAQA,CAACA,SAASA,CAACA,CAACA,GAACA,CAACA,EAAEA,GAAGA,IAAIA,CAACA,MAAMA,GAACA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,OAAOA,CAACA,GAACA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,KAAKA,EAAEA,CAACA,GAACA,CAACA,EAAEA,GAAGA,IAAIA,CAACA,OAAOA,GAACA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAACA,OAAOA,CAACA,GAACA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,EAAEA,CAACA;YAEjNA,CAACA;;YAEDV,wBAAAA,UAAcA,EAASA,EAAEA,EAASA,EAAEA,EAASA;gBAE5CW,OAAOA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,CAACA,CAACA,EAAEA,GAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,CAACA,GAACA,IAAIA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,GAACA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,GAACA,IAAIA,CAACA,OAAOA,EAAEA,EAAEA,CAACA;YACtGA,CAACA;;YAgCDX;;;;;cAVGA;YACHA;;;;;;cAMGA;YAEHA,oCAAoCA;4CACpCA;gBAECY,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAAEA;oBACxBA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,IAAIA,CAACA,aAAaA,CAACA,WAAWA;wBACtDA,IAAIA,CAACA,aAAaA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,CAACA;iBAC9GA,KAAMA;oBACNA,IAAIA,eAAeA,GAAgCA,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA;;oBAExHA,IAAIA,IAAIA,CAACA,WAAWA,IAAIA,IAAIA,CAACA,aAAaA,CAACA,iBAAiBA,IAAIA,IAAIA,IAAIA,eAAeA,CAACA,gBAAgBA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,iBAAiBA,CAACA,gBAAgBA;wBAC/JA,IAAIA,CAACA,aAAaA,CAACA,iBAAiBA,GAAGA,eAAeA,CAACA;iBACxDA;YACFA,CAACA;YACFZ,YAACA;QAADA,CAACA,IAAAxM;QA9jBDA,uBA8jBCA;IACFA,CAACA,6CAAA5jC;qCAAAA;AAADA,CAACA,uBAAA;ACtlBD,0CAA0C;AAE1C,IAAO,IAAI;AAgQV,CAhQD,UAAO,IAAI;KAAXA,UAAYA,MAAMA;QAEjBixC,eAAwBA,IAAIA,CAACA,IAAIA,CAACA,QAAQA;QAC1CA,sBAA6BA,IAAIA,CAACA,IAAIA,CAACA,eAAeA;;QAEtDA,UAAoBA,IAAIA,CAACA,IAAIA,CAACA,GAAGA;QACjCA,eAAwBA,IAAIA,CAACA,IAAIA,CAACA,QAAQA;QAC1CA,cAAuBA,IAAIA,CAACA,IAAIA,CAACA,OAAOA;QACxCA,eAAwBA,IAAIA,CAACA,IAAIA,CAACA,QAAQA;;QAE1CA;YAOCC;gBAJAC,KAAOA,YAAYA,GAAiBA,IAAIA,KAAKA,CAASA,CAACA,CAACA;gBACxDA,KAAOA,iBAAiBA,GAAWA,IAAIA,CAACA;gBAKvCA,IAAIA,CAACA,KAAKA,GAAGA,IAAIA,GAAGA,CAACA,CAACA;YACvBA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,KAAKA;gBAClBA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,IAAIA,IAAIA,CAACA,iBAAiBA;wBACzBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;;oBAE1BA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,IAAIA,CAACA,IAAIA,CAACA,gBAAgBA,CAAEA;wBAC3BA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA,CAACA,qBAAqBA,CAACA,CAACA;wBACpDA,IAAIA,CAACA,qBAAqBA,CAACA,CAACA;qBAC5BA;;oBAEDA,OAAOA,IAAIA,CAACA,gBAAgBA;gBAC7BA,CAACA;;;;AAAAA;YAEDA,uCAAAA;gBAECE,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,CAACA;gBAC9CA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,CAACA;gBAC3DA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA;;gBAE7BA,IAAIA,IAAIA,CAACA,gBAAgBA;oBACxBA,IAAIA,CAACA,qBAAqBA,CAACA,CAACA,CAACA;YAC/BA,CAACA;;YAEDF,iDAAAA;gBAECG,IAAIA,IAAIA,CAACA,gBAAgBA;oBACxBA,IAAIA,CAACA,gBAAgBA,CAACA,OAAOA,CAACA,CAACA,CAACA;;gBAEjCA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA;YAC7BA,CAACA;;YAEDH,4CAAAA,UAAoBA,QAAsBA;gBAEzCI,IAAIA,CAACA;gBACLA,IAAIA,GAAGA,GAAUA,QAAQA,CAACA,MAAMA;gBAChCA,IAAIA,IAAIA,EAASA,IAAIA,EAASA,IAAIA;gBAClCA,IAAIA,IAAIA,EAASA,IAAIA,EAASA,IAAIA;;gBAElCA,IAAIA,GAAGA,IAAIA,CAACA,CAAEA;oBACbA,IAAIA,CAACA,OAAOA,CAACA,CAACA;oBACdA,MAAOA;iBACPA;;gBAEDA,IAAIA,CAACA;;gBAELA,IAAIA,GAAGA,IAAIA,GAAGA,QAAQA,CAACA,CAACA,EAAEA,CAACA;gBAC3BA,IAAIA,GAAGA,IAAIA,GAAGA,QAAQA,CAACA,CAACA,EAAEA,CAACA;gBAC3BA,IAAIA,GAAGA,IAAIA,GAAGA,QAAQA,CAACA,CAACA,EAAEA,CAACA;;gBAE3BA,OAAOA,CAACA,GAAGA,GAAGA,CAAEA;oBACfA,CAACA,GAAGA,QAAQA,CAACA,CAACA,EAAEA,CAACA;oBACjBA,IAAIA,CAACA,GAAGA,IAAIA;wBACXA,IAAIA,GAAGA,CAACA;yBAAOA,IAAIA,CAACA,GAAGA,IAAIA;wBAC3BA,IAAIA,GAAGA,CAACA,CAACA;oBACVA,CAACA,GAAGA,QAAQA,CAACA,CAACA,EAAEA,CAACA;oBACjBA,IAAIA,CAACA,GAAGA,IAAIA;wBACXA,IAAIA,GAAGA,CAACA;yBAAOA,IAAIA,CAACA,GAAGA,IAAIA;wBAC3BA,IAAIA,GAAGA,CAACA,CAACA;oBACVA,CAACA,GAAGA,QAAQA,CAACA,CAACA,EAAEA,CAACA;oBACjBA,IAAIA,CAACA,GAAGA,IAAIA;wBACXA,IAAIA,GAAGA,CAACA;yBAAOA,IAAIA,CAACA,GAAGA,IAAIA;wBAC3BA,IAAIA,GAAGA,CAACA,CAACA;iBACVA;;gBAEDA,IAAIA,CAACA,YAAYA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACtDA,CAACA;;YAODJ;;;;cADGA;wDACHA,UAAoBA,QAAiBA;gBAEpCK,IAAIA,CAACA,EAASA,CAACA,EAASA,CAACA;gBACzBA,IAAIA,QAAQA,GAA0BA,QAAQA,CAACA,aAAaA;gBAC5DA,IAAIA,OAAOA;gBACXA,IAAIA,iBAAiBA;gBACrBA,IAAIA,WAAWA,GAAUA,QAAQA,CAACA,MAAMA;gBACxCA,IAAIA,IAAIA,EAASA,IAAIA,EAASA,IAAIA;gBAClCA,IAAIA,IAAIA,EAASA,IAAIA,EAASA,IAAIA;;gBAElCA,IAAIA,WAAWA,GAAGA,CAACA,CAAEA;oBACpBA,CAACA,GAAGA,CAACA;oBACLA,OAAOA,GAAGA,QAAQA,CAACA,CAACA,CAACA;oBACrBA,iBAAiBA,GAAGA,OAAOA,CAACA,oBAAoBA,CAACA,CAACA;oBAClDA,IAAIA,GAAGA,IAAIA,GAAGA,iBAAiBA,CAACA,CAACA,CAACA;oBAClCA,IAAIA,GAAGA,IAAIA,GAAGA,iBAAiBA,CAACA,CAACA,GAAGA,CAACA,CAACA;oBACtCA,IAAIA,GAAGA,IAAIA,GAAGA,iBAAiBA,CAACA,CAACA,GAAGA,CAACA,CAACA;;oBAEtCA,CAACA,GAAGA,WAAWA;oBACfA,OAAOA,CAACA,EAAEA,CAAEA;wBACXA,OAAOA,GAAGA,QAAQA,CAACA,CAACA,CAACA;wBACrBA,iBAAiBA,GAAGA,OAAOA,CAACA,oBAAoBA,CAACA,CAACA;wBAClDA,CAACA,GAAGA,iBAAiBA,CAACA,MAAMA;wBAC5BA,OAAOA,CAACA,EAAEA,CAAEA;4BACXA,CAACA,GAAGA,iBAAiBA,CAACA,CAACA,CAACA;4BACxBA,IAAIA,CAACA,GAAGA,IAAIA;gCACXA,IAAIA,GAAGA,CAACA;iCACJA,IAAIA,CAACA,GAAGA,IAAIA;gCAChBA,IAAIA,GAAGA,CAACA,CAACA;;4BAEVA,CAACA,GAAGA,iBAAiBA,CAACA,CAACA,GAAGA,CAACA,CAACA;;4BAE5BA,IAAIA,CAACA,GAAGA,IAAIA;gCACXA,IAAIA,GAAGA,CAACA;iCACJA,IAAIA,CAACA,GAAGA,IAAIA;gCAChBA,IAAIA,GAAGA,CAACA,CAACA;;4BAEVA,CAACA,GAAGA,iBAAiBA,CAACA,CAACA,GAAGA,CAACA,CAACA;;4BAE5BA,IAAIA,CAACA,GAAGA,IAAIA;gCACXA,IAAIA,GAAGA,CAACA;iCACJA,IAAIA,CAACA,GAAGA,IAAIA;gCAChBA,IAAIA,GAAGA,CAACA,CAACA;yBACVA;qBACDA;;oBAEDA,IAAIA,CAACA,YAAYA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;iBACrDA,KAAMA;oBACNA,IAAIA,CAACA,YAAYA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA;iBACnCA;YACFA,CAACA;;YAEDL,0CAAAA,UAAkBA,MAAeA,EAAEA,MAAaA;gBAE/CM,IAAIA,CAACA,YAAYA,CAACA,MAAMA,CAACA,CAACA,GAAGA,MAAMA,EAAEA,MAAMA,CAACA,CAACA,GAAGA,MAAMA,EAAEA,MAAMA,CAACA,CAACA,GAAGA,MAAMA,EAAEA,MAAMA,CAACA,CAACA,GAAGA,MAAMA,EAAEA,MAAMA,CAACA,CAACA,GAAGA,MAAMA,EAAEA,MAAMA,CAACA,CAACA,GAAGA,MAAMA,CAACA;YACpIA,CAACA;;YAEDN,4CAAAA,UAAoBA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA;gBAE/FO,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;gBACnBA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;gBACnBA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;gBACnBA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC9BA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC/BA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,GAAGA,IAAIA;gBAC9BA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA;;gBAE7BA,IAAIA,IAAIA,CAACA,gBAAgBA;oBACxBA,IAAIA,CAACA,qBAAqBA,CAACA,CAACA,CAACA;YAC/BA,CAACA;;YAEDP,2CAAAA,UAAmBA,MAAqBA,EAAEA,SAAgBA;gBAEzDQ,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;;YAEDR,wCAAAA,UAAgBA,MAAyBA;gBAExCS,OAAOA,IAAIA,CAACA,KAAKA,CAACA,UAAUA,CAACA,MAAMA,CAACA,IAAIA,CAACA;YAC1CA,CAACA;;YAEDT,qCAAAA;gBAECU,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;;YAEDV,+CAAAA,UAAuBA,QAAiBA,EAAEA,SAAkBA,EAAEA,YAAqBA;gBAElFW,OAAOA,CAACA,CAACA;YACVA,CAACA;;YAEDX,6CAAAA,UAAqBA,QAAiBA;gBAErCY,OAAOA,KAAKA;YACbA,CAACA;;YAEDZ,iDAAAA;gBAECa,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,KAAKA,CAACA,CAACA;gBAC9BA,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA;gBAClDA,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,KAAKA,CAACA,CAACA;gBAC9BA,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA;gBACjDA,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,KAAKA,CAACA,CAACA;gBAC9BA,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA;;gBAEjDA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA;gBAC3BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,YAAYA,CAACA,EAAEA,CAACA,GAAGA,IAAIA;gBAC5BA,IAAIA,CAACA,iBAAiBA,GAAGA,KAAKA;YAC/BA,CAACA;;YAEDb,qDAAAA;gBAECc,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;;YAEDd,qDAAAA;gBAECe,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;;YAEDf,+CAAAA,UAAuBA,KAAaA;gBAEnCgB,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;;YAEDhB,6CAAAA,UAAqBA,MAAyBA,EAAEA,MAAeA;gBAE9DiB,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;YACFjB,0BAACA;QAADA,CAACA,IAAAD;QArPDA,+CAqPCA;IACFA,CAACA,qCAAAjxC;6BAAAA;AAADA,CAACA,uBAAA;AClQD,0CAA0C;AAE1C,IAAO,IAAI;AA6DV,CA7DD,UAAO,IAAI;KAAXA,UAAYA,MAAMA;QAEjBixC;;YAICmB,oBAAYA,QAAuBA;gBAAvBC,uCAAAA,QAAQA,GAAWA,IAAIA;AAAAA,gBAElCA,WAAMA,KAAAA,CAACA;;gBAEPA,IAAIA,CAACA,SAASA,GAAGA,QAAQA;;gBAEzBA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,MAAMA,CAACA,iBAAiBA;gBAClFA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,SAASA,GAAEA,MAAMA,CAACA,iBAAiBA,GAACA,CAACA,GAAGA,MAAMA,CAACA,iBAAiBA;YACnHA,CAACA;YAGDD,WADWA;yCACXA;gBAECE,OAAOA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,IAAIA,CAACA,SAASA,CAACA;YAClDA,CAACA;;YAGDF,WADWA;yDACXA;gBAECG,+FAA+FA;gBAC/FA,OAAOA,IAAIA;YACZA,CAACA;;YAGDH,WADWA;+CACXA,UAAmBA,MAA+BA,EAAEA,SAAgBA;gBAEnEI,OAAOA,IAAIA,CAACA,SAASA;YACtBA,CAACA;;YAQDJ,eANaA;YACfA,oDAAoDA;YACpDA,KAAKA;YACLA,KAAKA;YAEHA,WAAWA;8CACXA,UAAkBA,MAAyBA,EAAEA,MAAaA;YAE1DK,CAACA;;YAGDL,WADWA;gDACXA,UAAoBA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA;YAEhGM,CAACA;;YAEDN,uCAAAA,UAAuBA,KAAuBA;gBAE7CO,OAAOA,IAAIA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,SAASA;YAC/CA,CAACA;;YAGDP,WADWA;iDACXA,UAAqBA,MAAqCA,EAAEA,MAAyBA;gBAEpFQ,IAAIA,CAACA,SAASA,GAAGA,MAAgCA,CAAEA,SAASA;YAC7DA,CAACA;YACFR,kBAACA;QAADA,CAACA,EA1D+BnB,8BAAkBA,EA0DjDA;QA1DDA,+BA0DCA;IACFA,CAACA,qCAAAjxC;6BAAAA;AAADA,CAACA,uBAAA;AC/DD,0CAA0C;AAE1C,IAAO,IAAI;AAwNV,CAxND,UAAO,IAAI;KAAXA,UAAYA,MAAMA;QAEjBixC;;YAQC4B;gBAECC,WAAMA,KAAAA,CAACA;gBAPRA,KAAQA,OAAOA,GAAUA,CAACA,CAACA;gBAC3BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;YAK5BA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;;;;AAAAA;YAEDA,mCAAAA;gBAECE,gBAAKA,CAACA,OAAOA,KAACA,KAAAA,CAACA;gBACfA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,CAACA;gBACjDA,IAAIA,CAACA,OAAOA,GAAGA,CAACA;YACjBA,CAACA;;YAEDF,uCAAAA,UAAmBA,MAA0BA,EAAEA,SAAgBA;gBAE9DG,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,SAASA,EAAEA,EAAEA,CAACA,CAAEA;oBAC1CA,IAAIA,KAAKA,GAAqBA,MAAMA,CAACA,CAACA,CAACA;oBACvCA,IAAIA,cAAcA,GAAUA,KAAKA,CAACA,CAACA,GAAGA,CAACA,GAAEA,CAACA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,OAAOA;oBACrEA,IAAIA,cAAcA,GAAUA,KAAKA,CAACA,CAACA,GAAGA,CAACA,GAAEA,CAACA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,OAAOA;oBACrEA,IAAIA,cAAcA,GAAUA,KAAKA,CAACA,CAACA,GAAGA,CAACA,GAAEA,CAACA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,OAAOA;oBACrEA,IAAIA,QAAQA,GAAUA,KAAKA,CAACA,CAACA,GAACA,CAAEA,IAAIA,CAACA,QAAQA,GAAGA,cAAcA,CAAEA,GAAGA,KAAKA,CAACA,CAACA,GAACA,CAAEA,IAAIA,CAACA,QAAQA,GAAGA,cAAcA,CAACA,GAAGA,KAAKA,CAACA,CAACA,GAACA,CAAEA,IAAIA,CAACA,QAAQA,GAAGA,cAAcA,CAAEA,GAAGA,KAAKA,CAACA,CAACA;oBACnKA,IAAIA,QAAQA,GAAGA,CAACA,CAAEA;wBACjBA,OAAOA,KAAKA;qBACZA;iBACDA;gBACDA,OAAOA,IAAIA;YACZA,CAACA;;YAEDH,sCAAAA,UAAkBA,MAAyBA,EAAEA,MAAaA;gBAEzDI,IAAIA,CAACA,QAAQA,GAAGA,MAAMA,CAACA,CAACA;gBACxBA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA,CAACA,CAACA;gBACxBA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA,CAACA,CAACA;gBACxBA,IAAIA,CAACA,OAAOA,GAAGA,MAAMA;gBACrBA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,MAAMA,GAACA,CAACA;gBAClEA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA;gBACrCA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA;gBACrCA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA;gBACrCA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA;;gBAE7BA,IAAIA,IAAIA,CAACA,gBAAgBA;oBACxBA,IAAIA,CAACA,qBAAqBA,CAACA,CAACA,CAACA;YAC/BA,CAACA;;YAEDJ,wCAAAA,UAAoBA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA;gBAE/FK,IAAIA,CAACA,QAAQA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;gBAChCA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;gBAChCA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;;gBAEhCA,IAAIA,CAACA,GAAUA,IAAIA,GAAGA,IAAIA;gBAC1BA,IAAIA,CAACA,GAAUA,IAAIA,GAAGA,IAAIA;gBAC1BA,IAAIA,CAACA,GAAUA,IAAIA,GAAGA,IAAIA;;gBAE1BA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA;;gBAEPA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA;;gBAEPA,IAAIA,CAACA,OAAOA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,CAACA;gBAC9BA,gBAAKA,CAACA,YAAYA,KAACA,OAAAA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACvDA,CAACA;;YAEDL,iCAAAA;gBAECM,IAAIA,KAAKA,GAAkBA,IAAIA,cAAcA,CAACA,CAACA;gBAC/CA,KAAKA,CAACA,UAAUA,CAACA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,CAACA,EAAEA,IAAIA,CAACA,OAAOA,CAACA;gBACnGA,OAAOA,KAAKA;YACbA,CAACA;;YAEDN,2CAAAA,UAAuBA,QAA2BA,EAAEA,SAA4BA,EAAEA,YAA+BA;gBAEhHO,IAAIA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,CAAEA;oBACjCA,OAAOA,CAACA;iBACRA;;gBAEDA,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,EAAEA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,EAAEA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1HA,IAAIA,EAAEA,GAAUA,SAASA,CAACA,CAACA,EAAEA,EAAEA,GAAUA,SAASA,CAACA,CAACA,EAAEA,EAAEA,GAAUA,SAASA,CAACA,CAACA;gBAC7EA,IAAIA,gBAAgBA;;gBAEpBA,IAAIA,CAACA,GAAUA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA;gBACpCA,IAAIA,CAACA,GAAUA,CAACA,GAACA,CAAEA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,CAAEA;gBAC1CA,IAAIA,CAACA,GAAUA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,GAAGA,IAAIA,CAACA,OAAOA,GAACA,IAAIA,CAACA,OAAOA;gBAChEA,IAAIA,GAAGA,GAAUA,CAACA,GAACA,CAACA,GAAGA,CAACA,GAACA,CAACA,GAACA,CAACA;;gBAE5BA,IAAIA,GAAGA,IAAIA,CAACA,CAAEA;oBACbA,IAAIA,OAAOA,GAAUA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA;oBACnCA,gBAAgBA,GAAGA,CAAEA,CAACA,CAACA,GAAGA,OAAOA,CAAEA,GAACA,CAAEA,CAACA,GAACA,CAACA,CAAEA;oBAC3CA,IAAIA,gBAAgBA,IAAIA,CAACA,CAAEA;wBAC1BA,YAAYA,CAACA,CAACA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBACzCA,YAAYA,CAACA,CAACA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBACzCA,YAAYA,CAACA,CAACA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBACzCA,YAAYA,CAACA,SAASA,CAACA,CAACA;;wBAExBA,OAAOA,gBAAgBA;qBACvBA;iBACDA;;gBAEDA,oBAAoBA;gBACpBA,OAAOA,CAACA,CAACA;YACVA,CAACA;;YAEDP,yCAAAA,UAAqBA,QAA2BA;gBAE/CQ,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1CA,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1CA,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1CA,IAAIA,QAAQA,GAAUA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,CAACA;gBACtDA,OAAOA,QAAQA,IAAIA,IAAIA,CAACA,OAAOA;YAChCA,CAACA;;YAEDR,iDAAAA;gBAECS,IAAIA,EAAEA,GAAUA,IAAIA,CAACA,OAAOA;gBAC5BA,IAAIA,EAAEA,IAAIA,CAACA;oBACVA,EAAEA,GAAGA,KAAKA,CAACA;;gBAEZA,IAAIA,SAASA,GAAuBA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA;gBACnEA,SAASA,CAACA,KAAKA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,EAAEA,EAAEA,EAAEA,EAAEA,EAAEA,CAACA;gBACpDA,SAASA,CAACA,QAAQA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,CAACA;YACzFA,CAACA;;YAIDT,0DAF0DA;6DAE1DA;gBAECU,OAAOA,IAAIA;YACZA,CAACA;;YAIDV,WADWA;uDACXA,UAAuBA,KAAuBA;gBAE7CW,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;gBACtBA,IAAIA,EAAEA,GAAUA,CAACA,GAACA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,GAACA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,GAACA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA,CAACA,CAACA;;gBAE7EA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA,CAACA;;gBAERA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA,CAACA;;gBAERA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA,CAACA;;gBAERA,IAAIA,EAAEA,GAAUA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAACA,IAAIA,CAACA,OAAOA;;gBAExCA,OAAOA,EAAEA,GAAGA,EAAEA,GAAEA,IAAIA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,KAAKA,GAAGA,EAAEA,GAAGA,CAACA,EAAEA,GAAEA,IAAIA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,SAASA;YAC7IA,CAACA;;YAEDX,yCAAAA,UAAqBA,MAAqCA,EAAEA,MAAyBA;gBAEpFY,IAAIA,MAAMA,GAA2DA,MAAMA;gBAC3EA,IAAIA,EAAEA,GAAUA,MAAMA,CAACA,QAAQA;gBAC/BA,IAAIA,EAAEA,GAAUA,MAAMA,CAACA,QAAQA;gBAC/BA,IAAIA,EAAEA,GAAUA,MAAMA,CAACA,QAAQA;gBAC/BA,IAAIA,GAAGA,GAAiBA,IAAIA,KAAKA,CAASA,EAAEA,CAACA;;gBAE7CA,MAAMA,CAACA,aAAaA,CAACA,GAAGA,CAACA;;gBAEzBA,IAAIA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACvFA,IAAIA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACvFA,IAAIA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;;gBAExFA,IAAIA,CAACA,QAAQA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,GAAGA;gBAC9CA,IAAIA,CAACA,QAAQA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,GAAGA;gBAC9CA,IAAIA,CAACA,QAAQA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,GAAGA;;gBAE9CA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;;gBAEZA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,OAAOA;gBAC7BA,IAAIA,EAAEA,GAAUA,GAAGA,GAAGA,GAAGA,GAAGA,GAAGA;gBAC/BA,IAAIA,EAAEA,GAAUA,GAAGA,GAAGA,GAAGA,GAAGA,GAAGA;gBAC/BA,IAAIA,EAAEA,GAAUA,GAAGA,GAAGA,GAAGA,GAAGA,GAAGA;gBAC/BA,IAAIA,CAACA,OAAOA,GAAGA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,CAACA;;gBAEjDA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,OAAOA,GAACA,CAACA;gBACxEA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,OAAOA;gBAC3CA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,OAAOA;gBAC3CA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,OAAOA;YAC5CA,CAACA;YACFZ,sBAACA;QAADA,CAACA,EArNmC5B,IAAIA,CAACA,MAAMA,CAACA,kBAAkBA,EAqNjEA;QArNDA,uCAqNCA;IACFA,CAACA,qCAAAjxC;6BAAAA;AAADA,CAACA,uBAAA;AC1ND,0CAA0C;AAE1C,IAAO,IAAI;AAuVV,CAvVD,UAAO,IAAI;KAAXA,UAAYA,MAAMA;QAGjBixC,uBAAuBA;QACvBA,4BAA4BA;QAC5BA,6BAA6BA;QAE7BA,sBAAsBA;QAEtBA,uBAAuBA;QAEvBA;;;UAGGA;QACHA;;YAYCyC;;cADGA;YACHA;gBAECC,WAAMA,KAAAA,CAACA;gBAZRA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,aAAaA,GAAUA,CAACA,CAACA;gBACjCA,KAAQA,aAAaA,GAAUA,CAACA,CAACA;gBACjCA,KAAQA,aAAaA,GAAUA,CAACA,CAACA;YAQjCA,CAACA;YAKDD;;cADGA;uDACHA;gBAECE,gBAAKA,CAACA,OAAOA,KAACA,KAAAA,CAACA;;gBAEfA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,CAACA;gBACjDA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,aAAaA,GAAGA,CAACA;YACjEA,CAACA;;YAKDF;;cADGA;2DACHA,UAAmBA,MAA0BA,EAAEA,SAAgBA;gBAE9DG,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,SAASA,EAAEA,EAAEA,CAACA,CAAEA;oBAE1CA,IAAIA,KAAKA,GAAqBA,MAAMA,CAACA,CAACA,CAACA;oBACvCA,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;oBACtBA,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;oBACtBA,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;oBACtBA,IAAIA,cAAcA,GAAUA,CAACA,GAAGA,CAACA,GAAEA,CAACA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,aAAaA;oBAC3EA,IAAIA,cAAcA,GAAUA,CAACA,GAAGA,CAACA,GAAEA,CAACA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,aAAaA;oBAC3EA,IAAIA,cAAcA,GAAUA,CAACA,GAAGA,CAACA,GAAEA,CAACA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,aAAaA;oBAC3EA,IAAIA,QAAQA,GAAUA,CAACA,GAACA,CAACA,IAAIA,CAACA,QAAQA,GAAGA,cAAcA,CAACA,GAAGA,CAACA,GAACA,CAACA,IAAIA,CAACA,QAAQA,GAAGA,cAAcA,CAACA,GAAGA,CAACA,GAACA,CAACA,IAAIA,CAACA,QAAQA,GAAGA,cAAcA,CAACA,GAAGA,KAAKA,CAACA,CAACA;;oBAE5IA,IAAIA,QAAQA,GAAGA,CAACA;wBACfA,OAAOA,KAAKA,CAACA;iBACdA;;gBAEDA,OAAOA,IAAIA;YACZA,CAACA;;YAEDH,mDAAAA,UAAuBA,QAA2BA,EAAEA,SAA4BA,EAAEA,YAA+BA;gBAGhHI,IAAIA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA;oBAC/BA,OAAOA,CAACA,CAACA;;gBAEVA,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1CA,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1CA,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;;gBAE1CA,IAAIA,EAAEA,GAAUA,SAASA,CAACA,CAACA;gBAC3BA,IAAIA,EAAEA,GAAUA,SAASA,CAACA,CAACA;gBAC3BA,IAAIA,EAAEA,GAAUA,SAASA,CAACA,CAACA;;gBAE3BA,IAAIA,EAAEA;gBACNA,IAAIA,EAAEA;gBACNA,IAAIA,EAAEA;gBACNA,IAAIA,gBAAgBA;;gBAEpBA,kBAAkBA;gBAClBA,IAAIA,UAAUA;gBACdA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;oBACXA,gBAAgBA,GAAGA,CAAEA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,CAAEA,GAACA,EAAEA;oBACjDA,IAAIA,gBAAgBA,GAAGA,CAACA,CAAEA;wBACzBA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,CAAEA;4BAC/GA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;;4BAElBA,UAAUA,GAAGA,IAAIA;yBACjBA;qBACDA;iBACDA;gBACDA,IAAIA,CAACA,UAAUA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;oBAC1BA,gBAAgBA,GAAGA,CAAEA,CAACA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,CAAEA,GAACA,EAAEA;oBAClDA,IAAIA,gBAAgBA,GAAGA,CAACA,CAAEA;wBACzBA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,CAAEA;4BAC/GA,YAAYA,CAACA,CAACA,GAAGA,CAACA,CAACA;4BACnBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,UAAUA,GAAGA,IAAIA;yBACjBA;qBACDA;iBACDA;gBACDA,IAAIA,CAACA,UAAUA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;oBAC1BA,gBAAgBA,GAAGA,CAAEA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,CAAEA,GAACA,EAAEA;oBACjDA,IAAIA,gBAAgBA,GAAGA,CAACA,CAAEA;wBACzBA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,CAAEA;4BAC/GA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,UAAUA,GAAGA,IAAIA;yBACjBA;qBACDA;iBACDA;gBACDA,IAAIA,CAACA,UAAUA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;oBAC1BA,gBAAgBA,GAAGA,CAAEA,CAACA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,CAAEA,GAACA,EAAEA;oBAClDA,IAAIA,gBAAgBA,GAAGA,CAACA,CAAEA;wBACzBA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,CAAEA;4BAC/GA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA,CAACA;4BACnBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,UAAUA,GAAGA,IAAIA;yBACjBA;qBACDA;iBACDA;gBACDA,IAAIA,CAACA,UAAUA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;oBAC1BA,gBAAgBA,GAAGA,CAAEA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,CAAEA,GAACA,EAAEA;oBACjDA,IAAIA,gBAAgBA,GAAGA,CAACA,CAAEA;wBACzBA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,CAAEA;4BAC/GA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,UAAUA,GAAGA,IAAIA;yBACjBA;qBACDA;iBACDA;gBACDA,IAAIA,CAACA,UAAUA,IAAIA,EAAEA,GAAGA,CAACA,CAAEA;oBAC1BA,gBAAgBA,GAAGA,CAAEA,CAACA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,CAAEA,GAACA,EAAEA;oBAClDA,IAAIA,gBAAgBA,GAAGA,CAACA,CAAEA;wBACzBA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,EAAEA,GAAGA,EAAEA,GAAGA,gBAAgBA,GAACA,EAAEA;wBAC7BA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,GAAGA,IAAIA,CAACA,aAAaA,CAAEA;4BAC/GA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA;4BAClBA,YAAYA,CAACA,CAACA,GAAGA,CAACA,CAACA;4BACnBA,UAAUA,GAAGA,IAAIA;yBACjBA;qBACDA;iBACDA;;gBAEDA,OAAOA,UAAUA,GAAEA,gBAAgBA,GAAGA,CAACA,CAACA;YACzCA,CAACA;;YAKDJ;;cADGA;6DACHA,UAAqBA,QAA2BA;gBAE/CK,IAAIA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,EAAEA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,EAAEA,EAAEA,GAAUA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1HA,OAAOA,EAAEA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,EAAEA,IAAIA,CAACA,IAAIA,CAACA,aAAaA;YAC/KA,CAACA;;YAKDL;;cADGA;4DACHA,UAAoBA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA,EAAEA,IAAWA;gBAG/FM,IAAIA,CAACA,QAAQA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;gBAChCA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;gBAChCA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;gBAChCA,IAAIA,CAACA,aAAaA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;gBACrCA,IAAIA,CAACA,aAAaA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;gBACrCA,IAAIA,CAACA,aAAaA,GAAGA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,GAACA,EAAEA;;gBAErCA,gBAAKA,CAACA,YAAYA,KAACA,OAAAA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAEvDA,CAACA;;YAKDN;;cADGA;qDACHA;gBAECO,IAAIA,KAAKA,GAA0BA,IAAIA,sBAAsBA,CAACA,CAACA;gBAC/DA,KAAKA,CAACA,YAAYA,CAACA,IAAIA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,EAAEA,IAAIA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,KAAKA,CAACA,CAACA,EAAEA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAACA;gBAChKA,OAAOA,KAAKA;YACbA,CAACA;;YAEDP;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;;;;AAAAA;YAQDA;;;;;cADGA;mEACHA,UAA2BA,KAAwBA,EAAEA,MAAgCA;gBAAhCQ,qCAAAA,MAAMA,GAAsBA,IAAIA;AAAAA,gBAEpFA,IAAIA,CAACA;;gBAELA,IAAIA,MAAMA,IAAIA,IAAIA;oBACjBA,MAAMA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA;;gBAEnCA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBACXA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA;oBACnBA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA;oBACtCA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAACA;gBACrCA,MAAMA,CAACA,CAACA,GAAGA,CAACA;;gBAEZA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBACXA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA;oBACvCA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,CAACA;gBACtCA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA;oBACnBA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,CAACA;gBAClBA,MAAMA,CAACA,CAACA,GAAGA,CAACA;;gBAEZA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBACXA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA;oBACnBA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,CAACA;gBAClBA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA;oBACtCA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAACA;gBACrCA,MAAMA,CAACA,CAACA,GAAGA,CAACA;;gBAEZA,OAAOA,MAAMA;YACdA,CAACA;;YAEDR,6DAAAA;gBAECS,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,GAACA,CAACA,EAAEA,KAAKA,CAACA;gBAC/EA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,GAACA,CAACA,EAAEA,KAAKA,CAACA;gBAC/EA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,GAACA,CAACA,EAAEA,KAAKA,CAACA;gBAC/EA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1DA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;gBAC1DA,IAAIA,CAACA,gBAAgBA,CAACA,SAASA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA;YAC3DA,CAACA;;YAEDT,yDAAAA;gBAECU,OAAOA,IAAIA;YACZA,CAACA;;YAEDV,mDAAAA,UAAuBA,KAAuBA;gBAE7CW,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;gBACtBA,IAAIA,CAACA,GAAUA,KAAKA,CAACA,CAACA;gBACtBA,IAAIA,cAAcA,GAAUA,CAACA,GAACA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,GAACA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,GAACA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA,CAACA,CAACA;;gBAEzFA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA,CAACA;;gBAERA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA,CAACA;;gBAERA,IAAIA,CAACA,GAAGA,CAACA;oBACRA,CAACA,GAAGA,CAACA,CAACA,CAACA;;gBAERA,IAAIA,WAAWA,GAAUA,CAACA,GAACA,IAAIA,CAACA,aAAaA,GAAGA,CAACA,GAACA,IAAIA,CAACA,aAAaA,GAAGA,CAACA,GAACA,IAAIA,CAACA,aAAaA;;gBAE3FA,OAAOA,cAAcA,GAAGA,WAAWA,GAAEA,IAAIA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,KAAKA,GAAGA,cAAcA,GAAGA,CAACA,WAAWA,GAAEA,IAAIA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,IAAIA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,mBAAmBA,CAACA,SAASA;YACvLA,CAACA;;YAEDX,iDAAAA,UAAqBA,MAAyBA,EAAEA,MAAyBA;gBAExEY,IAAIA,IAAIA,GAAmDA,MAAMA;gBACjEA,IAAIA,EAAEA,GAAUA,IAAIA,CAACA,QAAQA;gBAC7BA,IAAIA,EAAEA,GAAUA,IAAIA,CAACA,QAAQA;gBAC7BA,IAAIA,EAAEA,GAAUA,IAAIA,CAACA,QAAQA;gBAC7BA,IAAIA,GAAGA,GAAYA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,kBAAkBA;;gBAE7DA,MAAMA,CAACA,aAAaA,CAACA,GAAGA,CAACA;;gBAEzBA,IAAIA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACvFA,IAAIA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;gBACvFA,IAAIA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,CAACA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA,EAAEA,GAAGA,GAAUA,GAAGA,CAACA,EAAEA,CAACA;;gBAExFA,IAAIA,CAACA,QAAQA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,GAAGA;gBAC9CA,IAAIA,CAACA,QAAQA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,GAAGA;gBAC9CA,IAAIA,CAACA,QAAQA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,GAAGA;;gBAE9CA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,GAAGA,GAAGA,CAACA;oBACVA,GAAGA,GAAGA,CAACA,GAAGA,CAACA;gBACZA,IAAIA,EAAEA,GAAUA,IAAIA,CAACA,aAAaA;gBAClCA,IAAIA,EAAEA,GAAUA,IAAIA,CAACA,aAAaA;gBAClCA,IAAIA,EAAEA,GAAUA,IAAIA,CAACA,aAAaA;gBAClCA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA;gBAC7CA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA;gBAC7CA,IAAIA,CAACA,aAAaA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA,GAAGA,EAAEA,GAACA,GAAGA;;gBAE7CA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,aAAaA,GAACA,CAACA;gBAC9EA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,aAAaA;gBACjDA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,aAAaA;gBACjDA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,aAAaA;YAClDA,CAACA;YACFZ,8BAACA;QAADA,CAACA,EAvU2CzC,IAAIA,CAACA,MAAMA,CAACA,kBAAkBA,EAuUzEA;QAvUDA,uDAuUCA;IACFA,CAACA,qCAAAjxC;6BAAAA;AAADA,CAACA,uBAAA;ACzVD,0CAA0C;AAE1C,IAAO,IAAI;AAoEV,CApED,UAAO,IAAI;KAAXA,UAAYA,WAAWA;QAEtBu0C;YAMCC,wBAAYA,YAA2CA;gBAA3CC,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAHvDA,KAAOA,YAAYA,GAAWA,IAAIA,CAACA;gBAKlCA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;YACjCA,CAACA;YAEDD,yCAAAA;gBAECE,IAAIA,IAAIA,CAACA,cAAcA,IAAIA,IAAIA,CAACA,cAAcA,CAACA,mBAAmBA,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;oBACxFA,IAAIA,CAACA,cAAcA,CAACA,mBAAmBA,CAACA,cAAcA,CAACA,IAAIA,CAACA,cAAcA,CAACA;iBAC3EA;YACFA,CAACA;;YAEDF;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,cAAcA;gBAC3BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAA2BA;oBAElDA,IAAIA,IAAIA,CAACA,cAAcA,IAAIA,GAAGA,CAAEA;wBAC/BA,MAAOA;qBACPA;;oBAEDA,IAAIA,IAAIA,CAACA,cAAcA,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;wBAC7CA,IAAIA,CAACA,cAAcA,CAACA,YAAYA,GAAGA,IAAIA;qBACvCA;oBACDA,IAAIA,CAACA,cAAcA,GAAGA,GAAGA;;oBAEzBA,IAAIA,IAAIA,CAACA,cAAcA,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;wBAC7CA,IAAIA,CAACA,cAAcA,CAACA,YAAYA,GAAGA,IAAIA;qBACvCA;oBACDA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAjBAA;;YAmBDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;gBAEDA,KAAAA,UAAsBA,GAAWA;oBAEhCA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,GAAGA,CAAEA;wBAC7BA,MAAOA;qBACPA;oBACDA,IAAIA,CAACA,YAAYA,GAAGA,GAAGA;;oBAEvBA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;wBACxBA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;4BACxBA,IAAIA,CAACA,cAAcA,CAACA,YAAYA,GAAGA,IAAIA;yBACvCA,KAAMA;4BACNA,IAAIA,CAACA,cAAcA,CAACA,YAAYA,GAAGA,IAAIA;yBACvCA;qBACDA;gBACFA,CAACA;;;;AAhBAA;;YAkBDA,kCAAAA,UAAcA,WAA0BA;gBAA1BG,0CAAAA,WAAWA,GAAWA,IAAIA;AAAAA,gBAEvCA,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;YACFH,sBAACA;QAADA,CAACA,IAAAD;QAjEDA,4CAiECA;IACFA,CAACA,+CAAAv0C;uCAAAA;AAADA,CAACA,uBAAA;ACtED,0CAA0C;AAE1C,IAAO,IAAI;AAmFV,CAnFD,UAAO,IAAI;KAAXA,UAAYA,WAAWA;QAEtBu0C;;YAQCK,0BAAYA,YAA2CA,EAAEA,YAA2CA;gBAAxFC,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAEnGA,WAAMA,OAAAA,YAAYA,CAACA;gBANpBA,KAAOA,QAAQA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,CAACA,CAACA;;gBAQ1EA,IAAIA,CAACA,8BAA8BA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,qBAAqBA,CAACA;;gBAElGA,IAAIA,YAAYA,CAAEA;oBACjBA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;iBAChCA,KAAMA;oBACNA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;iBAC9CA;YACFA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,gBAAgBA;gBAC7BA,CAACA;gBAEDA,KAAAA,UAA0BA,GAAsBA;oBAE/CA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;wBACxBA,IAAIA,CAACA,cAAcA,CAACA,mBAAmBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,kBAAkBA,CAACA,sBAAsBA,EAAEA,IAAIA,CAACA,8BAA8BA,CAACA;wBACnIA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;qBAC1BA;;oBAEDA,IAAIA,CAACA,gBAAgBA,GAAGA,GAAGA;oBAC3BA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAXAA;;YAaDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,cAAcA;gBAC3BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAA2BA;oBAElDA,IAAIA,IAAIA,CAACA,gBAAgBA,CAAEA;wBAC1BA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA;qBAC5BA;;oBAEDA,IAAIA,IAAIA,CAACA,cAAcA,IAAIA,GAAGA,CAAEA;wBAC/BA,MAAOA;qBACPA;;oBAEDA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;wBACxBA,IAAIA,CAACA,cAAcA,CAACA,mBAAmBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,kBAAkBA,CAACA,sBAAsBA,EAAEA,IAAIA,CAACA,8BAA8BA,CAACA;qBACnIA;oBACDA,IAAIA,CAACA,cAAcA,GAAGA,GAAGA;;oBAEzBA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;wBACxBA,IAAIA,CAACA,cAAcA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,kBAAkBA,CAACA,sBAAsBA,EAAEA,IAAIA,CAACA,8BAA8BA,CAACA;qBAChIA;;oBAEDA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAtBAA;;YAyBDA,WADWA;gDACXA,UAAcA,WAA0BA;gBAA1BE,0CAAAA,WAAWA,GAAWA,IAAIA;AAAAA,gBAEvCA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;oBACxBA,IAAIA,IAAIA,CAACA,gBAAgBA;wBACxBA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA;yBAC7CA,IAAIA,IAAIA,CAACA,cAAcA;wBAC3BA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,CAACA,IAAIA,CAACA,cAAcA,CAACA,KAAKA,GAAEA,IAAIA,CAACA,cAAcA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA,QAAQA,CAACA,CAACA;iBACnIA;YACFA,CAACA;;YAEDF,mDAAAA,UAA8BA,KAAoCA;gBAEjEG,IAAIA,CAACA,aAAaA,CAACA,CAACA;YACrBA,CAACA;YAEFH,wBAACA;QAADA,CAACA,EAhFqCL,IAAIA,CAACA,WAAWA,CAACA,cAAcA,EAgFpEA;QAhFDA,gDAgFCA;IACFA,CAACA,+CAAAv0C;uCAAAA;AAADA,CAACA,uBAAA;ACrFD,0CAA0C;AAE1C,IAAO,IAAI;AA4TV,CA5TD,UAAO,IAAI;KAAXA,UAAYA,WAAWA;QAEtBu0C,iBAAwBA,IAAIA,CAACA,IAAIA,CAACA,UAAUA;QAC5CA,eAAuBA,IAAIA,CAACA,IAAIA,CAACA,QAAQA;;QAEzCA;;;;UAIGA;QACHA;;YA6NCS;;cADGA;YACHA,yBAAYA,YAA2CA,EAAEA,YAA2CA,EAAEA,QAAmBA,EAAEA,SAAqBA,EAAEA,QAAsBA,EAAEA,YAAyBA,EAAEA,YAAwBA,EAAEA,WAAyBA,EAAEA,WAAyBA,EAAEA,KAAgBA,EAAEA,OAAkBA,EAAEA,YAA4BA;gBAA3UC,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,uCAAAA,QAAQA,GAAUA,CAACA;AAAAA,gBAAEA,wCAAAA,SAASA,GAAUA,EAAEA;AAAAA,gBAAEA,uCAAAA,QAAQA,GAAUA,IAAIA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAAUA,CAACA,EAAEA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAAUA,EAAEA;AAAAA,gBAAEA,0CAAAA,WAAWA,GAAUA,IAAIA;AAAAA,gBAAEA,0CAAAA,WAAWA,GAAUA,IAAIA;AAAAA,gBAAEA,oCAAAA,KAAKA,GAAUA,CAACA;AAAAA,gBAAEA,sCAAAA,OAAOA,GAAUA,CAACA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAAWA,KAAKA;AAAAA,gBAEtVA,WAAMA,OAAAA,YAAYA,EAAEA,YAAYA,CAACA;gBA7NlCA,KAAOA,iBAAiBA,GAAUA,CAACA,CAACA;gBACpCA,KAAOA,kBAAkBA,GAAUA,EAAEA,CAACA;gBAEtCA,KAAQA,SAASA,GAAUA,CAACA,CAACA;gBAC7BA,KAAQA,UAAUA,GAAUA,EAAEA,CAACA;gBAC/BA,KAAQA,SAASA,GAAUA,IAAIA,CAACA;gBAChCA,KAAQA,YAAYA,GAAUA,CAACA,QAAQA,CAACA;gBACxCA,KAAQA,YAAYA,GAAUA,QAAQA,CAACA;gBACvCA,KAAQA,aAAaA,GAAUA,CAACA,EAAEA,CAACA;gBACnCA,KAAQA,aAAaA,GAAUA,EAAEA,CAACA;gBAClCA,KAAQA,MAAMA,GAAUA,CAACA,CAACA;gBAC1BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,aAAaA,GAAWA,KAAKA,CAACA;gBACtCA,KAAQA,OAAOA,GAAYA,IAAIA,QAAQA,CAACA,CAACA,CAACA;;gBAkNzCA,IAAIA,CAACA,QAAQA,GAAGA,QAAQA;gBACxBA,IAAIA,CAACA,QAAQA,GAAGA,QAAQA;gBACxBA,IAAIA,CAACA,SAASA,GAAGA,SAASA;gBAC1BA,IAAIA,CAACA,WAAWA,GAAGA,CAAEA,WAAWA,IAAIA,IAAIA,CAAEA,GAAEA,WAAWA,GAAGA,CAACA,QAAQA;gBACnEA,IAAIA,CAACA,WAAWA,GAAGA,CAAEA,WAAWA,IAAIA,IAAIA,CAAEA,GAAEA,WAAWA,GAAGA,QAAQA;gBAClEA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;gBAChCA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;gBAChCA,IAAIA,CAACA,KAAKA,GAAGA,KAAKA;gBAClBA,IAAIA,CAACA,OAAOA,GAAGA,OAAOA;gBACtBA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;;gBAEhCA,qDAAqDA;gBACrDA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,SAASA;gBACvCA,IAAIA,CAACA,kBAAkBA,GAAGA,IAAIA,CAACA,UAAUA;YAC1CA,CAACA;YAtNDD;gBAAAA;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,MAAMA;gBACnBA,CAACA;gBAEDA,KAAAA,UAAiBA,GAAUA;oBAE1BA,GAAGA,GAAGA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAEA,CAACA,GAAGA,GAAGA;;oBAExBA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,GAAGA;wBACrBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,MAAMA,GAAGA,GAAGA;;oBAEjBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAZAA;;YAiBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,SAASA;gBACtBA,CAACA;gBAEDA,KAAAA,UAAoBA,GAAUA;oBAE7BA,GAAGA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,YAAYA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,YAAYA,EAAEA,GAAGA,CAACA,CAACA;;oBAEnEA,IAAIA,IAAIA,CAACA,SAASA,IAAIA,GAAGA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,SAASA,GAAGA,GAAGA;;oBAEpBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAZAA;;YAiBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA;gBACvBA,CAACA;gBAEDA,KAAAA,UAAqBA,GAAUA;oBAE9BA,GAAGA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,GAAGA,CAACA,CAACA;;oBAErEA,IAAIA,IAAIA,CAACA,UAAUA,IAAIA,GAAGA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,UAAUA,GAAGA,GAAGA;;oBAErBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAZAA;;YAiBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,SAASA;gBACtBA,CAACA;gBAEDA,KAAAA,UAAoBA,GAAUA;oBAE7BA,IAAIA,IAAIA,CAACA,SAASA,IAAIA,GAAGA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,SAASA,GAAGA,GAAGA;;oBAEpBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAVAA;;YAiBDA;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;gBAEDA,KAAAA,UAAuBA,GAAUA;oBAEhCA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,GAAGA;wBAC3BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,YAAYA,GAAGA,GAAGA;;oBAEvBA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,YAAYA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,YAAYA,EAAEA,IAAIA,CAACA,SAASA,CAACA,CAACA;gBACzFA,CAACA;;;;AAVAA;;YAiBDA;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;gBAEDA,KAAAA,UAAuBA,GAAUA;oBAEhCA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,GAAGA;wBAC3BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,YAAYA,GAAGA,GAAGA;;oBAEvBA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,YAAYA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,YAAYA,EAAEA,IAAIA,CAACA,SAASA,CAACA,CAACA;gBACzFA,CAACA;;;;AAVAA;;YAiBDA;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAAUA;oBAEjCA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,GAAGA;wBAC5BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,aAAaA,GAAGA,GAAGA;;oBAExBA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAACA;gBAC7FA,CAACA;;;;AAVAA;;YAiBDA;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAAUA;oBAEjCA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,GAAGA;wBAC5BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,aAAaA,GAAGA,GAAGA;;oBAExBA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAACA;gBAC7FA,CAACA;;;;AAVAA;;YAiBDA;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,GAAUA;oBAE5BA,IAAIA,IAAIA,CAACA,QAAQA,IAAIA,GAAGA;wBACvBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,QAAQA,GAAGA,GAAGA;;oBAEnBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAAWA;oBAElCA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,GAAGA;wBAC5BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,aAAaA,GAAGA,GAAGA;;oBAExBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAVAA;;YA8CDA;;;;;;;;;;cADGA;+CACHA,UAAcA,WAA0BA;gBAA1BE,0CAAAA,WAAWA,GAAWA,IAAIA;AAAAA,gBAEvCA,IAAIA,IAAIA,CAACA,UAAUA,IAAIA,IAAIA,CAACA,kBAAkBA,IAAIA,IAAIA,CAACA,SAASA,IAAIA,IAAIA,CAACA,iBAAiBA,CAAEA;oBAE3FA,IAAIA,CAACA,aAAaA,CAACA,CAACA;;oBAEpBA,IAAIA,IAAIA,CAACA,aAAaA,CAAEA;wBACvBA,IAAIA,IAAIA,CAACA,SAASA,GAAGA,CAACA,CAAEA;4BACvBA,IAAIA,CAACA,iBAAiBA,IAAIA,IAAIA,CAACA,SAASA,GAACA,GAAGA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,SAASA;4BACnEA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,SAASA,GAACA,GAAGA,GAAGA,GAAGA;yBACzCA,KAAMA;4BACNA,IAAIA,CAACA,iBAAiBA,IAAIA,IAAIA,CAACA,SAASA,GAACA,GAAGA,GAAGA,IAAIA,CAACA,SAASA;4BAC7DA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,SAASA,GAACA,GAAGA;yBACnCA;;wBAEDA,OAAOA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,GAAGA,CAACA,GAAGA;4BACpDA,IAAIA,CAACA,iBAAiBA,IAAIA,GAAGA,CAACA;;wBAE/BA,OAAOA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,GAAGA,GAAGA;4BACnDA,IAAIA,CAACA,iBAAiBA,IAAIA,GAAGA,CAACA;qBAC/BA;;oBAEDA,IAAIA,WAAWA,CAAEA;wBAChBA,IAAIA,CAACA,kBAAkBA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,GAAGA,IAAIA,CAACA,kBAAkBA,CAACA,GAACA,CAACA,IAAIA,CAACA,KAAKA,GAAGA,CAACA,CAACA;wBACvFA,IAAIA,CAACA,iBAAiBA,IAAIA,CAACA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,CAACA,GAACA,CAACA,IAAIA,CAACA,KAAKA,GAAGA,CAACA,CAACA;qBACpFA,KAAMA;wBACNA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,SAASA;wBACvCA,IAAIA,CAACA,kBAAkBA,GAAGA,IAAIA,CAACA,UAAUA;qBACzCA;;oBAEDA,4CAA4CA;oBAC5CA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,kBAAkBA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,CAACA,GAAGA,IAAIA,CAACA,CAAEA;wBAC9HA,IAAIA,CAACA,kBAAkBA,GAAGA,IAAIA,CAACA,UAAUA;wBACzCA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,SAASA;qBACvCA;iBACDA;;gBAEDA,IAAIA,GAAGA,GAAYA,CAACA,IAAIA,CAACA,YAAYA,CAACA,GAAEA,IAAIA,CAACA,YAAYA,CAACA,SAASA,CAACA,QAAQA,GAAGA,CAACA,IAAIA,CAACA,cAAcA,CAACA,GAAEA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,CAACA,QAAQA;gBACzIA,IAAIA,CAACA,YAAYA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,iBAAiBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,kBAAkBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA;gBAC1KA,IAAIA,CAACA,YAAYA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,kBAAkBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA,GAACA,IAAIA,CAACA,OAAOA;gBACxHA,IAAIA,CAACA,YAAYA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,iBAAiBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,kBAAkBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA;;gBAE1KA,IAAIA,CAACA,OAAOA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,iBAAiBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,kBAAkBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA;gBAChJA,IAAIA,CAACA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,kBAAkBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA;gBAChFA,IAAIA,CAACA,OAAOA,CAACA,CAACA,GAAGA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,iBAAiBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,kBAAkBA,GAACA,UAAUA,CAACA,kBAAkBA,CAACA;;gBAEhJA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;oBACxBA,IAAIA,IAAIA,CAACA,gBAAgBA;wBACxBA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,CAACA,IAAIA,CAACA,gBAAgBA,EAAEA,IAAIA,CAACA,OAAOA,CAACA;yBAC3DA,IAAIA,IAAIA,CAACA,cAAcA;wBAC3BA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,CAACA,IAAIA,CAACA,cAAcA,CAACA,KAAKA,GAAEA,IAAIA,CAACA,cAAcA,CAACA,aAAaA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAACA;iBACjJA;YACFA,CAACA;YACFF,uBAACA;QAADA,CAACA,EAjToCT,IAAIA,CAACA,WAAWA,CAACA,gBAAgBA,EAiTrEA;QAjTDA,8CAiTCA;IACFA,CAACA,+CAAAv0C;uCAAAA;AAADA,CAACA,uBAAA;AC9TD,0CAA0C;AAE1C,IAAO,IAAI;AA8PV,CA9PD,UAAO,IAAI;KAAXA,UAAYA,WAAWA;QAGtBu0C;;;;UAIGA;QACHA;;YA6ICY;;cADGA;YACHA,+BAAYA,YAA2CA,EAAEA,QAAmBA,EAAEA,SAAqBA,EAAEA,YAAyBA,EAAEA,YAAwBA,EAAEA,KAAgBA,EAAEA,YAA4BA;gBAA5LC,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,uCAAAA,QAAQA,GAAUA,CAACA;AAAAA,gBAAEA,wCAAAA,SAASA,GAAUA,EAAEA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAAUA,CAACA,EAAEA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAAUA,EAAEA;AAAAA,gBAAEA,oCAAAA,KAAKA,GAAUA,CAACA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAAWA,KAAKA;AAAAA,gBAEvMA,WAAMA,OAAAA,YAAYA,CAACA;gBA7IpBA,KAAOA,iBAAiBA,GAAUA,CAACA,CAACA;gBACpCA,KAAQA,kBAAkBA,GAAUA,EAAEA,CAACA;gBAEvCA,KAAQA,SAASA,GAAUA,CAACA,CAACA;gBAC7BA,KAAQA,UAAUA,GAAUA,EAAEA,CAACA;gBAC/BA,KAAQA,aAAaA,GAAUA,CAACA,EAAEA,CAACA;gBACnCA,KAAQA,aAAaA,GAAUA,EAAEA,CAACA;gBAClCA,KAAQA,MAAMA,GAAUA,CAACA,CAACA;gBAC1BA,KAAQA,cAAcA,GAAUA,CAACA,CAACA;gBAClCA,KAAQA,gBAAgBA,GAAUA,CAACA,CAACA;gBACpCA,KAAQA,aAAaA,GAAWA,KAAKA,CAACA;gBAEtCA,KAAOA,GAAGA,GAAWA,KAAKA,CAACA;;gBAmI1BA,IAAIA,CAACA,QAAQA,GAAGA,QAAQA;gBACxBA,IAAIA,CAACA,SAASA,GAAGA,SAASA;gBAC1BA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;gBAChCA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;gBAChCA,IAAIA,CAACA,KAAKA,GAAGA,KAAKA;gBAClBA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;;gBAEhCA,qDAAqDA;gBACrDA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,SAASA;gBACvCA,IAAIA,CAACA,kBAAkBA,GAAGA,IAAIA,CAACA,UAAUA;YAC1CA,CAACA;YAnIDD;gBAAAA;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,MAAMA;gBACnBA,CAACA;gBAEDA,KAAAA,UAAiBA,GAAUA;oBAE1BA,GAAGA,GAAGA,CAACA,GAAGA,GAAGA,CAACA,CAACA,GAAEA,CAACA,GAAGA,GAAGA;;oBAExBA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,GAAGA;wBACrBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,MAAMA,GAAGA,GAAGA;;oBAEjBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAZAA;;YAiBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,SAASA;gBACtBA,CAACA;gBAEDA,KAAAA,UAAoBA,GAAUA;oBAE7BA,IAAIA,IAAIA,CAACA,SAASA,IAAIA,GAAGA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,SAASA,GAAGA,GAAGA;;oBAEpBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA;gBACvBA,CAACA;gBAEDA,KAAAA,UAAqBA,GAAUA;oBAE9BA,GAAGA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,GAAGA,CAACA,CAACA;;oBAErEA,IAAIA,IAAIA,CAACA,UAAUA,IAAIA,GAAGA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,UAAUA,GAAGA,GAAGA;;oBAErBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAZAA;;YAmBDA;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAAUA;oBAEjCA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,GAAGA;wBAC5BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,aAAaA,GAAGA,GAAGA;;oBAExBA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAACA;gBAC7FA,CAACA;;;;AAVAA;;YAiBDA;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAAUA;oBAEjCA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,GAAGA;wBAC5BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,aAAaA,GAAGA,GAAGA;;oBAExBA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAACA;gBAC7FA,CAACA;;;;AAVAA;;YAgBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;gBAEDA,KAAAA,UAAwBA,GAAWA;oBAElCA,IAAIA,IAAIA,CAACA,aAAaA,IAAIA,GAAGA;wBAC5BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,aAAaA,GAAGA,GAAGA;;oBAExBA,IAAIA,CAACA,aAAaA,CAACA,CAACA;gBACrBA,CAACA;;;;AAVAA;;YA0CDA;;;;;;;;;;cADGA;qDACHA,UAAcA,WAA0BA;gBAA1BE,0CAAAA,WAAWA,GAAWA,IAAIA;AAAAA,gBAEvCA,IAAIA,IAAIA,CAACA,UAAUA,IAAIA,IAAIA,CAACA,kBAAkBA,IAAIA,IAAIA,CAACA,SAASA,IAAIA,IAAIA,CAACA,iBAAiBA,CAAEA;oBAE3FA,IAAIA,CAACA,aAAaA,CAACA,CAACA;;oBAEpBA,IAAIA,IAAIA,CAACA,aAAaA,CAAEA;wBACvBA,IAAIA,IAAIA,CAACA,SAASA,GAAGA,CAACA,CAAEA;4BACvBA,IAAIA,CAACA,iBAAiBA,IAAIA,IAAIA,CAACA,SAASA,GAACA,GAAGA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,SAASA;4BACnEA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,SAASA,GAACA,GAAGA,GAAGA,GAAGA;yBACzCA,KAAMA;4BACNA,IAAIA,CAACA,iBAAiBA,IAAIA,IAAIA,CAACA,SAASA,GAACA,GAAGA,GAAGA,IAAIA,CAACA,SAASA;4BAC7DA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,SAASA,GAACA,GAAGA;yBACnCA;;wBAEDA,OAAOA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,GAAGA,CAACA,GAAGA;4BACpDA,IAAIA,CAACA,iBAAiBA,IAAIA,GAAGA,CAACA;;wBAE/BA,OAAOA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,GAAGA,GAAGA;4BACnDA,IAAIA,CAACA,iBAAiBA,IAAIA,GAAGA,CAACA;qBAC/BA;;oBAEDA,IAAIA,WAAWA,CAAEA;wBAChBA,IAAIA,CAACA,kBAAkBA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,GAAGA,IAAIA,CAACA,kBAAkBA,CAACA,GAACA,CAACA,IAAIA,CAACA,KAAKA,GAAGA,CAACA,CAACA;wBACvFA,IAAIA,CAACA,iBAAiBA,IAAIA,CAACA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,CAACA,GAACA,CAACA,IAAIA,CAACA,KAAKA,GAAGA,CAACA,CAACA;qBACpFA,KAAMA;wBACNA,IAAIA,CAACA,kBAAkBA,GAAGA,IAAIA,CAACA,UAAUA;wBACzCA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,SAASA;qBACvCA;;oBAEDA,4CAA4CA;oBAC5CA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,kBAAkBA,CAACA,GAAGA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA,CAACA,GAAGA,IAAIA,CAACA,CAAEA;wBAC9HA,IAAIA,CAACA,kBAAkBA,GAAGA,IAAIA,CAACA,UAAUA;wBACzCA,IAAIA,CAACA,iBAAiBA,GAAGA,IAAIA,CAACA,SAASA;qBACvCA;iBACDA;;gBAEDA,IAAIA,CAACA,YAAYA,CAACA,SAASA,GAAGA,IAAIA,CAACA,kBAAkBA;gBACrDA,IAAIA,CAACA,YAAYA,CAACA,SAASA,GAAGA,IAAIA,CAACA,iBAAiBA;;gBAEpDA,IAAIA,IAAIA,CAACA,cAAcA,CAAEA;oBACxBA,IAAIA,IAAIA,CAACA,GAAGA,CAAEA;wBACbA,IAAIA,CAACA,YAAYA,CAACA,SAASA,CAACA,WAAWA,CAACA,IAAIA,CAACA,cAAcA,CAACA;qBAC5DA,KAAMA;wBACNA,IAAIA,CAACA,YAAYA,CAACA,CAACA,IAAIA,IAAIA,CAACA,cAAcA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,SAASA,GAACA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,kBAAkBA,CAACA;wBAC3GA,IAAIA,CAACA,YAAYA,CAACA,CAACA,IAAIA,IAAIA,CAACA,cAAcA,GAACA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,SAASA,GAACA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,kBAAkBA,CAACA;qBAC3GA;oBACDA,IAAIA,CAACA,cAAcA,GAAGA,CAACA;iBACvBA;;gBAEDA,IAAIA,IAAIA,CAACA,gBAAgBA,CAAEA;oBAC1BA,IAAIA,CAACA,YAAYA,CAACA,SAASA,CAACA,SAASA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA;oBAC5DA,IAAIA,CAACA,gBAAgBA,GAAGA,CAACA;iBACzBA;YAEFA,CAACA;;YAEDF,gDAAAA,UAAqBA,GAAUA;gBAE9BG,IAAIA,GAAGA,IAAIA,CAACA;oBACXA,MAAOA,CAAAA;;gBAERA,IAAIA,CAACA,cAAcA,IAAIA,GAAGA;;gBAE1BA,IAAIA,CAACA,aAAaA,CAACA,CAACA;YACrBA,CAACA;;YAEDH,kDAAAA,UAAuBA,GAAUA;gBAEhCI,IAAIA,GAAGA,IAAIA,CAACA;oBACXA,MAAOA,CAAAA;;gBAERA,IAAIA,CAACA,gBAAgBA,IAAIA,GAAGA;;gBAE5BA,IAAIA,CAACA,aAAaA,CAACA,CAACA;YACrBA,CAACA;YAEFJ,6BAACA;QAADA,CAACA,EArP0CZ,IAAIA,CAACA,WAAWA,CAACA,cAAcA,EAqPzEA;QArPDA,0DAqPCA;IACFA,CAACA,+CAAAv0C;uCAAAA;AAADA,CAACA,uBAAA;AChQD,0CAA0C;AAE1C,IAAO,IAAI;AA2BV,CA3BD,UAAO,IAAI;KAAXA,UAAYA,WAAWA;QAGtBu0C;;;;;UAKGA;QACHA;;YAECiB,0BAAYA,YAA2CA,EAAEA,YAA2CA,EAAEA,SAAqBA,EAAEA,QAAqBA;gBAAtIC,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,wCAAAA,SAASA,GAAUA,EAAEA;AAAAA,gBAAEA,uCAAAA,QAAQA,GAAUA,GAAGA;AAAAA,gBAEjJA,WAAMA,OAAAA,YAAYA,EAAEA,YAAYA,EAAEA,CAACA,EAAEA,SAASA,EAAEA,QAAQA,CAACA;YAC1DA,CAACA;YAEDD,oCAAAA,UAAcA,WAA0BA;gBAA1BE,0CAAAA,WAAWA,GAAWA,IAAIA;AAAAA,gBAEvCA,WAAWA,GAAGA,WAAWA,EAAEA,2BAA2BA;;gBAEtDA,IAAIA,CAACA,IAAIA,CAACA,YAAYA;oBACrBA,MAAOA,CAAAA;;gBAERA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,SAASA,GAAGA,GAAGA;gBACnDA,gBAAKA,CAACA,MAAMA,KAACA,KAAAA,CAACA;YACfA,CAACA;YACFF,wBAACA;QAADA,CAACA,EAjBqCjB,IAAIA,CAACA,WAAWA,CAACA,eAAeA,EAiBrEA;QAjBDA,gDAiBCA;IACFA,CAACA,+CAAAv0C;uCAAAA;AAADA,CAACA,uBAAA;AC7BD,0CAA0C;AAE1C,IAAO,IAAI;AAwFV,CAxFD,UAAO,IAAI;KAAXA,UAAYA,WAAWA;QAGtBu0C;;;;UAIGA;QACHA;;YA+BCoB,0BAAYA,YAA2CA,EAAEA,YAA2CA,EAAEA,SAAoBA,EAAEA,IAAgBA,EAAEA,OAAkBA;gBAApJC,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,2CAAAA,YAAYA,GAA2BA,IAAIA;AAAAA,gBAAEA,wCAAAA,SAASA,GAAUA,CAACA;AAAAA,gBAAEA,mCAAAA,IAAIA,GAAUA,EAAEA;AAAAA,gBAAEA,sCAAAA,OAAOA,GAAUA,CAACA;AAAAA,gBAE/JA,WAAMA,OAAAA,YAAYA,EAAEA,YAAYA,CAACA;gBAPlCA;;kBAEGA;gBACHA,KAAOA,cAAcA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,IAAIA,CAACA,CAACA;;gBAMhFA,IAAIA,CAACA,SAASA,GAAGA,SAASA;gBAC1BA,IAAIA,CAACA,OAAOA,GAAGA,OAAOA;gBACtBA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;;gBAEhBA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBACzCA,IAAIA,CAACA,GAAGA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBACnCA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBACxCA,IAAIA,CAACA,MAAMA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBACtCA,IAAIA,CAACA,aAAaA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBAC7CA,IAAIA,CAACA,gBAAgBA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;YAEjDA,CAACA;YAEDD,oCAAAA,UAAcA,WAA0BA;gBAA1BE,0CAAAA,WAAWA,GAAWA,IAAIA;AAAAA,gBAEvCA,IAAIA,IAAIA;;gBAERA,IAAIA,CAACA,IAAIA,CAACA,cAAcA,IAAIA,CAACA,IAAIA,CAACA,cAAcA;oBAC/CA,MAAOA,CAAAA;;gBAERA,IAAIA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA,QAAQA,CAACA,oBAAoBA,CAACA,IAAIA,CAACA,cAAcA,CAACA;gBACvFA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;gBACxDA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;gBACxDA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;;gBAExDA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA,QAAQA,CAACA,GAAGA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA;gBACjFA,IAAIA,CAACA,QAAQA,CAACA,OAAOA,CAACA,CAACA,IAAIA,CAACA,SAASA,CAACA;;gBAEtCA,IAAIA,CAACA,GAAGA,CAACA,QAAQA,CAACA,IAAIA,CAACA,SAASA,CAACA;gBACjCA,IAAIA,CAACA,GAAGA,CAACA,OAAOA,CAACA,IAAIA,CAACA,OAAOA,CAACA;;gBAE9BA,IAAIA,CAACA,MAAMA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,CAACA;gBAC5CA,IAAIA,CAACA,MAAMA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,CAACA;gBAC5CA,IAAIA,CAACA,MAAMA,CAACA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,CAACA;;gBAE5CA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,MAAMA,CAACA;gBACxCA,IAAIA,CAACA,aAAaA,CAACA,OAAOA,CAACA,CAACA,GAACA,IAAIA,CAACA,IAAIA,CAACA;;gBAEvCA,IAAIA,CAACA,SAASA,CAACA,WAAWA,CAACA,IAAIA,CAACA,aAAaA,CAACA;;gBAE9CA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA,QAAQA,CAACA,GAAGA,CAACA,IAAIA,CAACA,SAASA,CAACA;;gBAEnGA,gBAAKA,CAACA,MAAMA,KAACA,KAAAA,CAACA;YACfA,CAACA;YACFF,wBAACA;QAADA,CAACA,EA/EqCpB,iCAAgBA,EA+ErDA;QA/EDA,gDA+ECA;IACFA,CAACA,+CAAAv0C;uCAAAA;AAADA,CAACA,uBAAA;AC1FD,yCAAyC;ACAzC,yCAAyC;AAEzC,IAAO,IAAI;AAkTV,CAlTD,UAAO,IAAI;KAAXA,UAAYA,SAASA;QAEpB81C,gBAAuBA,IAAIA,CAACA,IAAIA,CAACA,SAASA;QAC1CA,oBAA0BA,IAAIA,CAACA,MAAMA,CAACA,aAAaA;QACnDA,eAAuBA,IAAIA,CAACA,IAAIA,CAACA,QAAQA;QACzCA,gBAAuBA,IAAIA,CAACA,OAAOA,CAACA,SAASA;QAC7CA,eAAuBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAI1CA;;;;;;;;;;UAUGA;QACHA;;YAwJCC;;cADGA;YACHA,yBAAYA,OAA0CA,EAAEA,MAAqBA,EAAEA,MAAsBA;gBAAzFC,sCAAAA,OAAOA,GAA+BA,IAAIA;AAAAA,gBAAEA,qCAAAA,MAAMA,GAAWA,IAAIA;AAAAA,gBAAEA,qCAAAA,MAAMA,GAAWA,KAAKA;AAAAA,gBAEpGA,WAAMA,KAAAA,CAACA;gBAxIRA;;;;kBAIGA;gBACHA,KAAOA,eAAeA,GAAUA,CAACA,CAACA;gBASlCA,KAAQA,UAAUA,GAAWA,KAAKA,CAACA;gBAOnCA,KAAOA,WAAWA,GAAUA,SAASA,CAACA,MAAMA,CAACA;gBAI7CA,KAAQA,OAAOA,GAAWA,KAAKA,CAACA;gBAChCA,KAAQA,OAAOA,GAAWA,IAAIA,CAACA;;gBAgH9BA,IAAIA,CAACA,YAAYA,GAAGA,MAAMA,CAACA,IAAIA,CAACA,EAAEA,CAACA;;gBAEnCA,IAAIA,CAACA,OAAOA,GAAGA,OAAOA;;gBAEtBA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;gBACpBA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;;gBAEpBA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,KAAKA,CAAiBA,CAACA;YAG3CA,CAACA;YApHDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,aAAaA;gBAC1BA,CAACA;;;;AAAAA;YAEDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,WAAWA;gBACxBA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAaA;oBAE9BA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;oBAEpBA,MAAMA;gBACPA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAaA;oBAE9BA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;oBAEpBA,MAAMA;gBACPA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAiCA;oBAEnDA,IAAIA,IAAIA,CAACA,QAAQA,IAAIA,KAAKA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;;oBAErBA,IAAIA,KAAKA,YAAYA,IAAIA,CAACA,QAAQA,CAACA,YAAYA,CAAEA;wBAChDA,IAAIA,CAACA,aAAaA,GAAGA,KAAmCA,CAAEA,gBAAgBA;;wBAE1EA,IAAIA,IAAIA,GAAoBA,QAAQA,CAACA,aAAaA,CAACA,OAAOA,CAACA;wBAC3DA,IAAIA,CAACA,IAAIA,GAAGA,UAAUA;wBACtBA,QAAQA,CAACA,oBAAoBA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,WAAWA,CAACA,IAAIA,CAACA;;wBAE1DA,IAAIA,KAAKA,GAAiCA,QAAQA,CAACA,WAAWA,CAACA,QAAQA,CAACA,WAAWA,CAACA,MAAMA,GAAGA,CAACA,CAACA;wBAC/FA,KAAKA,CAACA,UAAUA,CAACA,WAAWA,GAAGA,IAAIA,CAACA,EAAEA,GAAGA,KAAKA,EAAEA,CAACA,CAACA;wBAClDA,IAAIA,KAAKA,GAAwBA,KAAqBA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAAEA,KAAKA;;wBAEzEA,KAAKA,CAACA,eAAeA,GAAGA,MAAMA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,GAAGA,GAAGA,GAAGA;wBAC7DA,KAAKA,CAACA,cAAcA,GAAGA,WAAWA;wBAClCA,KAAKA,CAACA,QAAQA,GAAGA,UAAUA;wBAC3BA,KAAKA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,GAAGA,IAAIA;wBAC7CA,KAAKA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,MAAMA,GAAGA,IAAIA;wBAC/CA,KAAKA,CAACA,eAAeA,GAClBA,KAAKA,CAACA,0BAA0BA,CAACA,GACjCA,KAAKA,CAACA,uBAAuBA,CAACA,GAC9BA,KAAKA,CAACA,qBAAqBA,CAACA,GAC5BA,KAAKA,CAACA,sBAAsBA,CAACA,GAAGA,OAAOA;;wBAE1CA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,MAAMA;wBACxCA,IAAIA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,KAAKA;;wBAEtCA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;qBACxBA;gBACFA,CAACA;;;;AApCAA;;YA0CDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,MAAMA;gBACnBA,CAACA;;;;AAAAA;YAwBDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,SAASA,CAACA,QAAQA;gBAC1BA,CAACA;;;;AAAAA;YAMDA;;;cADGA;gDACHA;gBAECE,MAAMA;YAEPA,CAACA;;YAKDF;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,UAAUA;gBACvBA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAaA;oBAEjCA,IAAIA,CAACA,UAAUA,GAAGA,KAAKA;oBAEvBA,MAAMA;gBAEPA,CAACA;;;;AARAA;;YAoBDA;gBAAAA;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,WAAWA;gBACxBA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAYA;oBAEhCA,IAAIA,CAACA,WAAWA,GAAGA,KAAKA;oBAExBA,MAAMA;gBACPA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,WAAWA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,SAASA,CAACA,MAAMA;gBAEtDA,CAACA;;;;AAAAA;YAcDA,EAZEA;YACFA,sBAAsBA;YACtBA,EAAEA;YACFA;;;;;;;;cAQGA;kDACHA,UAAiBA,KAA8BA;gBAE9CG,IAAIA,KAAKA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,OAAOA,CAACA,KAAKA,CAACA;;gBAE9CA,IAAIA,KAAKA,IAAIA,CAACA,CAACA;oBACdA,IAAIA,CAACA,OAAOA,CAACA,IAAIA,CAACA,KAAKA,CAACA,CAACA;YAC3BA,CAACA;;YAQDH;;;;;cADGA;qDACHA,UAAoBA,KAA8BA;gBAEjDI,IAAIA,KAAKA,GAAUA,IAAIA,CAACA,OAAOA,CAACA,OAAOA,CAACA,KAAKA,CAACA;;gBAE9CA,IAAIA,KAAKA,IAAIA,CAACA,CAACA;oBACdA,IAAIA,CAACA,OAAOA,CAACA,MAAMA,CAACA,KAAKA,EAAEA,CAACA,CAACA,CAACA;YAChCA,CAACA;;YAODJ;gBAAAA;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;;;;AAAAA;YAEDA,8CAAAA;gBAECK,IAAIA,CAACA,IAAIA,CAACA,YAAYA;oBACrBA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,aAAaA,CAACA,IAAIA,CAACA,MAAMA,CAACA,aAAaA,CAACA,YAAYA,CAACA,CAACA;;gBAE3FA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,YAAYA,CAACA;YACtCA,CAACA;YACFL,uBAACA;QAADA,CAACA,EA5RoCD,IAAIA,CAACA,OAAOA,CAACA,cAAcA,EA4R/DA;QA5RDA,4CA4RCA;IACFA,CAACA,2CAAA91C;mCAAAA;AAADA,CAACA,uBAAA;ACpTD,yCAAyC;AAEzC,IAAO,IAAI;AAsDV,CAtDD,UAAO,IAAI;KAAXA,UAAYA,OAAOA;QAElBq2C,oBAAyBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA;;QACjDA,iDAAiDA;QAChDA,0BAA8BA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA;;QAE7DA;;UAEGA;QACHA;;YASCC,wEALsEA;YAEtEA;;cAEGA;YACHA;gBAECC,WAAMA,KAAAA,CAACA;gBATRA,KAAOA,SAASA,GAAwBA,IAAIA,KAAKA,CAAgBA,CAACA,CAACA;YAUnEA,CAACA;YAKDD;;cADGA;gDACHA;gBAECE,IAAIA,MAAMA,GAAiBA,IAAIA,CAACA,cAAcA,CAACA,CAACA;;gBAEhDA,IAAIA,CAACA,SAASA,CAACA,IAAIA,CAACA,MAAMA,CAACA;;gBAE3BA,OAAOA,MAAMA;YACdA,CAACA;;YAWDF,0CATwCA;YAC1CA,KAAKA;YACLA,yDAAyDA;YACzDA,EAAEA;YACFA,sCAAsCA;YACtCA,EAAEA;YACFA,mBAAmBA;YACnBA,KAAKA;kDAEHA;gBAECG,MAAMA,IAAIA,mBAAmBA,CAACA,CAACA;YAChCA,CAACA;;YAEDH,kCAAAA;gBAECI,kCAAkCA;YACnCA,CAACA;YACFJ,kBAACA;QAADA,CAACA,EA5C+BD,IAAIA,CAACA,OAAOA,CAACA,cAAcA,EA4C1DA;QA5CDA,gCA4CCA;IACFA,CAACA,uCAAAr2C;+BAAAA;AAADA,CAACA,uBAAA;ACxDD,4CAA4C;AAE5C,IAAO,IAAI;AAsCV,CAtCD,UAAO,IAAI;KAAXA,UAAYA,SAASA;QAGpB22C;;UAEGA;QACHA;;YAYCC;;cADGA;YACHA;gBAECC,WAAMA,KAAAA,CAACA;YACRA,CAACA;YAXDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAaDA;;cADGA;kDACHA;YAEAE,CAACA;;YAKDF;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA,CAACA,SAASA,CAACA,cAAcA;gBAC7CA,CAACA;;;;AAAAA,YACFA,yBAACA;QAADA,CAACA,EA/BsCD,IAAIA,CAACA,OAAOA,CAACA,cAAcA,EA+BjEA;QA/BDA,gDA+BCA;IACFA,CAACA,2CAAA32C;mCAAAA;AAADA,CAACA,uBAAA;ACxCD,yCAAyC;ACAzC,yCAAyC;ACAzC,yCAAyC;AAEzC,IAAO,IAAI;AAgKV,CAhKD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C;;YAWCC;gBAECC,WAAMA,KAAAA,CAACA;gBAXRA,KAAOA,QAAQA,GAAUA,IAAIA,CAACA,EAAEA,CAACA,sBAAsBA,CAACA,IAAIA,CAACA;gBAC7DA,KAAOA,YAAYA,GAAWA,KAAKA,CAACA;;gBAYnCA,IAAIA,CAACA,SAASA,GAAGA,IAAIA,KAAKA,CAAsBA,CAACA,CAACA,EAACA,0CAA0CA;gBAC7FA,IAAIA,CAACA,MAAMA,GAAGA,IAAIA,KAAKA,CAAoBA,CAACA,CAACA,EAACA,qCAAqCA;YACpFA,CAACA;YAMDD;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA,CAACA,SAASA,CAACA,OAAOA;gBACtCA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;;;;AAAAA;YAEDA,kDAAAA,UAA4BA,OAAyBA;gBAEpDE,IAAIA,YAAYA,GAAUA,OAAOA,CAACA,cAAcA;;gBAEhDA,IAAIA,GAAGA,GAAuBA,IAAIA,CAACA,SAASA,CAACA,YAAYA,CAACA;;gBAE1DA,IAAIA,OAAOA,GAAqBA,OAAOA,CAACA,SAASA;;gBAEjDA,IAAIA,CAACA,GAAGA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,IAAIA,OAAOA,CAAEA;oBAEjDA,IAAIA,CAACA,SAASA,CAACA,YAAYA,CAACA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,cAAcA,CAACA,OAAOA,CAACA;oBACjEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,GAAGA,OAAOA;oBACnCA,IAAIA,CAACA,cAAcA,CAACA,GAAGA,CAACA,EAACA,iBAAiBA;iBAE1CA;;gBAEDA,OAAOA,GAAGA;YACXA,CAACA;;YAODF;;;;cADGA;wDACHA,UAAsBA,OAA2BA;gBAEhDG,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;;YAQDH;;;;;cADGA;kDACHA,UAAgBA,KAAYA,EAAEA,MAAaA;gBAE1CI,IAAIA,IAAIA,CAACA,OAAOA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,QAAQA,IAAIA,MAAMA;oBACnDA,IAAIA,CAACA,eAAeA,CAACA,CAACA,CAACA;;gBAExBA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;gBACpBA,IAAIA,CAACA,QAAQA,GAAGA,MAAMA;YAEvBA,CAACA;;YAKDJ;;cADGA;2DACHA;gBAECK,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,CAACA,EAAEA,EAAEA,CAACA;oBAChCA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;YACxBA,CAACA;;YAMDL;;;cADGA;yDACHA;gBAECM,IAAIA,GAAGA;gBACPA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,CAACA,EAAEA,EAAEA,CAACA,CAAEA;oBAElCA,GAAGA,GAAGA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA;;oBAEvBA,IAAIA,GAAGA,CAAEA;wBACRA,GAAGA,CAACA,OAAOA,CAACA,CAACA;;wBAEbA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA,GAAGA,IAAIA;wBACxBA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,GAAGA,IAAIA;qBACrBA;iBACDA;YACFA,CAACA;;YAODN;;;;cADGA;wDACHA,UAAsBA,OAAyBA;gBAE9CO,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,mBAAmBA,CAACA,CAACA;YAC5CA,CAACA;;YAKDP;;cADGA;iDACHA;gBAECQ,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,CAACA,EAAEA,EAAEA,CAACA;oBAChCA,IAAIA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA;wBACpBA,IAAIA,CAACA,SAASA,CAACA,CAACA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA;YAC/BA,CAACA;YACFR,wBAACA;QAADA,CAACA,EA7JqCD,IAAIA,CAACA,OAAOA,CAACA,cAAcA,EA6JhEA;QA7JDA,6CA6JCA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;AClKD,yCAAyC;AAEzC,IAAO,IAAI;AAcV,CAdD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C;;YAECU;gBAECC,WAAMA,KAAAA,CAACA;YACRA,CAACA;YAEDD,yCAAAA,UAAsBA,OAAyBA;gBAE9CE,OAAOA,OAAOA,CAACA,aAAaA,CAACA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,MAAMA,EAAEA,IAAIA,CAACA,EAAEA,CAACA,sBAAsBA,CAACA,IAAIA,EAAEA,KAAKA,CAACA;YAClGA,CAACA;YACFF,qBAACA;QAADA,CAACA,EAXkCV,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,EAWhEA;QAXDA,uCAWCA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;AChBD,yCAAyC;AAEzC,IAAO,IAAI;AAqBV,CArBD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C;;YAECa;gBAECC,WAAMA,KAAAA,CAACA;YACRA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,2GAA2GA;oBAC3GA,OAAOA,IAAIA,CAACA,KAAKA;gBAClBA,CAACA;;;;AAAAA;YAGDA,WADWA;uDACXA,UAAsBA,OAAyBA;gBAE9CE,OAAOA,OAAOA,CAACA,iBAAiBA,CAACA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,EAAEA,CAACA,sBAAsBA,CAACA,IAAIA,EAAEA,KAAKA,CAACA;YACzFA,CAACA;YACFF,uBAACA;QAADA,CAACA,EAlBoCb,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,EAkBlEA;QAlBDA,2CAkBCA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACvBD,yCAAyC;AAEzC,IAAO,IAAI;AAsEV,CAtED,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C,6BAAgCA,IAAIA,CAACA,EAAEA,CAACA,sBAAsBA;QAC9DA,gBAAsBA,IAAIA,CAACA,KAAKA,CAACA,SAASA;;QAE1CA;YAaCgB,6DAD6DA;YAC7DA,iBAAYA,IAAcA;gBAEzBC,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBACtCA,IAAIA,IAAIA,IAAIA,KAAKA;oBAChBA,MAAMA,IAAIA,KAAKA,CAACA,oCAAoCA,GAAGA,IAAIA,CAACA,CAACA;;gBAE9DA,IAAIA,IAAIA,CAACA,CAACA,CAACA,IAAIA,GAAGA;oBACjBA,IAAIA,CAACA,QAAQA,GAAGA,EAAEA,EAAEA,mBAAmBA;;oBAEvCA,IAAIA,CAACA,QAAQA,GAAGA,CAACA,EAAEA,mBAAmBA;AAApBA;gBAEnBA,IAAIA,KAAKA,GAAmBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;gBACnDA,IAAIA,KAAKA,GAAkBA,KAAKA,IAAIA,CAACA;gBACrCA,IAAIA,OAAOA,GAAkBA,KAAKA,GAAGA,IAAIA;;gBAEzCA,QAAQA,OAAOA,CAACA;oBACfA,KAAKA,CAACA;AAACA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,MAAMA,GAAGA,sBAAsBA,CAACA,IAAIA;wBACzCA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;AAACA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,MAAMA,GAAGA,sBAAsBA,CAACA,UAAUA;wBAC/CA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;AAACA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,MAAMA,GAAGA,sBAAsBA,CAACA,gBAAgBA;wBACrDA,KAAMA;AAAAA;oBAEPA;wBACCA,MAAMA,IAAIA,KAAKA,CAACA,oBAAoBA,CAACA;AAACA,iBACvCA;;gBAEDA,QAAQA,KAAKA,CAACA;oBACbA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,IAAIA,GAAGA,OAAOA,CAACA,WAAWA;wBAC/BA,KAAMA;AAAAA,oBACPA,KAAKA,CAACA;wBACLA,IAAIA,CAACA,IAAIA,GAAGA,OAAOA,CAACA,SAASA;wBAC7BA,KAAMA;AAAAA;oBAEPA;wBACCA,MAAMA,IAAIA,KAAKA,CAACA,kBAAkBA,CAACA;AAACA,iBACrCA;;gBAEDA,IAAIA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,CAACA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA;gBACjDA,IAAIA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,CAACA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA;gBAClDA,IAAIA,CAACA,WAAWA,GAAGA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;gBAC1CA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;YACjBA,CAACA;YA5DDD,sBAA2CA,GAAGA;YAC9CA,oBAAyCA,GAAGA;YA6D7CA,eAACA;QAADA,CAACA,IAAAhB;QAhEDA,2BAgECA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACxED,yCAAyC;AAEzC,IAAO,IAAI;AAgDV,CAhDD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C,gBAAqBA,IAAIA,CAACA,EAAEA,CAACA,SAASA;QACtCA,kBAAuBA,IAAIA,CAACA,EAAEA,CAACA,WAAWA;QAC1CA,kBAAuBA,IAAIA,CAACA,EAAEA,CAACA,WAAWA;QAC1CA,gBAAqBA,IAAIA,CAACA,KAAKA,CAACA,SAASA;;QAEzCA;;YAICkB,wBAAYA,SAAmBA;gBAE9BC,WAAMA,KAAAA,CAACA;;gBAEPA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,qBAAOA,CAACA,SAASA,CAACA;;gBAErCA,IAAIA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,IAAIA,qBAAOA,CAACA,SAASA;oBAC1CA,MAAMA,IAAIA,KAAKA,CAACA,uBAAuBA,CAACA,CAACA;;gBAE1CA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,MAAMA;gBACpCA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,WAAWA,GAAGA,CAACA;YAClDA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAaA;oBAE/BA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;;oBAErBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;;oBAExBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;gBACzCA,CAACA;;;;AATAA;;YAWDA,0CAAAA,UAAsBA,OAAmBA;gBAExCE,OAAsBA,CAAEA,oCAAoCA,CAACA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,EAAEA,CAACA,EAAEA,KAAKA,CAACA;YAC3FA,CAACA;;YAEDF,0CAAAA,UAAsBA,OAAiBA;gBAEtCG,OAAOA,OAAOA,CAACA,iBAAiBA,CAACA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,KAAKA,CAACA;YACnFA,CAACA;YACFH,sBAACA;QAADA,CAACA,EAxCmClB,6BAAeA,EAwClDA;QAxCDA,yCAwCCA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;AClDD,yCAAyC;AAEzC,IAAO,IAAI;AA4CV,CA5CD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C,gBAAqBA,IAAIA,CAACA,EAAEA,CAACA,SAASA;QACtCA,cAAoBA,IAAIA,CAACA,EAAEA,CAACA,OAAOA;QACnCA,kBAAuBA,IAAIA,CAACA,EAAEA,CAACA,WAAWA;QAC1CA,gBAAqBA,IAAIA,CAACA,KAAKA,CAACA,SAASA;;QAEzCA;;YAICsB,oBAAYA,SAAmBA;gBAE9BC,WAAMA,KAAAA,CAACA;;gBAEPA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,qBAAOA,CAACA,SAASA,CAACA;gBACrCA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,MAAMA;gBACpCA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,WAAWA,GAAGA,CAACA;YAClDA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAaA;oBAE/BA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;;oBAErBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;;oBAExBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;gBACzCA,CAACA;;;;AATAA;;YAWDA,sCAAAA,UAAsBA,OAAmBA;gBAExCE,OAAkBA,CAAEA,oCAAoCA,CAACA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,EAAEA,CAACA,EAAEA,KAAKA,CAACA;YACvFA,CAACA;;YAEDF,sCAAAA,UAAsBA,OAAiBA;gBAEtCG,OAAOA,OAAOA,CAACA,aAAaA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,MAAMA,EAAEA,KAAKA,CAACA;YACtFA,CAACA;YACFH,kBAACA;QAADA,CAACA,EApC+BtB,2BAAaA,EAoC5CA;QApCDA,iCAoCCA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;AC9CD,yCAAyC;AAEzC,IAAO,IAAI;AAoIV,CApID,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAGnB+2C;;YASC0B,sBAAYA,gBAAiCA,EAAEA,eAA8BA;gBAA9BC,8CAAAA,eAAeA,GAAWA,IAAIA;AAAAA,gBAE5EA,WAAMA,KAAAA,CAACA;;gBAEPA,IAAIA,CAACA,gBAAgBA,GAAGA,gBAAgBA;gBACxCA,IAAIA,CAACA,gBAAgBA,GAAGA,eAAeA;YACxCA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,iBAAiBA;gBAC9BA,CAACA;gBAEDA,KAAAA,UAA4BA,KAAsBA;oBAGjDA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,iBAAiBA,CAAEA;wBAEpCA,MAAOA;qBAEPA;;oBAEDA,IAAIA,CAACA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,uBAAuBA,CAACA,KAAKA,CAACA,CAAEA;wBAE5DA,MAAMA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,gFAAgFA,CAACA;qBAE7GA;;oBAEDA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,iBAAiBA,GAAGA,KAAKA;;oBAE9BA,IAAIA,IAAIA,CAACA,gBAAgBA,CAAEA;wBAE1BA,IAAIA,CAACA,eAAeA,CAACA,CAACA;qBAEtBA;gBAEFA,CAACA;;;;AA3BAA;;YA6BDA,wCAAAA,UAAsBA,OAA2BA;gBAGhDE,IAAIA,IAAIA,CAACA,gBAAgBA,CAAEA;oBAE1BA,IAAIA,CAACA,QAAQA,CAACA,eAAeA,CAACA,+BAA+BA,CAACA,IAAIA,CAACA,iBAAiBA,EAAEA,OAAOA,EAAEA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA;iBAExHA,KAAMA;oBAENA,IAAIA,EAAEA,GAAyBA,OAAOA;oBACtCA,EAAEA,CAACA,0BAA0BA,CAACA,IAAIA,CAACA,iBAAiBA,EAAEA,CAACA,CAACA;iBAExDA;YAEFA,CAACA;;YAEDF,yCAAAA;gBAGCG,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,iBAAiBA,CAACA,KAAKA;gBAC9CA,IAAIA,IAAIA,GAAUA,IAAIA,CAACA,iBAAiBA,CAACA,MAAMA;;gBAE/CA,IAAIA,IAAIA,CAACA,aAAaA,CAAEA;oBAEvBA,IAAIA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,IAAIA,IAAIA,IAAIA,IAAIA,CAACA,iBAAiBA,CAACA,MAAMA,IAAIA,IAAIA,CAAEA;wBAE9EA,MAAOA;qBAEPA;;oBAEDA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;iBAEvBA;;gBAEDA,IAAIA,CAACA,YAAYA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAAEA;oBAEjCA,YAAYA,CAACA,QAAQA,CAACA,IAAIA,CAACA,GAAGA,EAAEA;oBAChCA,YAAYA,CAACA,WAAWA,CAACA,IAAIA,CAACA,GAAGA,EAAEA;iBAEnCA;;gBAEDA,IAAIA,CAACA,YAAYA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAAEA;oBAEvCA,IAAIA,CAACA,aAAaA,GAAGA,YAAYA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;oBACnGA,YAAYA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,CAACA;iBAExCA,KAAMA;oBAENA,YAAYA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,YAAYA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,CAACA;oBAC/EA,IAAIA,CAACA,aAAaA,GAAGA,YAAYA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA;iBAEtDA;YACFA,CAACA;;YAEDH,0CAAAA;gBAECI,IAAIA,WAAWA,GAAUA,IAAIA,CAACA,aAAaA,CAACA,KAAKA;gBACjDA,IAAIA,YAAYA,GAAUA,IAAIA,CAACA,aAAaA,CAACA,MAAMA;;gBAEnDA,IAAIA,EAAEA,YAAYA,CAACA,WAAWA,CAACA,WAAWA,CAACA,CAACA,YAAYA,CAACA,IAAIA,CAACA,CAAEA;oBAE/DA,YAAYA,CAACA,QAAQA,CAACA,WAAWA,CAACA,CAACA,YAAYA,CAACA,CAACA,OAAOA,CAACA,CAACA;oBAC1DA,YAAYA,CAACA,QAAQA,CAACA,WAAWA,CAACA,CAACA,YAAYA,CAACA,GAAGA,IAAIA;iBAEvDA;YACFA,CAACA;;YAEDJ,iCAAAA;gBAECK,gBAAKA,CAACA,OAAOA,KAACA,KAAAA,CAACA;;gBAEfA,IAAIA,IAAIA,CAACA,aAAaA,CAAEA;oBAEvBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;iBAEvBA;YAEFA,CAACA;YA5HDL,wBAA0BA,EAAEA;YAC5BA,2BAA6BA,EAAEA;YA6HhCA,oBAACA;QAADA,CAACA,EAhIiC1B,IAAIA,CAACA,QAAQA,CAACA,aAAaA,EAgI5DA;QAhIDA,qCAgICA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACtID,yCAAyC;AAEzC,IAAO,IAAI;AA2IV,CA3ID,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAGnB+2C;;YASCgC,uBAAYA,UAA+BA,EAAEA,eAA8BA;gBAA9BC,8CAAAA,eAAeA,GAAWA,IAAIA;AAAAA,gBAE1EA,WAAMA,KAAAA,CAACA;;gBAEPA,IAAIA,CAACA,UAAUA,GAAGA,UAAUA;gBAC5BA,IAAIA,CAACA,gBAAgBA,GAAGA,eAAeA;YACxCA,CAACA;YAEDD;gBAAAA,KAAAA;oBAGCA,OAAOA,IAAIA,CAACA,WAAWA;gBAExBA,CAACA;gBAEDA,KAAAA,UAAsBA,KAA0BA;oBAG/CA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,WAAWA,CAAEA;wBAE9BA,MAAOA;qBAEPA;;oBAEDA,IAAIA,CAACA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,iBAAiBA,CAACA,KAAKA,CAACA,CAAEA;wBAEtDA,MAAMA,IAAIA,KAAKA,CAACA,gFAAgFA,CAACA;qBAEjGA;;oBAGDA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;;oBAExBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;;oBAExCA,IAAIA,CAACA,WAAWA,GAAGA,KAAKA;;oBAExBA,IAAIA,IAAIA,CAACA,gBAAgBA,CAAEA;wBAE1BA,IAAIA,CAACA,eAAeA,CAACA,CAACA;qBAEtBA;gBAEFA,CAACA;;;;AA9BAA;;YAgCDA,yCAAAA,UAAsBA,OAA2BA;gBAGhDE,IAAIA,IAAIA,CAACA,gBAAgBA,CAAEA;oBAE1BA,IAAIA,CAACA,QAAQA,CAACA,eAAeA,CAACA,eAAeA,CAACA,IAAIA,CAACA,WAAWA,EAAEA,OAAOA,EAAEA,IAAIA,CAACA,aAAaA,EAAEA,IAAIA,CAACA;iBAElGA,KAAMA;oBAENA,IAAIA,EAAEA,GAAyBA,OAAOA;oBACtCA,EAAEA,CAACA,oBAAoBA,CAACA,IAAIA,CAACA,WAAWA,EAAEA,CAACA,CAACA;iBAE5CA;YAEFA,CAACA;;YAEDF,0CAAAA;gBAECG,IAAIA,IAAIA,EAASA,IAAIA;;gBAErBA,IAAIA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,KAAKA;gBAC7BA,IAAIA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,MAAMA;;gBAE9BA,IAAIA,IAAIA,CAACA,aAAaA,CAAEA;oBAEvBA,IAAIA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,IAAIA,IAAIA,IAAIA,IAAIA,CAACA,WAAWA,CAACA,MAAMA,IAAIA,IAAIA,CAAEA;wBAExEA,MAAOA;qBAEPA;;oBAGDA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;iBAEvBA;;gBAEDA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAAEA;oBAElCA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,GAAGA,EAAEA;oBACjCA,aAAaA,CAACA,WAAWA,CAACA,IAAIA,CAACA,GAAGA,EAAEA;iBAEpCA;;gBAEDA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,CAAEA;oBAExCA,IAAIA,CAACA,aAAaA,GAAGA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;oBACpGA,aAAaA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,CAACA;iBAEzCA,KAAMA;oBAENA,aAAaA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,aAAaA,CAACA,WAAWA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,GAAGA,CAACA;oBACjFA,IAAIA,CAACA,aAAaA,GAAGA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA;iBAEvDA;YACFA,CAACA;;YAEDH,2CAAAA;gBAECI,IAAIA,WAAWA,GAAUA,IAAIA,CAACA,aAAaA,CAACA,KAAKA;gBACjDA,IAAIA,YAAYA,GAAUA,IAAIA,CAACA,aAAaA,CAACA,MAAMA;;gBAEnDA,IAAIA,EAAEA,aAAaA,CAACA,WAAWA,CAACA,WAAWA,CAACA,CAACA,YAAYA,CAACA,IAAIA,CAACA,CAAEA;oBAEhEA,aAAaA,CAACA,QAAQA,CAACA,WAAWA,CAACA,CAACA,YAAYA,CAACA,CAACA,OAAOA,CAACA,CAACA;oBAC3DA,aAAaA,CAACA,QAAQA,CAACA,WAAWA,CAACA,CAACA,YAAYA,CAACA,GAAGA,IAAIA;iBAExDA;YACFA,CAACA;;YAEDJ,kCAAAA;gBAECK,gBAAKA,CAACA,OAAOA,KAACA,KAAAA,CAACA;;gBAEfA,IAAIA,IAAIA,CAACA,aAAaA,CAAEA;oBAEvBA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA;iBACvBA;YAEFA,CAACA;YAlIDL,yBAA0BA,EAAEA;YAC5BA,4BAA6BA,EAAEA;YAmIhCA,qBAACA;QAADA,CAACA,EAtIkChC,IAAIA,CAACA,QAAQA,CAACA,aAAaA,EAsI7DA;QAtIDA,uCAsICA;IAEFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;AC7ID,yCAAyC;AAEzC,IAAO,IAAI;AAqEV,CArED,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAGnB+2C;;YAECsC,uBAAYA,KAAYA,EAAEA,MAAaA;gBAEtCC,WAAMA,KAAAA,CAACA;gBACPA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,EAAEA,MAAMA,CAACA;YAC7BA,CAACA;YAMDD;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAiBA,KAAYA;oBAE5BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,OAAOA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,gBAAgBA,CAACA,KAAKA,CAACA;wBACnDA,MAAMA,IAAIA,KAAKA,CAACA,0EAA0EA,CAACA,CAACA;;oBAE7FA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;;oBAExBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,QAAQA,CAACA;gBACpCA,CAACA;;;;AAbAA;;YAmBDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAYA;oBAE7BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,QAAQA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,gBAAgBA,CAACA,KAAKA,CAACA;wBACnDA,MAAMA,IAAIA,KAAKA,CAACA,0EAA0EA,CAACA,CAACA;;oBAE7FA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,KAAKA,CAACA;gBACnCA,CAACA;;;;AAZAA;;YAcDA,yCAAAA,UAAsBA,OAA2BA;gBAEhDE,8CAA8CA;gBAC9CA,IAAIA,GAAGA,GAAwBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,MAAMA,EAAEA,KAAKA,EAAEA,QAAQA,CAACA;;gBACjGA,2DAA2DA;gBAC3DA,+DAA+DA;gBAC/DA,OAAyBA,CAAEA,wBAAwBA,CAACA,GAAGA,CAACA;gBACxDA,GAAGA,CAACA,OAAOA,CAACA,CAACA;YACdA,CAACA;;YAEDF,yCAAAA,UAAsBA,OAAyBA;gBAE9CG,OAAOA,OAAOA,CAACA,aAAaA,CAACA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,MAAMA,EAAEA,IAAIA,CAACA,EAAEA,CAACA,sBAAsBA,CAACA,IAAIA,EAAEA,IAAIA,CAACA;YACjGA,CAACA;YACFH,qBAACA;QAADA,CAACA,EAjEkCtC,IAAIA,CAACA,QAAQA,CAACA,aAAaA,EAiE7DA;QAjEDA,uCAiECA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACvED,yCAAyC;AAEzC,IAAO,IAAI;AAiJV,CAjJD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C;;YAMC0C,0BAAYA,IAAqBA,EAAEA,IAAqBA,EAAEA,IAAqBA,EAAEA,IAAqBA,EAAEA,IAAqBA,EAAEA,IAAqBA;gBAEnJC,WAAMA,KAAAA,CAACA;gBAJRA,KAAQA,WAAWA,GAAWA,KAAKA,CAACA;;gBAMnCA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,KAAKA,CAAmBA,CAACA,CAACA;gBAClDA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;;gBAE1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,MAAMA,CAACA;YACvCA,CAACA;YAKDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAsBA;oBAE1CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAsBA;oBAE1CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAsBA;oBAE1CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAsBA;oBAE1CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAsBA;oBAE1CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAAsBA;oBAE1CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAUDA,sCAAAA,UAAiBA,KAAsBA;gBAEtCE,IAAIA,KAAKA,CAACA,KAAKA,IAAIA,KAAKA,CAACA,MAAMA;oBAC9BA,MAAMA,IAAIA,KAAKA,CAACA,gDAAgDA,CAACA,CAACA;gBACnEA,IAAIA,CAACA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,uBAAuBA,CAACA,KAAKA,CAACA;oBAC1DA,MAAMA,IAAIA,KAAKA,CAACA,gFAAgFA,CAACA,CAACA;YACpGA,CAACA;;YAEDF,4CAAAA,UAAsBA,OAA2BA;gBAEhDG,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,CAACA,EAAEA,EAAEA,CAACA,CAAEA;oBAClCA,IAAIA,IAAIA,CAACA,WAAWA,CAAEA;wBAErBA,gGAAgGA;qBAEhGA,KAAMA;wBAENA,IAAIA,EAAEA,GAA6BA,OAAOA;wBAC1CA,EAAEA,CAACA,0BAA0BA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA;qBAEzDA;iBAGDA;YACFA,CAACA;YACFH,wBAACA;QAADA,CAACA,EA9IqC1C,6BAAeA,EA8IpDA;QA9IDA,6CA8ICA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACnJD,yCAAyC;AAEzC,IAAO,IAAI;AAiJV,CAjJD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C;;YAMC8C,2BAAYA,IAAyBA,EAAEA,IAAyBA,EAAEA,IAAyBA,EAAEA,IAAyBA,EAAEA,IAAyBA,EAAEA,IAAyBA;gBAE3KC,WAAMA,KAAAA,CAACA;gBAJRA,KAAQA,WAAWA,GAAWA,KAAKA,CAACA;;gBAMnCA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,KAAKA,CAAuBA,CAACA,CAACA;gBACtDA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBAC1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA;;gBAE1CA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,MAAMA,CAACA;YACvCA,CAACA;YAKDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAA0BA;oBAE9CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAA0BA;oBAE9CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAA0BA;oBAE9CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAA0BA;oBAE9CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAA0BA;oBAE9CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAaDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA;gBAC5BA,CAACA;gBAEDA,KAAAA,UAAqBA,KAA0BA;oBAE9CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA;oBACpBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,KAAKA,EAAEA,KAAKA,CAACA,MAAMA,CAACA;oBACxCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,GAAGA,KAAKA;gBAC7BA,CAACA;;;;AARAA;;YAUDA,uCAAAA,UAAiBA,KAA0BA;gBAE1CE,IAAIA,KAAKA,CAACA,KAAKA,IAAIA,KAAKA,CAACA,MAAMA;oBAC9BA,MAAMA,IAAIA,KAAKA,CAACA,gDAAgDA,CAACA,CAACA;gBACnEA,IAAIA,CAACA,IAAIA,CAACA,KAAKA,CAACA,YAAYA,CAACA,iBAAiBA,CAACA,KAAKA,CAACA;oBACpDA,MAAMA,IAAIA,KAAKA,CAACA,gFAAgFA,CAACA,CAACA;YACpGA,CAACA;;YAEDF,6CAAAA,UAAsBA,OAA2BA;gBAEhDG,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,CAACA,EAAEA,EAAEA,CAACA,CAAEA;oBAClCA,IAAIA,IAAIA,CAACA,WAAWA,CAAEA;wBAErBA,gGAAgGA;qBAEhGA,KAAMA;wBAENA,IAAIA,EAAEA,GAA6BA,OAAOA;wBAC1CA,EAAEA,CAACA,oBAAoBA,CAACA,IAAIA,CAACA,YAAYA,CAACA,CAACA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA;qBAEnDA;iBAGDA;YACFA,CAACA;YACFH,yBAACA;QAADA,CAACA,EA9IsC9C,6BAAeA,EA8IrDA;QA9IDA,+CA8ICA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACnJD,yCAAyC;AAEzC,IAAO,IAAI;AAsFV,CAtFD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C,sBAAsBA;QACtBA,uCAAuCA;QACvCA,mCAAmCA;QACnCA,uCAAuCA;QACvCA,sBAAsBA;QAEtBA;;UAEGA;QACHA;YAAAkD;;AA0ECA,YA7DAA;;;;;;cADGA;8DACHA,UAA8CA,MAAuBA,EAAEA,MAA0BA,EAAEA,MAAkCA,EAAEA,KAAqBA,EAAEA,IAAgBA;gBAA3EE,qCAAAA,MAAMA,GAAwBA,IAAIA;AAAAA,gBAAEA,oCAAAA,KAAKA,GAAWA,KAAKA;AAAAA,gBAAEA,mCAAAA,IAAIA,GAAUA,CAACA,CAACA;AAAAA,gBAE7KA,eAAeA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,MAAMA,CAACA,KAAKA;gBAC1CA,eAAeA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,MAAMA,CAACA,MAAMA;;gBAE5CA,eAAeA,CAACA,OAAOA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,MAAMA,CAACA,KAAKA,EAAEA,MAAMA,CAACA,MAAMA,EAAEA,KAAKA,CAACA;gBACtFA,eAAeA,CAACA,OAAOA,CAACA,SAASA,CAACA,MAAMA,EAAEA,eAAeA,CAACA,KAAKA,EAAEA,eAAeA,CAACA,KAAKA,CAACA;;gBAEvFA,eAAeA,CAACA,eAAeA,CAACA,eAAeA,CAACA,OAAOA,EAAEA,MAAMA,EAAEA,MAAMA,CAACA;;gBAExEA,eAAeA,CAACA,OAAOA,CAACA,OAAOA,CAACA,CAACA;gBACjCA,eAAeA,CAACA,OAAOA,GAAGA,IAAIA;YAC/BA,CAACA;;YASDF;;;;;;cADGA;8CACHA,UAA8BA,MAA2BA,EAAEA,MAA0BA,EAAEA,MAAkCA,EAAEA,KAAqBA,EAAEA,IAAgBA;gBAA3EG,qCAAAA,MAAMA,GAAwBA,IAAIA;AAAAA,gBAAEA,oCAAAA,KAAKA,GAAWA,KAAKA;AAAAA,gBAAEA,mCAAAA,IAAIA,GAAUA,CAACA,CAACA;AAAAA,gBAEjKA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,KAAKA;gBAC3BA,IAAIA,CAACA,GAAUA,MAAMA,CAACA,MAAMA;gBAC5BA,IAAIA,KAAKA,GAAWA,MAAMA,IAAIA,IAAIA;gBAClCA,IAAIA,CAACA,GAAUA,CAACA;;gBAEhBA,IAAIA,CAACA,MAAMA;oBACVA,MAAMA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,CAACA,EAAEA,CAACA,EAAEA,KAAKA,CAACA,CAACA;;gBAEhDA,eAAeA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,CAACA;gBAC/BA,eAAeA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,CAACA;;gBAEhCA,OAAOA,CAACA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,CAAEA;oBAExBA,IAAIA,KAAKA;wBACRA,MAAMA,CAACA,QAAQA,CAACA,eAAeA,CAACA,KAAKA,EAAEA,CAACA,CAACA,CAACA;;oBAE3CA,eAAeA,CAACA,OAAOA,CAACA,CAACA,GAAGA,eAAeA,CAACA,KAAKA,CAACA,KAAKA,GAACA,MAAMA,CAACA,KAAKA;oBACpEA,eAAeA,CAACA,OAAOA,CAACA,CAACA,GAAGA,eAAeA,CAACA,KAAKA,CAACA,MAAMA,GAACA,MAAMA,CAACA,MAAMA;;oBAEtEA,MAAMA,CAACA,KAAKA,GAAGA,eAAeA,CAACA,KAAKA,CAACA,KAAKA;oBAC1CA,MAAMA,CAACA,MAAMA,GAAGA,eAAeA,CAACA,KAAKA,CAACA,MAAMA;oBAC5CA,MAAMA,CAACA,UAAUA,CAACA,MAAMA,EAAEA,MAAMA,CAACA,IAAIA,EAAEA,eAAeA,CAACA,KAAKA,CAACA;;oBAE7DA,IAAIA,MAAMA,YAAYA,IAAIA,CAACA,EAAEA,CAACA,OAAOA;wBACpCA,MAAyBA,CAAEA,oBAAoBA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAACA;;wBAE5DA,MAA6BA,CAAEA,oBAAoBA,CAACA,MAAMA,EAAEA,IAAIA,EAAEA,CAACA,EAAEA,CAACA,CAACA;;oBAExEA,CAACA,KAAKA,CAACA;oBACPA,CAACA,KAAKA,CAACA;;oBAEPA,eAAeA,CAACA,KAAKA,CAACA,KAAKA,GAAGA,CAACA,GAAGA,CAACA,GAAEA,CAACA,GAAGA,CAACA;oBAC1CA,eAAeA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,CAACA,GAAGA,CAACA,GAAEA,CAACA,GAAGA,CAACA;iBAC3CA;;gBAEDA,IAAIA,CAACA,KAAKA;oBACTA,MAAMA,CAACA,OAAOA,CAACA,CAACA,CAACA;YACnBA,CAACA;YAvEDH,0BAA0CA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA;YAChEA,wBAA2CA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,SAASA,CAACA,CAACA;YAuErEA,uBAACA;QAADA,CAACA,IAAAlD;QA1EDA,2CA0ECA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACxFD,yCAAyC;AAEzC,IAAO,IAAI;AAuGV,CAvGD,UAAO,IAAI;KAAXA,UAAYA,QAAQA;QAEnB+2C,iBAAwBA,IAAIA,CAACA,IAAIA,CAACA,UAAUA;QAC5CA,wBAA6BA,IAAIA,CAACA,IAAIA,CAACA,iBAAiBA;QACxDA,kBAAyBA,IAAIA,CAACA,EAAEA,CAACA,WAAWA;QAC5CA,YAAoBA,IAAIA,CAACA,IAAIA,CAACA,KAAKA;QACnCA,gBAAuBA,IAAIA,CAACA,IAAIA,CAACA,SAASA;;QAE1CA;;UAEGA;QACHA;;YAKCsD,+BAAYA,WAA6BA,EAAEA,QAA0BA;gBAAzDC,0CAAAA,WAAWA,GAAcA,IAAIA;AAAAA,gBAAEA,uCAAAA,QAAQA,GAAcA,IAAIA;AAAAA,gBAEpEA,IAAIA,GAAGA;;gBAEPA,IAAIA,WAAWA;oBACdA,GAAGA,GAAGA,WAAWA;;oBAEjBA,GAAGA,GAAGA,QAAQA,CAACA;gBAChBA,GAAGA,GAAGA,GAAGA,GAAEA,IAAIA,UAAUA,CAACA,GAAGA,CAACA,KAAKA,EAAEA,GAAGA,CAACA,MAAMA,EAAEA,KAAKA,EAAEA,QAAQA,CAACA,GAAGA,IAAIA,UAAUA,CAACA,CAACA,EAAEA,CAACA,EAAEA,KAAKA,EAAEA,QAAQA,CAACA;;gBAEzGA,WAAMA,OAAAA,GAAGA,CAACA;;gBAEVA,IAAIA,CAACA,WAAWA,GAAGA,WAAWA;gBAC9BA,IAAIA,CAACA,QAAQA,GAAGA,QAAQA;YACzBA,CAACA;YAEDD;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;gBAEDA,KAAAA,UAAuBA,KAAgBA;oBAEtCA,IAAIA,CAACA,YAAYA,GAAGA,KAAKA;;oBAEzBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;;oBAExBA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBAChBA,CAACA;;;;AATAA;;YAWDA;gBAAAA,KAAAA;oBAECA,OAAOA,IAAIA,CAACA,SAASA;gBACtBA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAgBA;oBAEnCA,IAAIA,CAACA,SAASA,GAAGA,KAAKA;oBACtBA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA;;oBAExBA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBAChBA,CAACA;;;;AARAA;;YAUDA,2CAAAA;gBAECE,IAAIA,CAACA,EAASA,CAACA;;gBAEfA,IAAIA,IAAIA,CAACA,YAAYA,CAAEA;oBACtBA,CAACA,GAAGA,IAAIA,CAACA,YAAYA,CAACA,KAAKA;oBAC3BA,CAACA,GAAGA,IAAIA,CAACA,YAAYA,CAACA,MAAMA;iBAC5BA,MAAMA,IAAIA,IAAIA,CAACA,SAASA,CAAEA;oBAC1BA,CAACA,GAAGA,IAAIA,CAACA,SAASA,CAACA,KAAKA;oBACxBA,CAACA,GAAGA,IAAIA,CAACA,SAASA,CAACA,MAAMA;iBACzBA,KAAMA;oBACNA,CAACA,GAAGA,CAACA;oBACLA,CAACA,GAAGA,CAACA;iBACLA;;gBAEDA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,UAAUA,CAACA,KAAKA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,UAAUA,CAACA,MAAMA,CAAEA;oBAC9DA,IAAIA,SAASA,GAAcA,IAAIA,CAACA,UAAUA;oBAC1CA,IAAIA,CAACA,UAAUA,GAAGA,IAAIA,UAAUA,CAACA,IAAIA,CAACA,YAAYA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,YAAYA,CAACA,MAAMA,EAAEA,KAAKA,EAAEA,QAAQA,CAACA;oBACpGA,SAASA,CAACA,OAAOA,CAACA,CAACA;iBACnBA;YACFA,CAACA;;YAEDF,iDAAAA,UAAsBA,OAAmBA;gBAExCG,IAAIA,IAAIA,GAAaA,IAAIA,CAACA,YAAYA,CAACA,IAAIA;gBAC3CA,IAAIA,MAAMA,GAASA,IAAIA,KAAKA,CAACA,CAACA;;gBAE9BA,IAAIA,CAACA,UAAUA,CAACA,QAAQA,CAACA,IAAIA,EAAEA,QAAQA,CAACA;;gBAExCA,IAAIA,IAAIA,CAACA,SAASA;oBACjBA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,IAAIA,CAACA,SAASA,EAAEA,IAAIA,EAAEA,MAAMA,EAAEA,iBAAiBA,CAACA,KAAKA,EAAEA,iBAAiBA,CAACA,KAAKA,CAACA,CAACA;;gBAE7GA,IAAIA,IAAIA,CAACA,YAAYA;oBACpBA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,IAAIA,CAACA,YAAYA,EAAEA,IAAIA,EAAEA,MAAMA,EAAEA,iBAAiBA,CAACA,GAAGA,EAAEA,iBAAiBA,CAACA,GAAGA,CAACA,CAACA;;gBAE5GA,gBAAKA,CAACA,cAAcA,KAACA,OAAAA,OAAOA,CAACA;YAC9BA,CAACA;;YAEDH,0CAAAA;gBAECI,IAAIA,CAACA,UAAUA,CAACA,OAAOA,CAACA,CAACA;gBACzBA,IAAIA,CAACA,UAAUA,GAAGA,IAAIA;YACvBA,CAACA;YACFJ,6BAACA;QAADA,CAACA,EA3F0CtD,2BAAaA,EA2FvDA;QA3FDA,uDA2FCA;IACFA,CAACA,yCAAA/2C;iCAAAA;AAADA,CAACA,uBAAA;ACzGD,+CAA+C;AAE/C,IAAO,KAAK;AAgBX,CAhBD,UAAO,KAAK;IAEX06C;QAUCC;YARAC,KAAOA,OAAOA,GAAUA,CAACA,CAACA;YAC1BA,KAAOA,GAAGA,GAAUA,CAACA,CAACA;YACtBA,KAAOA,QAAQA,GAAUA,CAACA,CAACA;YAC3BA,KAAOA,OAAOA,GAAUA,CAACA,CAACA;YAC1BA,KAAOA,IAAIA,GAAUA,CAACA,CAACA;YACvBA,KAAOA,MAAMA,GAAUA,CAACA,CAACA;YACzBA,KAAOA,MAAMA,GAAUA,CAACA,CAACA;QAIzBA,CAACA;QACFD,eAACA;IAADA,CAACA,IAAAD;IAbDA,wBAaCA;AACFA,CAACA,yBAAA;AClBD,+CAA+C;AAE/C,IAAO,KAAK;AAcX,CAdD,UAAO,KAAK;IAEXA;QAQCG;YALAC,KAAOA,IAAIA,GAAqBA,IAAIA,KAAKA,CAACA,WAAWA,CAACA,CAACA,CAACA;YACxDA,KAAOA,MAAMA,GAAUA,CAACA,CAACA;YACzBA,KAAOA,CAACA,GAAqBA,IAAIA,KAAKA,CAACA,WAAWA,CAACA,CAACA,CAACA;YACrDA,KAAOA,CAACA,GAAqBA,IAAIA,KAAKA,CAACA,WAAWA,CAACA,CAACA,CAACA;QAIrDA,CAACA;QACFD,aAACA;IAADA,CAACA,IAAAH;IAXDA,oBAWCA;AACFA,CAACA,yBAAA;AChBD,+CAA+C;AAE/C,IAAO,KAAK;AAaX,CAbD,UAAO,KAAK;IAEXA;QAMCK;YAJAC,KAAOA,MAAMA,GAAUA,CAACA,CAACA;YACzBA,KAAOA,OAAOA,GAAUA,CAACA,CAACA;YAC1BA,KAAOA,IAAIA,GAAUA,EAAEA,CAACA;QAIxBA,CAACA;QACFD,cAACA;IAADA,CAACA,IAAAL;IATDA,sBASCA;AAEFA,CAACA,yBAAA;ACfD,+CAA+C;AAE/C,IAAO,KAAK;AAgCX,CAhCD,UAAO,KAAK;IAEXA;QAeCO,eAAYA,CAAQA,EAAEA,KAAYA,EAAEA,IAAYA,EAAEA,CAASA,EAAEA,CAASA,EAAEA,WAAkBA,EAAEA,YAAmBA,EAAEA,IAAYA,EAAEA,MAAcA,EAAEA,EAAUA,EAAEA,GAAWA;YAErKC,IAAIA,CAACA,CAACA,GAAGA,CAACA;YACVA,IAAIA,CAACA,KAAKA,GAAGA,KAAKA;YAClBA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;YAChBA,IAAIA,CAACA,CAACA,GAAGA,CAACA;YACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;YACVA,IAAIA,CAACA,WAAWA,GAAGA,WAAWA;YAC9BA,IAAIA,CAACA,YAAYA,GAAGA,YAAYA;YAChCA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;YAChBA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;YACpBA,IAAIA,CAACA,EAAEA,GAAGA,EAAEA;YACZA,IAAIA,CAACA,GAAGA,GAAGA,GAAGA;QACfA,CAACA;QACFD,aAACA;IAADA,CAACA,IAAAP;IA7BDA,oBA6BCA;AACFA,CAACA,yBAAA;AClCD,+CAA+C;AAE/C,IAAO,KAAK;AAmCX,CAnCD,UAAO,KAAK;IAEXA;QA6BCS;YA3BAC,KAAOA,OAAOA,GAASA;gBACtBA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;aACFA,CAACA;YACFA,KAAOA,QAAQA,GAASA;gBACvBA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;gBACFA,EAAEA;aACFA,CAACA;YACFA,KAAOA,WAAWA,GAAWA,KAAKA,CAACA;YACnCA,KAAOA,UAAUA,GAAWA,KAAKA,CAACA;YAClCA,KAAOA,SAASA,GAAWA,KAAKA,CAACA;YACjCA,KAAOA,QAAQA,GAASA,EAAEA,CAACA;YAE3BA,iDAAiDA;YACjDA,KAAOA,MAAMA,GAAiBA,EAAEA,CAACA;YACjCA,KAAOA,MAAMA,GAAgBA,IAAIA,KAAKA,CAACA,MAAMA,CAACA,CAACA,CAACA;QAIhDA,CAACA;QACFD,mBAACA;IAADA,CAACA,IAAAT;IAhCDA,gCAgCCA;AACFA,CAACA,yBAAA;ACrCD,+CAA+C;AAE/C,IAAO,KAAK;AAaX,CAbD,UAAO,KAAK;IAEXA;QAOCW;YALAC,KAAOA,IAAIA,GAAUA,CAACA,CAACA;YACvBA,KAAOA,MAAMA,GAAUA,CAACA,CAACA;YACzBA,KAAOA,OAAOA,GAAUA,CAACA,CAACA;YAC1BA,KAAOA,GAAGA,GAAUA,CAACA,CAACA;QAItBA,CAACA;QACFD,mBAACA;IAADA,CAACA,IAAAX;IAVDA,gCAUCA;AACFA,CAACA,yBAAA;ACfD,+CAA+C;AAE/C,IAAO,KAAK;AAoBX,CApBD,UAAO,KAAK;IAEXA;QAcCa;YAXAC,KAAOA,mBAAmBA,GAAWA,KAAKA,CAACA;YAC3CA,KAAOA,SAASA,GAAcA,EAAEA,CAACA;YACjCA,KAAOA,UAAUA,GAAUA,8BAA8BA,CAACA;QAW1DA,CAACA;QATDD,+BAAmCA,GAAGA;QACtCA,6BAAiCA,EAAEA;QACnCA,oBAAwBA,CAACA;QACzBA,uBAA2BA,CAACA;QAC5BA,wBAA4BA,CAACA;QAC7BA,2BAAwBA,IAAIA,KAAKA,CAACA,OAAOA,CAACA,CAACA;QAK5CA,iBAACA;IAADA,CAACA,IAAAb;IAjBDA,4BAiBCA;AACFA,CAACA,yBAAA;ACtBD,+CAA+C;AAE/C,IAAO,KAAK;AA4CX,CA5CD,UAAO,KAAK;IAEXA;QAAAe;;AAyCCA,QAvCAA,uBAAoCA;YAGnCA,IAAIA,WAAKA,CAACA,sBAAsBA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC3FA,IAAIA,WAAKA,CAACA,2BAA2BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC/FA,IAAIA,WAAKA,CAACA,2BAA2BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC/FA,IAAIA,WAAKA,CAACA,2BAA2BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC/FA,IAAIA,WAAKA,CAACA,2BAA2BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC/FA,IAAIA,WAAKA,CAACA,4BAA4BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACjGA,IAAIA,WAAKA,CAACA,8BAA8BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAClGA,IAAIA,WAAKA,CAACA,8BAA8BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAClGA,IAAIA,WAAKA,CAACA,6BAA6BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAClGA,IAAIA,WAAKA,CAACA,iCAAiCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACtGA,IAAIA,WAAKA,CAACA,wCAAwCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC7GA,IAAIA,WAAKA,CAACA,mCAAmCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACvGA,IAAIA,WAAKA,CAACA,iCAAiCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACtGA,IAAIA,WAAKA,CAACA,4BAA4BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAGjGA,IAAIA,WAAKA,CAACA,0CAA0CA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC/GA,IAAIA,WAAKA,CAACA,2BAA2BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAChGA,IAAIA,WAAKA,CAACA,2BAA2BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAChGA,IAAIA,WAAKA,CAACA,4CAA4CA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAChHA,IAAIA,WAAKA,CAACA,0CAA0CA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC9GA,IAAIA,WAAKA,CAACA,0CAA0CA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC9GA,IAAIA,WAAKA,CAACA,2BAA2BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAChGA,IAAIA,WAAKA,CAACA,6BAA6BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAClGA,IAAIA,WAAKA,CAACA,qCAAqCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC1GA,IAAIA,WAAKA,CAACA,0CAA0CA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC3GA,IAAIA,WAAKA,CAACA,0CAA0CA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC3GA,IAAIA,WAAKA,CAACA,0CAA0CA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAC3GA,IAAIA,WAAKA,CAACA,4BAA4BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACjGA,IAAIA,WAAKA,CAACA,4BAA4BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YACjGA,IAAIA,WAAKA,CAACA,gCAAgCA,EAAEA,CAACA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,gCAAgCA,EAAEA,CAACA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,gCAAgCA,EAAEA,CAACA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,+BAA+BA,EAAEA,CAACA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,aAAaA,EAAEA,CAACA,EAAEA,KAAKA,EAAEA,KAAKA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,KAAKA,EAAEA,KAAKA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;YAGt3BA,IAAIA,WAAKA,CAACA,0DAA0DA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,iCAAiCA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,2DAA2DA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,+CAA+CA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,uCAAuCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,4BAA4BA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,KAAKA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,oCAAoCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA,EAAEA,IAAIA,WAAKA,CAACA,uCAAuCA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;SAE74BA;QACFA,eAACA;IAADA,CAACA,IAAAf;IAzCDA,wBAyCCA;AACFA,CAACA,yBAAA;AC9CD,kDAAkD;AAElD,IAAO,KAAK;AA2CX,CA3CD,UAAO,KAAK;KAAZA,UAAaA,SAASA;QAErBiB;YASCC,gBAAYA,IAAWA,EAAEA,OAAcA,EAAEA,KAAYA,EAAEA,OAAcA,EAAEA,KAAYA,EAAEA,MAAaA,EAAEA,MAAcA,EAAEA,UAAkBA,EAAEA,QAAgBA,EAAEA,MAAcA;gBAEvKC,IAAIA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,EAAEA,CAACA,CAACA;gBACjCA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,EAAEA,CAACA,CAACA;gBACjCA,IAAIA,CAACA,KAAKA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,KAAKA,CAACA,CAACA;;gBAExCA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;gBAChBA,IAAIA,CAACA,CAACA,CAACA,MAAMA,GAAGA,OAAOA;gBACvBA,IAAIA,CAACA,CAACA,CAACA,IAAIA,GAAGA,KAAKA;gBACnBA,IAAIA,CAACA,CAACA,CAACA,MAAMA,GAAGA,OAAOA;gBACvBA,IAAIA,CAACA,CAACA,CAACA,IAAIA,GAAGA,KAAKA;gBACnBA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;gBACpBA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,MAAMA;gBAC1BA,IAAIA,CAACA,KAAKA,CAACA,UAAUA,GAAGA,UAAUA;gBAClCA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,GAAGA,QAAQA;gBAC9BA,IAAIA,CAACA,KAAKA,CAACA,MAAMA,GAAGA,MAAMA;YAC3BA,CAACA;YACFD,cAACA;QAADA,CAACA,IAAAD;QA1BDA,0BA0BCA;;QAEDA;YAAAG;;AAICA,YAADA,UAACA;QAADA,CAACA,IAAAH;QAJDA,kBAICA;;QAEDA;YAAAK;;AAMCA,YAADA,aAACA;QAADA,CAACA,IAAAL;QANDA,wBAMCA;IACFA,CAACA,6CAAAjB;oCAAAA;AAADA,CAACA,yBAAA;AC7CD,kDAAkD;AAElD,IAAO,KAAK;AAyGX,CAzGD,UAAO,KAAK;KAAZA,UAAaA,SAASA;QAErBiB;YAmGCO;YAEAC,CAACA;YAtDDD;gBAAAA,KAAAA;oBAGCA,IAAIA,CAACA,SAASA,CAACA,IAAIA,CAAEA;wBAEpBA,SAASA,CAACA,IAAIA,GAAGA,IAAIA,KAAKA,CAASA,CAACA;wBACpCA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAClHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;;wBAElHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,SAASA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACrHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,MAAMA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,MAAMA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBAChHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,SAASA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;;wBAErHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;;wBAEpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;wBACpHA,SAASA,CAACA,IAAIA,CAACA,KAAKA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,MAAMA,CAACA,QAAQA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,QAAQA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,EAAEA,IAAIA,CAACA;qBAGpHA;;oBAEDA,OAAOA,SAASA,CAACA,IAAIA;gBAEtBA,CAACA;;;;AAAAA,YAMFA,iBAACA;QAADA,CAACA,IAAAP;QAtGDA,gCAsGCA;IACFA,CAACA,6CAAAjB;oCAAAA;AAADA,CAACA,yBAAA;AC3GD,kDAAkD;AAElD,IAAO,KAAK;AAeX,CAfD,UAAO,KAAK;KAAZA,UAAaA,SAASA;QAErBiB;YAMCS,cAAYA,IAAkBA,EAAEA,OAAqBA;gBAAzCC,mCAAAA,IAAIA,GAAUA,IAAIA;AAAAA,gBAAEA,sCAAAA,OAAOA,GAAUA,IAAIA;AAAAA,gBAJrDA,KAAOA,IAAIA,GAAUA,EAAEA,CAACA;gBACxBA,KAAOA,OAAOA,GAAUA,CAACA,CAACA;gBAKzBA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;gBAChBA,IAAIA,CAACA,OAAOA,GAAGA,OAAOA;gBACtBA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,SAASA,CAACA,CAACA;YACvCA,CAACA;YACFD,YAACA;QAADA,CAACA,IAAAT;QAZDA,sBAYCA;IACFA,CAACA,6CAAAjB;oCAAAA;AAADA,CAACA,yBAAA;ACjBD,kDAAkD;AAElD,IAAO,KAAK;AAqFX,CArFD,UAAO,KAAK;KAAZA,UAAaA,SAASA;QAGrBiB;YAMCW,aAAYA,IAAWA,EAAEA,IAAWA;gBAEnCC,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;gBAChBA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;YACjBA,CAACA;YACFD,WAACA;QAADA,CAACA,IAAAX;QAXDA,oBAWCA;;QAEDA;YAiECa;;;;;;;;;;;;;;;cADGA;YACHA;YAEAC,CAACA;YA9CDD;gBAAAA,KAAAA;oBAGCA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,CAAEA;wBAEjBA,MAAMA,CAACA,IAAIA,GAAGA,IAAIA,KAAKA,CAASA,CAACA;wBACjCA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,kBAAkBA,CAACA;wBACrEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,mBAAmBA,CAACA;wBACtEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,iBAAiBA,CAACA;wBACpEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,oBAAoBA,CAACA;wBACvEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,kBAAkBA,CAACA;wBACrEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,eAAeA,CAACA;wBAClEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,eAAeA,CAACA;wBAClEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,uBAAuBA,CAACA;wBAC1EA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,iBAAiBA,CAACA;wBACpEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,iBAAiBA,CAACA;wBACpEA,MAAMA,CAACA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,SAASA,CAACA;wBAC3DA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,gBAAgBA,CAACA;wBACnEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,eAAeA,CAACA;wBAClEA,MAAMA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,GAAGA,CAACA,IAAIA,EAAEA,SAASA,CAACA;qBAG5DA;;oBAEDA,OAAOA,MAAMA,CAACA,IAAIA;gBAEnBA,CAACA;;;;AAAAA,YAqBFA,cAACA;QAADA,CAACA,IAAAb;QApEDA,0BAoECA;IACFA,CAACA,6CAAAjB;oCAAAA;AAADA,CAACA,yBAAA;ACvFD,kDAAkD;AAElD,IAAO,KAAK;AAuIX,CAvID,UAAO,KAAK;KAAZA,UAAaA,SAASA;QAErBiB;YAMCe,iBAAYA,KAAYA,EAAEA,IAAWA,EAAEA,KAAYA;gBAElDC,IAAIA,CAACA,KAAKA,GAAGA,KAAKA;gBAClBA,IAAIA,CAACA,IAAIA,GAAGA,IAAIA;gBAChBA,IAAIA,CAACA,KAAKA,GAAGA,KAAKA;YACnBA,CAACA;YACFD,eAACA;QAADA,CAACA,IAAAf;QAZDA,4BAYCA;;QAEDA;YAmHCiB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAlCGA;YACHA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAgCGA;YACHA;YAEAC,CAACA;YAhHDD;gBAAAA,KAAAA;oBAGCA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,CAAEA;wBAErBA,UAAUA,CAACA,IAAIA,GAAGA,IAAIA,KAAKA,CAASA,CAACA;wBACrCA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAChEA,UAAUA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAC9DA,UAAUA,CAACA,IAAIA,CAACA,GAAGA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAC7DA,UAAUA,CAACA,IAAIA,CAACA,YAAYA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBACtEA,UAAUA,CAACA,IAAIA,CAACA,kBAAkBA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAC5EA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAChEA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,CAACA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;;wBAEhEA,YAAYA;wBACZA,UAAUA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAC/DA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBACjEA,UAAUA,CAACA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;;wBAE/DA,UAAUA;wBACVA,UAAUA,CAACA,IAAIA,CAACA,UAAUA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA;wBACnEA,UAAUA,CAACA,IAAIA,CAACA,eAAeA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAACA;;wBAExEA,SAASA;wBACTA,UAAUA,CAACA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAClEA,UAAUA,CAACA,IAAIA,CAACA,QAAQA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBACnEA,UAAUA,CAACA,IAAIA,CAACA,MAAMA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;;wBAEjEA,MAAMA;wBACNA,UAAUA,CAACA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBAClEA,UAAUA,CAACA,IAAIA,CAACA,SAASA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBACpEA,UAAUA,CAACA,IAAIA,CAACA,YAAYA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBACvEA,UAAUA,CAACA,IAAIA,CAACA,WAAWA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;;wBAEtEA,SAASA;wBACTA,UAAUA,CAACA,IAAIA,CAACA,SAASA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;wBACpEA,UAAUA,CAACA,IAAIA,CAACA,QAAQA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,OAAOA,CAACA,EAAEA,EAAEA,GAAGA,EAAEA,CAACA,CAACA;qBAEnEA;;oBAEDA,OAAOA,UAAUA,CAACA,IAAIA;gBAEvBA,CAACA;;;;AAAAA,YAuEFA,kBAACA;QAADA,CAACA,IAAAjB;QAtHDA,kCAsHCA;IACFA,CAACA,6CAAAjB;oCAAAA;AAADA,CAACA,yBAAA;ACzID,kDAAkD;AAElD,IAAO,KAAK;AAwTX,CAxTD,UAAO,KAAK;KAAZA,UAAaA,SAASA;QAErBiB;YAMCmB;gBAECC,IAAIA,CAACA,CAACA,GAAGA,EAAEA;gBACXA,IAAIA,CAACA,GAAGA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,IAAIA,CAACA,CAACA;YACtCA,CAACA;YAEDD,uCAAAA,UAAgBA,MAAaA,EAAEA,QAAeA,EAAEA,WAAkBA;gBAAnCE,uCAAAA,QAAQA,GAAGA,IAAIA;AAAAA,gBAAEA,0CAAAA,WAAWA,GAAGA,IAAIA;AAAAA,gBAEjEA,IAAIA,CAACA,WAAWA,CAAEA;oBACjBA,WAAWA,GAAGA,CAACA;iBACfA;;gBAEDA,IAAIA,QAAQA,CAAEA;oBACbA,IAAIA,CAACA,SAASA,CAACA,QAAQA,EAAEA,WAAWA,CAACA;iBACrCA;;gBAEDA,IAAIA,KAAKA,GAAGA,MAAMA,CAACA,OAAOA,CAACA,cAAcA,EAAEA,IAAIA,CAACA,CAACA,KAAKA,CAACA,IAAIA,CAACA;;gBAE5DA,KAAKA,IAAIA,CAACA,IAAIA,KAAKA,CAAEA;oBACpBA,IAAIA,CAACA,WAAWA,CAACA,KAAKA,CAACA,CAACA,CAACA,EAAEA,CAACA,CAACA;iBAC7BA;;gBAEDA,OAAOA,IAAIA,CAACA,CAACA;YACdA,CAACA;;YAEDF,0CAAAA,UAAoBA,IAAIA,EAAEA,MAAMA;gBAE/BG,IAAIA,YAAYA,GAAUA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,CAACA;gBAC3CA,IAAIA,YAAYA,IAAIA,CAACA,CAACA,CAAEA;oBACvBA,IAAIA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,EAAEA,YAAYA,CAACA;iBAClCA;gBACDA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,YAAYA,EAAEA,EAAEA,CAACA,EAAEA,qBAAqBA;gBAC5DA,IAAIA,CAACA,CAACA,IAAIA,CAACA,MAAMA,GAAGA,CAACA,CAAEA,CAAEA;oBACxBA,MAAOA;iBACPA;gBACDA,IAAIA,KAAKA,GAAUA,IAAIA,CAACA,MAAMA,CAACA,OAAOA,CAACA;gBACvCA,IAAIA,IAAIA,GAAYA,IAAIA;gBACxBA,IAAIA,KAAKA,IAAIA,CAACA,CAACA,CAAEA;oBAChBA,IAAIA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAACA,CAACA,KAAKA,CAACA,iBAAiBA,CAACA;oBACjDA,IAAIA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,CAACA,EAAEA,KAAKA,CAACA;iBAC3BA;;gBAEDA,qBAAqCA;gBACrCA,IAAIA,MAAMA,GAAGA,IAAIA,CAACA,KAAKA,CAACA,mBAAmBA,CAACA;gBAC5CA,IAAIA,CAACA,MAAMA,IAAIA,MAAMA,CAACA,MAAMA,GAAGA,CAACA,CAAEA;oBACjCA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,CAACA,CAAEA;wBACrBA,OAAOA,CAACA,GAAGA,CAACA,oBAAoBA,GAAGA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA,CAACA;qBACxDA;oBACDA,MAAOA;iBACPA;;gBAGDA,QAAQA,MAAMA,CAACA,CAACA,CAACA,CAACA;oBACjBA,KAAKA,MAAMA;wBACVA,IAAIA,CAACA,SAASA,CAACA,MAAMA,CAACA,CAACA,CAACA,EAAEA,MAAMA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA;wBAC5CA,KAAMA;AAAAA,oBACPA,KAAKA,SAASA;wBACbA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAAEA;4BACdA,MAAMA,oBAAoBA;yBAC1BA;wBACDA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,CAACA,QAAQA,GAAGA,CAACA;wBAC1BA,IAAIA,CAACA,GAAGA,GAAGA,IAAIA;wBACfA,MAAOA;AAAAA,oBACRA;wBACCA,IAAIA,CAACA,IAAIA,CAACA,GAAGA,CAAEA;4BACdA,OAAOA,CAACA,GAAGA,CAACA,oBAAoBA,GAAGA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA,GAAGA,mCAAmCA,CAACA;4BAC9FA,MAAOA;yBACPA;wBACDA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,IAAIA,IAAIA,SAASA,CAAEA;4BAC/BA,MAAOA;yBACPA;wBACDA,IAAIA,EAAEA,GAAmDA,yBAASA,CAACA,GAAGA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA;wBACjFA,IAAIA,CAACA,EAAEA,CAAEA;4BACRA,MAAMA,aAAaA,GAAGA,MAAMA,CAACA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA;yBAC5DA;;wBACDA,kDAAkDA;wBAElDA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,CAACA,GAAGA,EAAEA,EAAEA,CAACA,MAAMA,CAACA;wBACpCA,IAAIA,EAAEA,GAAUA,CAACA;wBACjBA,IAAIA,EAAEA,CAACA,IAAIA,IAAIA,EAAEA,CAACA,IAAIA,IAAIA,MAAMA,CAAEA;4BACjCA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,CAACA,GAAGA,EAAEA,MAAMA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,IAAIA,CAACA,CAAEA;gCACpDA,MAAMA,2BAA2BA,GAAGA,MAAMA,CAACA,EAAEA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA;6BAC/EA;yBACDA,KAAMA;4BACNA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,GAAGA,CAACA;yBAC5BA;;wBAEDA,IAAIA,EAAEA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA,MAAMA,IAAIA,MAAMA,CAAEA;4BAClCA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,CAACA,GAAGA,EAAEA,MAAMA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA;gCAAEA,MAAMA,sBAAsBA,GAAGA,MAAMA,CAACA,EAAEA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA,CAACA;yBAC/HA,KAAMA;4BACNA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,GAAGA,CAACA;yBAC5BA;;wBAEDA,IAAIA,EAAEA,CAACA,CAACA,IAAIA,EAAEA,CAACA,CAACA,CAACA,MAAMA,IAAIA,MAAMA,CAAEA;4BAClCA,IAAIA,EAAEA,CAACA,CAACA,CAACA,MAAMA,IAAIA,SAASA,CAAEA;gCAC7BA,IAAIA,CAACA,IAAIA,CAACA,WAAWA,CAACA,IAAIA,CAACA,GAAGA,EAAEA,MAAMA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAAEA;oCAC1DA,MAAMA,uBAAuBA,GAAGA,MAAMA,CAACA,EAAEA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA;iCAC3EA;6BACDA,KAAMA;gCACNA,IAAIA,CAACA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,CAACA,GAAGA,EAAEA,MAAMA,CAACA,EAAEA,EAAEA,CAACA,EAAEA,EAAEA,CAACA,CAACA,CAACA,CAAEA;oCACnDA,MAAMA,sBAAsBA,GAAGA,MAAMA,CAACA,EAAEA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,GAAGA,MAAMA,GAAGA,IAAIA,GAAGA,IAAIA;iCAC1EA;6BACDA;yBACDA,KAAMA;4BACNA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,GAAGA,CAACA;yBAC5BA;wBACDA,KAAMA;AAAAA,iBACPA;YACFA,CAACA;;YAEDH,yCAAAA,UAAkBA,EAAuBA;gBAExCI,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,IAAIA,CAACA,EAAGA,cAAcA;gBAChDA,EAAEA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA,EAAEA,CAACA,OAAOA,CAACA;gBACpCA,IAAIA,EAAEA,CAACA,OAAOA,IAAIA,IAAIA,CAAEA;oBACvBA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA,EAAEA,6BAA6BA;iBAC3DA;gBACDA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,IAAIA,CAACA,EAAGA,iBAAiBA;gBACnDA,QAAQA,EAAEA,CAACA,IAAIA,CAACA;oBACfA,KAAKA,UAAUA;wBACdA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;wBAC5BA,KAAMA;AAAAA,oBACPA,KAAKA,QAAQA;wBACZA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;wBAC5BA,KAAMA;AAAAA,oBACPA,KAAKA,KAAKA;wBACTA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;wBAC5BA,KAAMA;AAAAA,oBACPA;wBACCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,IAAIA,CAACA;wBAC/BA,KAAMA;AAAAA,iBACPA;YACFA,CAACA;;YAEDJ,yCAAAA,UAAkBA,EAAuBA,EAAEA,MAAMA;gBAEhDK,EAAEA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA,MAAMA,CAACA;gBAChCA,0CAA2CA;YAC5CA,CAACA;;YAEDL,4CAAAA,UAAqBA,EAAuBA;gBAE3CM,EAAEA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA;YAC5BA,CAACA;;YAEDN,4CAAAA,UAAqBA,EAAEA;gBAEtBO,EAAEA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA;gBAC3BA,EAAEA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA,CAACA,CAACA;YAC5BA,CAACA;;YAEDP,uCAAAA,UAAgBA,EAAEA,EAAEA,KAAKA,EAAEA,MAAMA;gBAGhCQ,6FAA6FA;gBAC7FA,IAAIA,GAAGA,GAAGA,KAAKA,CAACA,KAAKA,CAACA,2CAA2CA,CAACA;;gBAElEA,+GAA+GA;gBAC/GA,+IAA+IA;gBAE/IA,IAAIA,CAACA,sBAAMA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;oBAAEA,OAAOA,KAAKA,CAACA;gBACtCA,IAAIA,EAAEA,GAAGA,EAAEA,GAAGA,EAACA,GAAGA,CAACA,CAACA,CAACA,GAAEA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA,IAAIA,EAACA,sBAAMA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CAACA,IAAIA,EAAEA,IAAIA,EAACA,IAAIA,CAACA,YAAYA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,EAAEA;gBACjGA,EAAEA,CAACA,IAAIA,CAACA,kBAAkBA,CAACA,EAAEA,CAACA,GAAGA,CAACA;gBAClCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,EAAEA,CAACA,IAAIA,CAACA;gBAClCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,EAAEA,CAACA,IAAIA,CAACA;;gBAClCA,sCAAsCA;gBACtCA,OAAOA,IAAIA;YACZA,CAACA;;YAEDR,2CAAAA,UAAoBA,CAAQA;gBAE3BS,IAAIA,CAACA,CAACA;oBAAEA,OAAOA,GAAGA,CAACA;gBACnBA,IAAIA,CAACA,GAAGA,CAACA;gBACTA,IAAIA,CAACA,CAACA,OAAOA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;oBAAEA,CAACA,IAAIA,CAACA,CAACA;gBACjCA,IAAIA,CAACA,CAACA,OAAOA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;oBAAEA,CAACA,IAAIA,CAACA,CAACA;gBACjCA,IAAIA,CAACA,CAACA,OAAOA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;oBAAEA,CAACA,IAAIA,CAACA,CAACA;gBACjCA,IAAIA,CAACA,CAACA,OAAOA,CAACA,GAAGA,CAACA,IAAIA,CAACA,CAACA;oBAAEA,CAACA,IAAIA,CAACA,CAACA;gBACjCA,OAAOA,CAACA;YACTA,CAACA;;YAEDT,8CAAAA,UAAuBA,CAACA;gBAEvBU,IAAIA,CAACA,CAACA,CAAEA;oBACPA,OAAOA,IAAIA;iBACXA;gBACDA,IAAIA,WAAWA,GAAGA,EAAEA,CAACA,EAACA,CAACA,EAAEA,CAACA,EAACA,CAACA,EAAEA,CAACA,EAACA,CAACA,EAAEA,CAACA,EAACA,CAACA,EAAEA;gBACxCA,IAAIA,EAAEA,GAAGA,CAACA;;gBAEVA,IAAIA,CAACA,CAACA,MAAMA,CAACA,CAACA,CAACA,IAAIA,GAAGA,CAAEA;oBACvBA,MAAMA,uBAAuBA;iBAC7BA;;gBAEDA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,CAACA,CAAEA;oBACjBA,EAAEA,IAAIA,WAAWA,CAACA,CAACA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA;iBAC9BA;;gBAEDA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,CAACA,CAAEA;oBACjBA,EAAEA,IAAIA,WAAWA,CAACA,CAACA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA;iBACnCA,KAAMA;oBACNA,EAAEA,IAAIA,CAACA,EAAEA,GAAGA,CAACA,CAACA,IAAIA,CAACA;iBACnBA;;gBAEDA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,CAACA,CAAEA;oBACjBA,EAAEA,IAAIA,WAAWA,CAACA,CAACA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA;iBACnCA,KAAMA;oBACNA,EAAEA,IAAIA,CAACA,EAAEA,GAAGA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA,IAAIA,CAACA;iBAC1BA;;gBAEDA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,CAACA,CAAEA;oBACjBA,EAAEA,IAAIA,WAAWA,CAACA,CAACA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA;iBACnCA,KAAMA;oBACNA,EAAEA,IAAIA,CAACA,EAAEA,GAAGA,CAACA,CAACA,IAAIA,CAACA,CAACA,CAACA,IAAIA,CAACA;iBAC1BA;;gBAEDA,OAAOA,EAAEA;YACVA,CAACA;;YAEDV,0CAAAA,UAAmBA,EAAuBA,EAAEA,KAAKA,EAAEA,KAAKA,EAAEA,IAAIA;gBAE7DW,IAAIA,GAAGA,GAAYA,KAAKA,CAACA,KAAKA,CAACA,UAAUA,CAACA;gBAC1CA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAAEA;oBACpBA,OAAOA,KAAKA;iBACZA;gBACDA,EAAEA,CAACA,IAAIA,CAACA,kBAAkBA,CAACA,QAAQA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CAACA;gBAC5CA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA,EAAIA,OAAOA;gBACvCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;;gBAC5BA;;;;;kBAKGA;gBACHA,IAAIA,WAAWA,GAAUA,GAAGA;gBAC5BA,IAAIA,aAAaA,GAAUA,CAACA;gBAC5BA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;oBAC5CA,IAAIA,CAACA,GAAqDA,0BAAUA,CAACA,GAAGA,CAAEA,IAAIA,CAACA,CAACA,CAACA,CAACA,WAAWA,CAACA,CAACA,CAAEA;;oBAEjGA,wGAAwGA;oBAExGA,IAAIA,CAACA,CAAEA;wBACNA,IAAIA,CAACA,CAACA,aAAaA,IAAIA,CAACA,CAACA,KAAKA,CAACA,GAAGA,CAACA,CAACA,IAAIA,CAACA,IAAIA,CAACA,CAAEA;4BAC/CA,OAAOA,CAACA,GAAGA,CAACA,mCAAmCA,CAACA;yBAChDA;wBACDA,aAAaA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,KAAKA;wBAClCA,WAAWA,IAAIA,CAACA,CAACA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,KAAKA,CAACA;wBACnCA,WAAWA,IAAIA,CAACA,CAACA,KAAKA,IAAIA,CAACA,CAACA,KAAKA;qBACjCA,KAAMA;wBACNA,OAAOA,CAACA,GAAGA,CAACA,mCAAmCA,EAAEA,IAAIA,CAACA,CAACA,CAACA,CAACA;wBACzDA,YAAYA;qBACZA;iBACDA;gBACDA,EAAEA,CAACA,IAAIA,CAACA,gBAAgBA,CAACA,WAAWA,CAACA;gBACrCA,OAAOA,IAAIA;YACZA,CAACA;;YAEDX,yCAAAA,UAAkBA,EAAEA,EAAEA,KAAKA,EAAEA,KAAKA;gBAEjCY,IAAIA,OAAOA,GAAGA,KAAKA,CAACA,KAAKA,CAACA,6DAA6DA,CAACA;gBACxFA,IAAIA,GAAGA;gBACPA,IAAIA,OAAOA,CAAEA;oBACZA,IAAIA,CAACA,sBAAMA,CAACA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,CAAEA;wBAC5BA,OAAOA,KAAKA;qBACZA;oBACDA,IAAIA,QAAQA,GAAGA,EAAEA,CAACA,EAACA,CAACA,EAAEA,CAACA,EAACA,CAACA,EAAEA,CAACA,EAACA,CAACA,EAAEA,CAACA,EAACA,CAACA,EAAEA;oBACrCA,IAAIA,EAAEA,GAAOA,EAAEA,GAAGA,EAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA,IAAIA,EAACA,sBAAMA,CAACA,GAAGA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,CAACA,IAAIA,EAAEA,OAAOA,EAACA,IAAIA,CAACA,eAAeA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,EAAEA,MAAMA,EAACA,QAAQA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,EAAEA,MAAMA,EAACA,OAAOA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA;oBACnKA,EAAEA,CAACA,IAAIA,CAACA,kBAAkBA,CAACA,EAAEA,CAACA,GAAGA,CAACA;oBAClCA,EAAEA,CAACA,IAAIA,CAACA,SAASA,CAACA,EAAEA,CAACA,MAAMA,CAACA;oBAC5BA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,EAAEA,CAACA,OAAOA,CAACA;oBACrCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,GAAGA,CAACA,EAAEA,eAAeA;oBAC/CA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,EAAEA,CAACA,IAAIA,CAACA;oBAClCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,EAAEA,CAACA,MAAMA,CAACA;oBACpCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,IAAIA,CAACA,CAACA;iBACjCA,KAAMA;oBACNA,GAAGA,GAAGA,KAAKA,CAACA,KAAKA,CAACA,2CAA2CA,CAACA,EAAEA,qCAAqCA;oBACrGA,IAAIA,CAACA,sBAAMA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CAAEA;wBACxBA,OAAOA,KAAKA;qBACZA;oBACDA,IAAIA,EAAEA,GAAOA,EAAEA,GAAGA,EAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,EAAEA,IAAIA,EAACA,sBAAMA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CAACA,IAAIA,EAAEA,OAAOA,EAACA,IAAIA,CAACA,eAAeA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,EAAEA;oBACnGA,EAAEA,CAACA,IAAIA,CAACA,kBAAkBA,CAACA,EAAEA,CAACA,GAAGA,CAACA;oBAClCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;oBAC5BA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,EAAEA,CAACA,OAAOA,CAACA;oBACrCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,EAAEA,CAACA,IAAIA,CAACA;oBAClCA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;oBAC5BA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;oBAC5BA,EAAEA,CAACA,IAAIA,CAACA,iBAAiBA,CAACA,CAACA,CAACA;oBAC5BA,wDAAwDA;iBACxDA;gBACDA,OAAOA,IAAIA;YACZA,CAACA;;YAEDZ,wCAAAA,UAAiBA,QAAQA,EAAEA,OAAOA;gBAEjCa,IAAIA,CAACA,OAAOA,CAAEA;oBACbA,OAAOA,GAAGA,CAACA;iBACXA;gBACDA,IAAIA,IAAIA,CAACA,CAACA,CAACA,QAAQA,CAACA,IAAIA,SAASA,CAAEA;oBAClCA,IAAIA,CAACA,CAACA,CAACA,QAAQA,CAACA,GAAGA,IAAIA,KAAKA,CAACA,SAASA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,OAAOA,CAACA;oBAC9DA,IAAIA,CAACA,UAAUA,CAACA,IAAIA,CAACA,CAACA,CAAEA,QAAQA,CAAEA,CAACA;iBACnCA,MAAMA,IAAIA,IAAIA,CAACA,CAACA,CAACA,QAAQA,CAACA,CAACA,OAAOA,IAAIA,OAAOA,CAAEA;oBAC/CA,MAAMA,6BAA6BA,GAAGA,QAAQA;iBAC9CA;gBACDA,IAAIA,CAACA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,QAAQA,CAACA;YAC5BA,CAACA;YACFb,yBAACA;QAADA,CAACA,IAAAnB;QArTDA,gDAqTCA;IACFA,CAACA,6CAAAjB;oCAAAA;AAADA,CAACA,yBAAA;AC1TD,+CAA+C;AAE/C,IAAO,KAAK;AA8HX,CA9HD,UAAO,KAAK;IAEXA;QAECkD;QAEAC,CAACA;QAEDD,+CAAAA,UAA4BA,KAA0BA;YAErDE,IAAIA,MAAMA,GAAgBA,IAAIA,KAAKA,CAACA,MAAMA,CAACA,CAACA;;YAE5CA,IAAIA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA,IAAIA,IAAIA,CAAEA;gBACrCA,MAAMA,oCAAoCA;aAC1CA;;YAEDA,MAAMA,CAACA,OAAOA,GAAGA,KAAKA,CAACA,eAAeA,CAACA,CAACA;YACxCA,IAAIA,MAAMA,CAACA,OAAOA,IAAIA,IAAIA,CAAEA;gBAC3BA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;gBACxBA,MAAMA,CAACA,OAAOA,KAAKA,CAACA;aACpBA;YACDA,IAAIA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA,IAAIA,IAAIA,CAAEA;gBACrCA,MAAMA,oCAAoCA;aAC1CA;;YAEDA,MAAMA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;YACxCA,QAAQA,MAAMA,CAACA,MAAMA,CAACA;gBACrBA,KAAKA,CAACA;oBACLA,MAAMA,CAACA,IAAIA,GAAGA,UAAUA;oBACxBA,KAAMA;AAAAA,gBACPA,KAAKA,CAACA;oBACLA,MAAMA,CAACA,IAAIA,GAAGA,QAAQA;oBACtBA,KAAMA;AAAAA,gBACPA,KAAKA,CAACA;oBACLA,MAAMA,CAACA,IAAIA,GAAGA,KAAKA;oBACnBA,KAAMA;AAAAA,gBACPA;oBACCA,MAAMA,CAACA,IAAIA,GAAGA,EAAEA;oBAChBA,KAAMA;AAAAA,aACPA;;YAEDA,IAAIA,IAAIA,GAAqBA,IAAIA,KAAKA,CAACA,WAAWA,CAACA,CAACA;YACpDA,IAAIA,MAAMA,GAAiBA,EAAEA;YAC7BA,OAAOA,KAAKA,CAACA,QAAQA,GAAGA,KAAKA,CAACA,MAAMA,CAAEA;gBACrCA,IAAIA,KAAKA,GAAeA,IAAIA,KAAKA,CAACA,KAAKA,CAACA,CAACA;;gBAEzCA,KAAKA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,eAAeA,CAACA,CAACA;gBACtCA,IAAIA,QAAQA,GAAGA,aAAOA,CAACA,YAAYA,CAACA,KAAKA,CAACA,MAAMA,CAACA;gBACjDA,IAAIA,CAACA,QAAQA,CAAEA;oBACdA,MAAMA,2CAA2CA,GAAGA,KAAKA,CAACA,MAAMA;iBAChEA;gBACDA,IAAIA,QAAQA,CAACA,YAAYA,CAAEA;oBAC1BA,IAAIA,CAACA,SAASA,GAAGA,IAAIA;iBACrBA;gBACDA,IAAIA,QAAQA,CAACA,IAAIA,CAAEA;oBAClBA,KAAKA,CAACA,IAAIA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,iBAAiBA,CAACA,CAACA;oBAC7CA,KAAKA,CAACA,IAAIA,CAACA,IAAIA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;oBAC1CA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;oBAC7CA,IAAIA,CAACA,QAAQA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,CAACA,CAACA,KAAKA,CAACA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,KAAKA,CAACA,IAAIA,CAACA,IAAIA;iBACvEA,KAAMA;oBACNA,KAAKA,CAACA,IAAIA,GAAGA,IAAIA;oBACjBA,KAAKA,CAACA,eAAeA,CAACA,CAACA;iBACvBA;gBACDA,IAAIA,QAAQA,CAACA,CAACA,CAAEA;oBACfA,IAAIA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,EAAEA,CAACA,EAAEA,IAAIA,EAAEA,KAAKA,CAACA;iBACrCA,KAAMA;oBACNA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;oBACdA,KAAKA,CAACA,eAAeA,CAACA,CAACA;oBACvBA,KAAKA,CAACA,eAAeA,CAACA,CAACA;iBACvBA;gBACDA,IAAIA,QAAQA,CAACA,CAACA,CAAEA;oBACfA,IAAIA,CAACA,OAAOA,CAACA,KAAKA,CAACA,CAACA,EAAEA,QAAQA,CAACA,YAAYA,GAAGA,CAACA,EAAEA,IAAIA,EAAEA,KAAKA,CAACA;iBAC7DA,KAAMA;oBACNA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;oBACdA,KAAKA,CAACA,eAAeA,CAACA,CAACA;oBACvBA,KAAKA,CAACA,eAAeA,CAACA,CAACA;iBACvBA;gBACDA,MAAMA,CAACA,IAAIA,CAACA,KAAKA,CAACA;aAClBA;YACDA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;YACpBA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;;YAEpBA,OAAOA,IAAIA;QACZA,CAACA;;QAEDF,kCAAAA,UAAeA,CAACA,EAAEA,EAAEA,EAAEA,IAAIA,EAAEA,KAAKA;YAEhCG,CAACA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,iBAAiBA,CAACA,CAACA;YACpCA,CAACA,CAACA,WAAWA,GAAGA,KAAKA,CAACA,QAAQA,CAACA,CAACA;YAChCA,CAACA,CAACA,OAAOA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;YACpCA,CAACA,CAACA,OAAOA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;YACpCA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,MAAMA,CAACA,GAAGA,GAAGA,EAAEA,yCAA0FA;YACnIA,IAAIA,CAACA,CAACA,OAAOA,IAAIA,GAAGA,CAAEA;gBACrBA,UAAUA;gBACVA,CAACA,CAACA,OAAOA,GAAGA,CAACA,CAACA,WAAWA;gBACzBA,CAACA,CAACA,WAAWA,GAAGA,SAASA;gBACzBA,CAACA,CAACA,OAAOA,GAAGA,SAASA;;gBAErBA,UAAWA;gBACXA,CAACA,CAACA,QAAQA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;gBACrCA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,QAAQA,IAAIA,CAACA;gBACvBA,CAACA,CAACA,QAAQA,IAAIA,GAAGA;gBACjBA,CAACA,CAACA,OAAOA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;gBACpCA,CAACA,CAACA,IAAIA,GAAGA,CAACA,CAACA,OAAOA,IAAIA,CAACA;gBACvBA,CAACA,CAACA,OAAOA,IAAIA,GAAGA;gBAChBA,CAACA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;gBACnCA,CAACA,CAACA,MAAMA,GAAGA,CAACA,CAACA,MAAMA,IAAIA,CAACA;gBACxBA,CAACA,CAACA,MAAMA,IAAIA,GAAGA;gBACfA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA,MAAMA,CAACA,GAAGA,CAACA;aAC3BA,KAAMA;gBACNA,CAACA,CAACA,YAAYA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;gBACzCA,CAACA,CAACA,WAAWA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;gBACxCA,CAACA,CAACA,YAAYA,GAAGA,KAAKA,CAACA,gBAAgBA,CAACA,CAACA;aACzCA;YACDA,IAAIA,CAACA,CAACA,YAAYA,CAAEA;gBACnBA,IAAIA,CAACA,WAAWA,GAAGA,IAAIA;aACvBA;YACDA,IAAIA,CAACA,CAACA,CAACA,YAAYA,IAAIA,EAAEA,CAAEA;gBAC1BA,KAAKA,IAAIA,GAAGA,GAAUA,CAACA,EAAEA,GAAGA,GAAGA,EAAEA,EAAEA,GAAGA,EAAEA,CACxCA;oBACCA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,MAAMA,GAAGA,GAAGA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,CAACA,CAACA,OAAOA,CAACA,CAACA,CAACA,CAACA,MAAMA,CAACA;iBAC3EA;aACDA;QACFA,CAACA;QAEFH,qBAACA;IAADA,CAACA,IAAAlD;IA3HDA,oCA2HCA;AACFA,CAACA,yBAAA;AChID,+CAA+C;AAE/C,IAAO,KAAK;AA+OX,CA/OD,UAAO,KAAK;IAEXA;QAAAsD;;AA4OCA,QA1OAA,8BAAAA,UAAaA,IAAsBA;YAGlCE,IAAIA,MAAMA,GAAUA,EAAEA;YACtBA,IAAIA,IAAIA,GAAUA,EAAEA;;YAEpBA,MAAMA,IAAIA,0BAA0BA;YACpCA,IAAIA,GAAGA,GAAGA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,CAACA,CAACA,CAACA;;YAE7BA,mBAAmBA;YACnBA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,IAAIA,QAAQA,CAAEA;gBACjCA,MAAMA,IAAIA,wBAAwBA;aAClCA;YACDA,IAAIA,CAACA,IAAIA,CAACA,WAAWA,CAAEA;gBACtBA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;oBACzDA,IAAIA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CAAEA;wBACzBA,MAAMA,IAAIA,eAAeA,GAAGA,GAAGA,GAAGA,GAAGA,GAAGA,CAACA,GAAGA,KAAKA;qBACjDA;iBACDA;aACDA,KAAMA;gBACNA,MAAMA,IAAIA,eAAeA,GAAGA,GAAGA,GAAGA,QAAQA,GAAGA,eAASA,CAACA,kBAAkBA,GAAGA,MAAMA,EAAiBA,8BAA8BA;aACjIA;;YAGDA,KAAKA,IAAIA,CAACA,GAAGA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,MAAMA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,GAAGA,CAACA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;gBACnFA,IAAIA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,IAAIA,IAAIA,CAACA,QAAQA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CACjDA;oBACCA,MAAMA,IAAIA,OAAOA,GAAGA,GAAGA,GAAGA,GAAGA,GAAGA,CAACA,GAAGA,KAAKA;iBACzCA;aACDA;;YAGDA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;gBACzDA,IAAIA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CAAEA;oBACzBA,MAAMA,IAAIA,mBAAmBA,GAAGA,CAACA,GAAGA,KAAKA;iBACzCA;aACDA;;YAGDA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,MAAMA,IAAIA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,GAAGA,CAACA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;gBAC1FA,IAAIA,IAAIA,CAACA,OAAOA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,IAAIA,IAAIA,CAACA,QAAQA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA,CAAEA;oBAClDA,MAAMA,IAAIA,iBAAiBA,GAAGA,CAACA,GAAGA,KAAKA;iBACvCA;aACDA;;YAEDA,mBAAmBA;YACnBA,IAAIA,QAAQA,GAAiBA,CAACA,IAAIA,EAAEA,MAAMA,EAAEA,IAAIA,EAAEA,EAAEA,CAACA;YACrDA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;gBACrDA,IAAIA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAAEA;oBACrBA,MAAMA,IAAIA,iBAAiBA,GAAGA,QAAQA,CAAEA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAAEA,GAAGA,KAAKA,GAAGA,CAACA,GAAGA,KAAKA;iBACtFA;aACDA;;YAEDA,wDAAwDA;YACxDA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,IAAIA,QAAQA,CAAEA;gBACjCA,MAAMA,IAAIA,gBAAgBA;aAC1BA;YACDA,IAAIA,IAAIA,CAACA,UAAUA,CAAEA;gBACpBA,MAAMA,IAAIA,uBAAuBA;aACjCA;;YACDA,uBAAwBA;YACxBA,qCAAqCA;YAErCA,qBAAqBA;YACrBA,IAAIA,IAAIA,iBAAiBA;;YAEzBA,KAAKA,IAAIA,CAACA,GAAUA,CAACA,EAAEA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,CAACA,MAAMA,EAAEA,CAACA,EAAEA,CAAEA;gBACnDA,IAAIA,QAAQA,GAAGA,aAAOA,CAACA,YAAYA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,MAAMA,CAACA;gBAC1DA,IAAIA,CAACA,QAAQA,CAAEA;oBACdA,MAAMA,2CAA2CA;oBACjDA,kBAAkBA;iBAClBA;gBACDA,IAAIA,QAAQA,GAAGA,QAAQA,CAACA,YAAYA,IAAIA,CAACA;;gBAEzCA,KAAKA,IAAIA,EAAEA,GAAUA,CAACA,EAAEA,EAAEA,GAAGA,QAAQA,EAAEA,EAAEA,EAAEA,CAAEA;oBAC5CA,IAAIA,IAAIA,GAAUA,IAAIA,GAAGA,QAAQA,CAACA,CAACA;oBACnCA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAAEA;wBACxBA,IAAIA,QAAQA,CAACA,YAAYA,CAAEA;4BAC1BA,IAAIA,CAACA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,EAAEA,CAACA,GAAGA,CAACA,CAACA,IAAIA,CAACA,CAAEA;gCAChDA,QAASA;6BACTA;4BACDA,IAAIA,aAAaA,GAAUA,IAAIA,CAACA,WAAWA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,MAAMA,EAAEA,IAAIA,EAAEA,GAAGA,CAACA;4BAC/GA,IAAIA,cAAcA,GAAUA,OAAOA;4BACnCA,IAAIA,cAAcA,GAAGA,CAACA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,CAACA,CAACA,EAAEA,CAACA;4BAC7CA,aAAaA,IAAIA,GAAGA,GAAGA,cAAcA;yBACrCA,KAAMA;4BACNA,IAAIA,aAAaA,GAAUA,IAAIA,CAACA,WAAWA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,MAAMA,EAAEA,IAAIA,EAAEA,GAAGA,CAACA;4BAC/GA,IAAIA,cAAcA;4BAClBA,IAAIA,cAAcA;4BAClBA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,GAAGA,CAAEA;gCACpCA,IAAIA,KAAKA,GAAUA,CAACA;gCACpBA,cAAcA,GAAGA,EAAEA;gCACnBA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,GAAGA,CAACA,CAAEA;oCACjCA,KAAKA,EAAEA;oCACPA,cAAcA,IAAIA,GAAGA;iCACrBA;gCACDA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,GAAGA,CAACA,CAAEA;oCACjCA,KAAKA,EAAEA;oCACPA,cAAcA,IAAIA,GAAGA;iCACrBA;gCACDA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,GAAGA,CAACA,CAAEA;oCACjCA,KAAKA,EAAEA;oCACPA,cAAcA,IAAIA,GAAGA;iCACrBA;gCACDA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA,GAAGA,CAACA,CAAEA;oCACjCA,KAAKA,EAAEA;oCACPA,cAAcA,IAAIA,GAAGA;iCACrBA;gCACDA,aAAaA,IAAIA,GAAGA,GAAGA,cAAcA;gCACrCA,QAAQA,KAAKA,CAACA;oCACbA,KAAKA,CAACA;wCACLA,cAAcA,GAAGA,OAAOA;wCACxBA,KAAMA;AAAAA,oCACPA,KAAKA,CAACA;wCACLA,cAAcA,GAAGA,MAAMA;wCACvBA,KAAMA;AAAAA,oCACPA,KAAKA,CAACA;wCACLA,cAAcA,GAAGA,MAAMA;wCACvBA,KAAMA;AAAAA,oCACPA;wCACCA,MAAMA,6BAA6BA;AAACA,iCACrCA;6BACDA,KAAMA;gCACNA,cAAcA,GAAGA,MAAMA;gCACvBA,cAAcA,GAAGA,MAAMA;6BACvBA;yBACDA;wBACDA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,OAAOA,EAAEA,aAAaA,CAACA;wBAC3CA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,OAAOA,EAAEA,cAAcA,CAACA;wBAC5CA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,KAAKA,EAAEA,cAAcA,CAACA;qBAC1CA;oBACDA,IAAIA,GAAGA,GAAUA,GAAGA;oBACpBA,IAAIA,CAACA,QAAQA,CAACA,IAAIA,IAAIA,QAAQA,CAACA,IAAIA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAAEA;wBAC3DA,GAAGA,GAAGA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,IAAIA,CAACA,IAAIA;qBAC9BA;oBACDA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,CAAEA;wBACrBA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,EAAEA,CAACA,EAAEA,GAAGA,EAAEA,QAAQA,CAACA,MAAMA,EAAEA,IAAIA,EAAEA,GAAGA,CAACA,CAACA;qBACpGA;oBACDA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,CAAEA;wBACrBA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,EAAEA,EAAEA,EAAEA,GAAGA,EAAEA,QAAQA,CAACA,MAAMA,EAAEA,IAAIA,EAAEA,GAAGA,CAACA,CAACA;wBACrGA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,CAACA,OAAOA,IAAIA,GAAGA,CAAEA;4BACpCA,cAAcA;4BACdA,IAAIA,MAAMA,GAAGA,CAACA,IAAIA,EAAEA,MAAMA,EAAEA,IAAIA,CAACA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA;4BACvDA,IAAIA,OAAOA,GAAGA,CAACA,MAAMA,EAAEA,MAAMA,EAAEA,MAAMA,CAACA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA,CAACA,CAACA,CAACA,GAAGA,CAACA;4BAC5DA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,SAASA,EAAEA,MAAMA,CAACA;4BACtCA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,UAAUA,EAAEA,OAAOA,CAACA;4BACxCA,IAAIA,MAAMA,GAAUA,EAAEA;4BACtBA,IAAIA,GAAGA,IAAIA,CAACA,OAAOA,CAACA,MAAMA,EAAEA,MAAMA,CAACA;yBACnCA;qBACDA;oBACDA,IAAIA,IAAIA,IAAIA;iBACZA;aACDA;;YAEDA,4GAA4GA;YAC5GA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,IAAIA,QAAQA,CAAEA;gBACjCA,IAAIA,IAAIA,gFAAgFA;aACxFA;;YAEDA,uBAAuBA;YACvBA,IAAIA,IAAIA,CAACA,UAAUA,CAAEA;gBACpBA,IAAIA,IAAIA,kDAAkDA;aAC1DA;;YAEDA,aAAaA;YACbA,IAAIA,IAAIA,KAAKA;;YAEbA,OAAOA,MAAMA,GAAGA,IAAIA;QACrBA,CAACA;;QAEDF,oCAAAA,UAAmBA,OAAcA,EAAEA,MAAaA,EAAEA,IAAsBA,EAAEA,GAAGA;YAE5EG,QAAQA,OAAOA,CAACA;gBACfA,KAAKA,GAAGA;oBACPA,OAAOA,IAAIA,GAAGA,MAAMA;AAACA,gBACtBA,KAAKA,GAAGA;oBACPA,IAAIA,IAAIA,CAACA,WAAWA,IAAIA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,IAAIA,QAAQA,CAAEA;wBACrDA,OAAOA,SAASA,GAAGA,MAAMA,GAAGA,GAAGA;qBAC/BA,KAAMA;wBACNA,OAAOA,GAAGA,GAAGA,GAAGA,GAAGA,MAAMA;qBACzBA;AAAAA,gBACFA,KAAKA,GAAGA;oBACPA,OAAOA,GAAGA,GAAGA,GAAGA,GAAGA,MAAMA;AAACA,gBAC3BA,KAAKA,GAAGA;oBACPA,OAAOA,IAAIA,CAACA,MAAMA,CAACA,IAAIA,IAAIA,QAAQA,GAAEA,QAAQA,GAAGA,cAAcA;AAACA,gBAChEA,KAAKA,GAAGA;oBACPA,OAAOA,IAAIA,GAAGA,MAAMA;AAACA,gBACtBA,KAAKA,GAAGA;oBACPA,OAAOA,IAAIA,GAAGA,MAAMA;AAACA,gBACtBA,KAAKA,GAAGA;oBACPA,OAAOA,eAAeA;AAACA,gBACxBA;oBACCA,MAAMA,uBAAuBA;AAACA,aAC/BA;QACFA,CAACA;;QAEDH,uCAAAA,UAAsBA,CAACA,EAAEA,OAAOA,EAAEA,GAAGA,EAAEA,QAAQA,EAAEA,IAAIA,EAAEA,GAAGA;YAEzDI,IAAIA,IAAIA,GAAGA,CAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,EAAEA,GAAGA,CAAEA;YACjCA,IAAIA,CAACA;;YAELA,IAAIA,CAACA,CAACA,YAAYA,CAAEA;gBACnBA,CAACA,GAAGA,aAAaA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,CAACA,CAACA,YAAYA,EAAEA,CAACA,CAACA,MAAMA,EAAEA,IAAIA,EAAEA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,WAAWA,CAACA,GAAGA,GAAGA;gBAC3GA,IAAIA,OAAOA,GAAGA,OAAOA,GAAGA,CAACA,CAACA,WAAWA;gBACrCA,IAAIA,OAAOA,GAAGA,CAACA;oBAAEA,CAACA,IAAIA,OAAOA,CAACA,QAAQA,CAACA,CAACA,CAACA;gBACzCA,IAAIA,OAAOA,GAAGA,CAACA;oBAAEA,CAACA,IAAIA,GAAGA,GAAGA,OAAOA,CAACA,QAAQA,CAACA,CAACA,CAACA;gBAC/CA,CAACA,IAAIA,GAAGA;aACRA,KAAMA;gBACNA,CAACA,GAAGA,IAAIA,CAACA,WAAWA,CAACA,CAACA,CAACA,OAAOA,EAAEA,CAACA,CAACA,MAAMA,GAAGA,OAAOA,EAAEA,IAAIA,EAAEA,GAAGA,CAACA;aAC9DA;;YAEDA,6BAAqCA;YACrCA,IAAIA,CAACA,CAACA,OAAOA,IAAIA,GAAGA,CAAEA;gBACrBA,OAAOA,CAACA;aACRA;;YAEDA,+BAA+BA;YAC/BA,IAAIA,QAAQA,CAAEA;gBACbA,OAAOA,CAACA,GAAGA,GAAGA,GAAGA,IAAIA,CAACA,CAACA,CAACA,CAACA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA;aAC3CA;;YAEDA,WAAWA;YACXA,IAAIA,CAACA,CAACA,OAAOA,IAAIA,IAAIA,IAAIA,GAAGA,IAAIA,GAAGA,CAAEA;gBACpCA,OAAOA,CAACA;aACRA;;YAEDA,wCAAwCA;YACxCA,CAACA,IAAIA,GAAGA;YACRA,IAAIA,GAAGA,GAAGA,CAACA;gBAAEA,CAACA,IAAIA,IAAIA,CAACA,CAACA,CAACA,CAACA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA;YAC7CA,IAAIA,GAAGA,GAAGA,CAACA;gBAAEA,CAACA,IAAIA,IAAIA,CAACA,CAACA,CAACA,CAACA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA;YAC7CA,IAAIA,GAAGA,GAAGA,CAACA;gBAAEA,CAACA,IAAIA,IAAIA,CAACA,CAACA,CAACA,CAACA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA;YAC7CA,IAAIA,GAAGA,GAAGA,CAACA;gBAAEA,CAACA,IAAIA,IAAIA,CAACA,CAACA,CAACA,CAACA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA;YAC7CA,OAAOA,CAACA;QACTA,CAACA;QACFJ,mBAACA;IAADA,CAACA,IAAAtD;IA5ODA,gCA4OCA;AACFA,CAACA,yBAAA;ACjPD,+CAA+C;AAE/C,IAAO,KAAK;AAuCX,CAvCD,UAAO,KAAK;IAGXA;QAAA2D;;AAkCCA,QA7BAA,kCAAAA,UAAeA,WAAkBA,EAAEA,MAAaA;YAE/CE,IAAIA,iBAAiBA,GAAqCA,IAAIA,KAAKA,CAACA,SAASA,CAACA,iBAAiBA,CAACA,CAACA;YACjGA,IAAIA,SAASA,GAAuBA,IAAIA,KAAKA,CAACA,aAAaA,CAACA,CAACA;;YAE7DA,IAAIA,IAAIA;YACRA,IAAIA,YAAYA;YAChBA,QAAQA,WAAWA,CAACA;gBACnBA,KAAKA,QAAQA;oBACZA,YAAYA,GAAGA,iBAAiBA,GAAGA,MAAMA,GAAGA,SAASA;oBACrDA,iBAAiBA,CAACA,QAAQA,CAACA,YAAYA,CAACA;oBACxCA,IAAIA,GAAGA,iBAAiBA,CAACA,CAACA,CAACA,QAAQA,CAACA,CAACA,IAAIA;oBACzCA,KAAMA;AAAAA,gBACPA,KAAKA,UAAUA;oBACdA,YAAYA,GAAGA,mBAAmBA,GAAGA,MAAMA,GAAGA,SAASA;oBACvDA,iBAAiBA,CAACA,QAAQA,CAACA,YAAYA,CAACA;oBACxCA,IAAIA,GAAGA,iBAAiBA,CAACA,CAACA,CAACA,UAAUA,CAACA,CAACA,IAAIA;oBAC3CA,KAAMA;AAAAA,gBACPA;oBACCA,MAAMA,8BAA8BA;AAACA,aACtCA;;YAEDA,IAAIA,WAAWA,GAAqBA,SAASA,CAACA,oBAAoBA,CAACA,IAAIA,CAACA;;YAExEA,IAAIA,MAAMA,GAAqBA,IAAIA,KAAKA,CAACA,WAAWA,CAACA,CAACA;YACtDA,IAAIA,CAACA,IAAIA,GAAGA,MAAMA,CAACA,KAAKA,CAACA,WAAWA,CAACA;;YAErCA,OAAOA,IAAIA,CAACA,IAAIA;QACjBA,CAACA;QACFF,qBAACA;IAADA,CAACA,IAAA3D;IAlCDA,oCAkCCA;AAEFA,CAACA,yBAAA;AEzCD,2CAA2C;AAE3C,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK;AAC/B,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,KAAK;;AAEhC,IAAO,IAAI;AAcV,CAdD,UAAO,IAAI;IAGV16C;;QAGCw+C;YAGCC,WAAMA,KAAAA,CAACA;QAERA,CAACA;QACFD,cAACA;IAADA,CAACA,EAT2Bx+C,IAAIA,CAACA,MAAMA,CAACA,eAAeA,EAStDA;IATDA,qBASCA;AAEFA,CAACA,uBAAA"}
\ No newline at end of file
diff --git a/build/awayjs.next.min.js b/build/awayjs.next.min.js
index 4be6554c..dfc9be31 100644
--- a/build/awayjs.next.min.js
+++ b/build/awayjs.next.min.js
@@ -1,14 +1,16 @@
-var away;!function(away){!function(errors){var Error=function(){function Error(message,id,_name){"undefined"==typeof message&&(message=""),"undefined"==typeof id&&(id=0),"undefined"==typeof _name&&(_name=""),this._errorID=0,this._messsage="",this._name="",this._messsage=message,this._name=name,this._errorID=id}return Object.defineProperty(Error.prototype,"message",{get:function(){return this._messsage},set:function(value){this._messsage=value},enumerable:!0,configurable:!0}),Object.defineProperty(Error.prototype,"name",{get:function(){return this._name},set:function(value){this._name=value},enumerable:!0,configurable:!0}),Object.defineProperty(Error.prototype,"errorID",{get:function(){return this._errorID},enumerable:!0,configurable:!0}),Error}();errors.Error=Error}(away.errors||(away.errors={}));away.errors}(away||(away={}));var __extends=this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);__.prototype=b.prototype,d.prototype=new __},away;!function(away){!function(errors){var ArgumentError=function(_super){function ArgumentError(message,id){"undefined"==typeof message&&(message=null),"undefined"==typeof id&&(id=0),_super.call(this,message||"ArgumentError",id)}return __extends(ArgumentError,_super),ArgumentError}(away.errors.Error);errors.ArgumentError=ArgumentError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var CastError=function(_super){function CastError(message){_super.call(this,message)}return __extends(CastError,_super),CastError}(away.errors.Error);errors.CastError=CastError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var PartialImplementationError=function(_super){function PartialImplementationError(dependency,id){"undefined"==typeof dependency&&(dependency=""),"undefined"==typeof id&&(id=0),_super.call(this,"PartialImplementationError - this function is in development. Required Dependency: "+dependency,id)}return __extends(PartialImplementationError,_super),PartialImplementationError}(away.errors.Error);errors.PartialImplementationError=PartialImplementationError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var AbstractMethodError=function(_super){function AbstractMethodError(message,id){"undefined"==typeof message&&(message=null),"undefined"==typeof id&&(id=0),_super.call(this,message||"An abstract method was called! Either an instance of an abstract class was created, or an abstract method was not overridden by the subclass.",id)}return __extends(AbstractMethodError,_super),AbstractMethodError}(away.errors.Error);errors.AbstractMethodError=AbstractMethodError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var DocumentError=function(_super){function DocumentError(message,id){"undefined"==typeof message&&(message="DocumentError"),"undefined"==typeof id&&(id=0),_super.call(this,message,id)}return __extends(DocumentError,_super),DocumentError.DOCUMENT_DOES_NOT_EXIST="documentDoesNotExist",DocumentError}(away.errors.Error);errors.DocumentError=DocumentError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var RangeError=function(_super){function RangeError(message,id){"undefined"==typeof message&&(message=null),"undefined"==typeof id&&(id=0),_super.call(this,message||"RangeError",id)}return __extends(RangeError,_super),RangeError}(away.errors.Error);errors.RangeError=RangeError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(events){var Event=function(){function Event(type){this.type=void 0,this.target=void 0,this.type=type}return Event.prototype.clone=function(){return new Event(this.type)},Event.COMPLETE="complete",Event.OPEN="open",Event.ENTER_FRAME="enterFrame",Event.EXIT_FRAME="exitFrame",Event.RESIZE="resize",Event.ERROR="error",Event.CHANGE="change",Event}();events.Event=Event}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var AssetEvent=function(_super){function AssetEvent(type,asset,prevName){"undefined"==typeof asset&&(asset=null),"undefined"==typeof prevName&&(prevName=null),_super.call(this,type),this._asset=asset,this._prevName=prevName||(this._asset?this._asset.name:null)}return __extends(AssetEvent,_super),Object.defineProperty(AssetEvent.prototype,"asset",{get:function(){return this._asset},enumerable:!0,configurable:!0}),Object.defineProperty(AssetEvent.prototype,"assetPrevName",{get:function(){return this._prevName},enumerable:!0,configurable:!0}),AssetEvent.prototype.clone=function(){return new away.events.AssetEvent(this.type,this.asset,this.assetPrevName)},AssetEvent.ASSET_COMPLETE="assetComplete",AssetEvent.ASSET_RENAME="assetRename",AssetEvent.ASSET_CONFLICT_RESOLVED="assetConflictResolved",AssetEvent.TEXTURE_SIZE_ERROR="textureSizeError",AssetEvent}(away.events.Event);events.AssetEvent=AssetEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var CameraEvent=function(_super){function CameraEvent(type,camera){_super.call(this,type),this._camera=camera}return __extends(CameraEvent,_super),Object.defineProperty(CameraEvent.prototype,"camera",{get:function(){return this._camera},enumerable:!0,configurable:!0}),CameraEvent.PROJECTION_CHANGED="projectionChanged",CameraEvent}(away.events.Event);events.CameraEvent=CameraEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var DisplayObjectEvent=function(_super){function DisplayObjectEvent(type,object){_super.call(this,type),this.object=object}return __extends(DisplayObjectEvent,_super),DisplayObjectEvent.VISIBLITY_UPDATED="visiblityUpdated",DisplayObjectEvent.SCENETRANSFORM_CHANGED="scenetransformChanged",DisplayObjectEvent.SCENE_CHANGED="sceneChanged",DisplayObjectEvent.POSITION_CHANGED="positionChanged",DisplayObjectEvent.ROTATION_CHANGED="rotationChanged",DisplayObjectEvent.SCALE_CHANGED="scaleChanged",DisplayObjectEvent}(away.events.Event);events.DisplayObjectEvent=DisplayObjectEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var EventDispatcher=function(){function EventDispatcher(target){"undefined"==typeof target&&(target=null),this.listeners=new Array,this.target=target||this}return EventDispatcher.prototype.addEventListener=function(type,listener){void 0===this.listeners[type]&&(this.listeners[type]=new Array),-1===this.getEventListenerIndex(type,listener)&&this.listeners[type].push(listener)},EventDispatcher.prototype.removeEventListener=function(type,listener){var index=this.getEventListenerIndex(type,listener);-1!==index&&this.listeners[type].splice(index,1)},EventDispatcher.prototype.dispatchEvent=function(event){var listenerArray=this.listeners[event.type];if(void 0!==listenerArray){var l=listenerArray.length;event.target=this.target;for(var i=0;l>i;i++)listenerArray[i](event)}},EventDispatcher.prototype.getEventListenerIndex=function(type,listener){if(void 0!==this.listeners[type])for(var a=this.listeners[type],l=a.length,i=0;l>i;i++)if(listener==a[i])return i;return-1},EventDispatcher.prototype.hasEventListener=function(type,listener){return null!=listener?-1!==this.getEventListenerIndex(type,listener):void 0!==this.listeners[type]?this.listeners[type].length>0:!1},EventDispatcher}();events.EventDispatcher=EventDispatcher}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var HTTPStatusEvent=function(_super){function HTTPStatusEvent(type,status){"undefined"==typeof status&&(status=null),_super.call(this,type),this.status=status}return __extends(HTTPStatusEvent,_super),HTTPStatusEvent.HTTP_STATUS="HTTPStatusEvent_HTTP_STATUS",HTTPStatusEvent}(away.events.Event);events.HTTPStatusEvent=HTTPStatusEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var IOErrorEvent=function(_super){function IOErrorEvent(type){_super.call(this,type)}return __extends(IOErrorEvent,_super),IOErrorEvent.IO_ERROR="ioError",IOErrorEvent}(away.events.Event);events.IOErrorEvent=IOErrorEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var ProjectionEvent=function(_super){function ProjectionEvent(type,projection){_super.call(this,type),this._projection=projection}return __extends(ProjectionEvent,_super),Object.defineProperty(ProjectionEvent.prototype,"projection",{get:function(){return this._projection},enumerable:!0,configurable:!0}),ProjectionEvent.MATRIX_CHANGED="matrixChanged",ProjectionEvent}(away.events.Event);events.ProjectionEvent=ProjectionEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var LoaderEvent=function(_super){function LoaderEvent(type,url,content,assets){"undefined"==typeof url&&(url=null),"undefined"==typeof content&&(content=null),"undefined"==typeof assets&&(assets=null),_super.call(this,type),this._url=url,this._content=content,this._assets=assets}return __extends(LoaderEvent,_super),Object.defineProperty(LoaderEvent.prototype,"content",{get:function(){return this._content},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderEvent.prototype,"url",{get:function(){return this._url},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderEvent.prototype,"assets",{get:function(){return this._assets},enumerable:!0,configurable:!0}),LoaderEvent.prototype.clone=function(){return new LoaderEvent(this.type,this._url,this._content,this._assets)},LoaderEvent.RESOURCE_COMPLETE="resourceComplete",LoaderEvent}(away.events.Event);events.LoaderEvent=LoaderEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var ParserEvent=function(_super){function ParserEvent(type,message){"undefined"==typeof message&&(message=""),_super.call(this,type),this._message=message}return __extends(ParserEvent,_super),Object.defineProperty(ParserEvent.prototype,"message",{get:function(){return this._message},enumerable:!0,configurable:!0}),ParserEvent.prototype.clone=function(){return new away.events.ParserEvent(this.type,this.message)},ParserEvent.PARSE_COMPLETE="parseComplete",ParserEvent.PARSE_ERROR="parseError",ParserEvent.READY_FOR_DEPENDENCIES="readyForDependencies",ParserEvent}(away.events.Event);events.ParserEvent=ParserEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var MouseEvent=function(_super){function MouseEvent(type){_super.call(this,type),this._iAllowedToPropagate=!0}return __extends(MouseEvent,_super),Object.defineProperty(MouseEvent.prototype,"bubbles",{get:function(){var doesBubble=this._iAllowedToPropagate;return this._iAllowedToPropagate=!0,doesBubble},enumerable:!0,configurable:!0}),MouseEvent.prototype.stopPropagation=function(){this._iAllowedToPropagate=!1,this._iParentEvent&&this._iParentEvent.stopPropagation()},MouseEvent.prototype.stopImmediatePropagation=function(){this._iAllowedToPropagate=!1,this._iParentEvent&&this._iParentEvent.stopImmediatePropagation()},MouseEvent.prototype.clone=function(){var result=new away.events.MouseEvent(this.type);return result.screenX=this.screenX,result.screenY=this.screenY,result.view=this.view,result.object=this.object,result.materialOwner=this.materialOwner,result.material=this.material,result.uv=this.uv,result.localPosition=this.localPosition,result.localNormal=this.localNormal,result.index=this.index,result.subGeometryIndex=this.subGeometryIndex,result.delta=this.delta,result.ctrlKey=this.ctrlKey,result.shiftKey=this.shiftKey,result._iParentEvent=this,result._iAllowedToPropagate=this._iAllowedToPropagate,result},Object.defineProperty(MouseEvent.prototype,"scenePosition",{get:function(){return this.object.sceneTransform.transformVector(this.localPosition)},enumerable:!0,configurable:!0}),Object.defineProperty(MouseEvent.prototype,"sceneNormal",{get:function(){var sceneNormal=this.object.sceneTransform.deltaTransformVector(this.localNormal);return sceneNormal.normalize(),sceneNormal},enumerable:!0,configurable:!0}),MouseEvent.MOUSE_OVER="mouseOver3d",MouseEvent.MOUSE_OUT="mouseOut3d",MouseEvent.MOUSE_UP="mouseUp3d",MouseEvent.MOUSE_DOWN="mouseDown3d",MouseEvent.MOUSE_MOVE="mouseMove3d",MouseEvent.CLICK="click3d",MouseEvent.DOUBLE_CLICK="doubleClick3d",MouseEvent.MOUSE_WHEEL="mouseWheel3d",MouseEvent}(away.events.Event);events.MouseEvent=MouseEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var MaterialEvent=function(_super){function MaterialEvent(type){_super.call(this,type)}return __extends(MaterialEvent,_super),MaterialEvent.SIZE_CHANGED="sizeChanged",MaterialEvent}(away.events.Event);events.MaterialEvent=MaterialEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var ProgressEvent=function(_super){function ProgressEvent(type){_super.call(this,type)}return __extends(ProgressEvent,_super),ProgressEvent.PROGRESS="progress",ProgressEvent}(away.events.Event);events.ProgressEvent=ProgressEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var RendererEvent=function(_super){function RendererEvent(type){_super.call(this,type)}return __extends(RendererEvent,_super),RendererEvent.VIEWPORT_UPDATED="viewportUpdated",RendererEvent.SCISSOR_UPDATED="scissorUpdated",RendererEvent}(away.events.Event);events.RendererEvent=RendererEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var SceneEvent=function(_super){function SceneEvent(type,displayObject){this.displayObject=displayObject,_super.call(this,type)}return __extends(SceneEvent,_super),SceneEvent.ADDED_TO_SCENE="addedToScene",SceneEvent.REMOVED_FROM_SCENE="removedFromScene",SceneEvent.PARTITION_CHANGED="partitionChanged",SceneEvent}(away.events.Event);events.SceneEvent=SceneEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var StageGLEvent=function(_super){function StageGLEvent(type){_super.call(this,type)}return __extends(StageGLEvent,_super),StageGLEvent.CONTEXTGL_CREATED="contextGLCreated",StageGLEvent.CONTEXTGL_DISPOSED="contextGLDisposed",StageGLEvent.CONTEXTGL_RECREATED="contextGLRecreated",StageGLEvent.VIEWPORT_UPDATED="viewportUpdated",StageGLEvent}(away.events.Event);events.StageGLEvent=StageGLEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var TimerEvent=function(_super){function TimerEvent(type){_super.call(this,type)}return __extends(TimerEvent,_super),TimerEvent.TIMER="timer",TimerEvent.TIMER_COMPLETE="timerComplete",TimerEvent}(away.events.Event);events.TimerEvent=TimerEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(utils){var ByteArrayBase=function(){function ByteArrayBase(){this.position=0,this.length=0,this._mode="",this.Base64Key="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"}return ByteArrayBase.prototype.writeByte=function(){throw"Virtual method"},ByteArrayBase.prototype.readByte=function(){throw"Virtual method"},ByteArrayBase.prototype.writeUnsignedByte=function(){throw"Virtual method"},ByteArrayBase.prototype.readUnsignedByte=function(){throw"Virtual method"},ByteArrayBase.prototype.writeUnsignedShort=function(){throw"Virtual method"},ByteArrayBase.prototype.readUnsignedShort=function(){throw"Virtual method"},ByteArrayBase.prototype.writeUnsignedInt=function(){throw"Virtual method"},ByteArrayBase.prototype.readUnsignedInt=function(){throw"Virtual method"},ByteArrayBase.prototype.writeFloat=function(){throw"Virtual method"},ByteArrayBase.prototype.toFloatBits=function(){throw"Virtual method"},ByteArrayBase.prototype.readFloat=function(){throw"Virtual method"},ByteArrayBase.prototype.fromFloatBits=function(){throw"Virtual method"},ByteArrayBase.prototype.getBytesAvailable=function(){throw new away.errors.AbstractMethodError("ByteArrayBase, getBytesAvailable() not implemented ")},ByteArrayBase.prototype.toString=function(){return"[ByteArray] ( "+this._mode+" ) position="+this.position+" length="+this.length},ByteArrayBase.prototype.compareEqual=function(other,count){(void 0==count||count>this.length-this.position)&&(count=this.length-this.position),count>other.length-other.position&&(count=other.length-other.position);for(var r=!0;r&&count>=4;)count-=4,this.readUnsignedInt()!=other.readUnsignedInt()&&(r=!1);for(;r&&count>=1;)count--,this.readUnsignedByte()!=other.readUnsignedByte()&&(r=!1);var c0;return this.position-=c0-count,other.position-=c0-count,r},ByteArrayBase.prototype.writeBase64String=function(s){for(var i=0;id;d++)sh=lut[x>>(d<<2)&15]+sh;return sh}var oldpos=this.position;this.position=0;for(var nstep=8,i=0;ij&&i+j=3;)b0=getUnsignedByteFunc.apply(self),b1=getUnsignedByteFunc.apply(self),b2=getUnsignedByteFunc.apply(self),enc1=b0>>2,enc2=(3&b0)<<4|b1>>4,enc3=(15&b1)<<2|b2>>6,enc4=63&b2,r+=base64Key.charAt(enc1)+base64Key.charAt(enc2)+base64Key.charAt(enc3)+base64Key.charAt(enc4),count-=3;return 2==count?(b0=getUnsignedByteFunc.apply(self),b1=getUnsignedByteFunc.apply(self),enc1=b0>>2,enc2=(3&b0)<<4|b1>>4,enc3=(15&b1)<<2,r+=base64Key.charAt(enc1)+base64Key.charAt(enc2)+base64Key.charAt(enc3)+"="):1==count&&(b0=getUnsignedByteFunc.apply(self),enc1=b0>>2,enc2=(3&b0)<<4,r+=base64Key.charAt(enc1)+base64Key.charAt(enc2)+"=="),r},ByteArrayBase}();utils.ByteArrayBase=ByteArrayBase}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var ByteArray=function(_super){function ByteArray(){_super.call(this),this.maxlength=0,this._mode="Typed array",this.maxlength=4,this.arraybytes=new ArrayBuffer(this.maxlength),this.unalignedarraybytestemp=new ArrayBuffer(16)}return __extends(ByteArray,_super),ByteArray.prototype.ensureWriteableSpace=function(n){this.ensureSpace(n+this.position)},ByteArray.prototype.setArrayBuffer=function(aBuffer){this.ensureSpace(aBuffer.byteLength),this.length=aBuffer.byteLength;var inInt8AView=new Int8Array(aBuffer),localInt8View=new Int8Array(this.arraybytes,0,this.length);localInt8View.set(inInt8AView),this.position=0},ByteArray.prototype.getBytesAvailable=function(){return this.length-this.position},ByteArray.prototype.ensureSpace=function(n){if(n>this.maxlength){var newmaxlength=n+255&-256,newarraybuffer=new ArrayBuffer(newmaxlength),view=new Uint8Array(this.arraybytes,0,this.length),newview=new Uint8Array(newarraybuffer,0,this.length);newview.set(view),this.arraybytes=newarraybuffer,this.maxlength=newmaxlength}},ByteArray.prototype.writeByte=function(b){this.ensureWriteableSpace(1);var view=new Int8Array(this.arraybytes);view[this.position++]=~~b,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Positon="+this.position+", Length="+this.length;var view=new Int8Array(this.arraybytes);return view[this.position++]},ByteArray.prototype.readBytes=function(bytes,offset,length){"undefined"==typeof offset&&(offset=0),"undefined"==typeof length&&(length=0),null==length&&(length=bytes.length),bytes.ensureWriteableSpace(offset+length);var byteView=new Int8Array(bytes.arraybytes),localByteView=new Int8Array(this.arraybytes);byteView.set(localByteView.subarray(this.position,this.position+length),offset),this.position+=length,length+offset>bytes.length&&(bytes.length+=length+offset-bytes.length)},ByteArray.prototype.writeUnsignedByte=function(b){this.ensureWriteableSpace(1);var view=new Uint8Array(this.arraybytes);view[this.position++]=255&~~b,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readUnsignedByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Positon="+this.position+", Length="+this.length;var view=new Uint8Array(this.arraybytes);return view[this.position++]},ByteArray.prototype.writeUnsignedShort=function(b){if(this.ensureWriteableSpace(2),0==(1&this.position)){var view=new Uint16Array(this.arraybytes);view[this.position>>1]=65535&~~b}else{var view=new Uint16Array(this.unalignedarraybytestemp,0,1);view[0]=65535&~~b;var view2=new Uint8Array(this.arraybytes,this.position,2),view3=new Uint8Array(this.unalignedarraybytestemp,0,2);view2.set(view3)}this.position+=2,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readUTFBytes=function(len){for(var value="",max=this.position+len,data=new DataView(this.arraybytes);this.positionc){if(0==c)break;value+=String.fromCharCode(c)}else if(224>c)value+=String.fromCharCode((63&c)<<6|127&data.getUint8(this.position++));else if(240>c){var c2=data.getUint8(this.position++);value+=String.fromCharCode((31&c)<<12|(127&c2)<<6|127&data.getUint8(this.position++))}else{var c2=data.getUint8(this.position++),c3=data.getUint8(this.position++);value+=String.fromCharCode((15&c)<<18|(127&c2)<<12|c3<<6&127|127&data.getUint8(this.position++))}}return value},ByteArray.prototype.readInt=function(){var data=new DataView(this.arraybytes),int=data.getInt32(this.position,!0);return this.position+=4,int},ByteArray.prototype.readShort=function(){var data=new DataView(this.arraybytes),short=data.getInt16(this.position,!0);return this.position+=2,short},ByteArray.prototype.readDouble=function(){var data=new DataView(this.arraybytes),double=data.getFloat64(this.position,!0);return this.position+=8,double},ByteArray.prototype.readUnsignedShort=function(){if(this.position>this.length+2)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;if(0==(1&this.position)){var view=new Uint16Array(this.arraybytes),pa=this.position>>1;return this.position+=2,view[pa]}var view=new Uint16Array(this.unalignedarraybytestemp,0,1),view2=new Uint8Array(this.arraybytes,this.position,2),view3=new Uint8Array(this.unalignedarraybytestemp,0,2);return view3.set(view2),this.position+=2,view[0]},ByteArray.prototype.writeUnsignedInt=function(b){if(this.ensureWriteableSpace(4),0==(3&this.position)){var view=new Uint32Array(this.arraybytes);view[this.position>>2]=4294967295&~~b}else{var view=new Uint32Array(this.unalignedarraybytestemp,0,1);view[0]=4294967295&~~b;var view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);view2.set(view3)}this.position+=4,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readUnsignedInt=function(){if(this.position>this.length+4)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;if(0==(3&this.position)){var view=new Uint32Array(this.arraybytes),pa=this.position>>2;return this.position+=4,view[pa]}var view=new Uint32Array(this.unalignedarraybytestemp,0,1),view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);return view3.set(view2),this.position+=4,view[0]},ByteArray.prototype.writeFloat=function(b){if(this.ensureWriteableSpace(4),0==(3&this.position)){var view=new Float32Array(this.arraybytes);view[this.position>>2]=b}else{var view=new Float32Array(this.unalignedarraybytestemp,0,1);view[0]=b;var view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);view2.set(view3)}this.position+=4,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readFloat=function(){if(this.position>this.length+4)throw"ByteArray out of bounds read. Positon="+this.position+", Length="+this.length;if(0==(3&this.position)){var view=new Float32Array(this.arraybytes),pa=this.position>>2;return this.position+=4,view[pa]}var view=new Float32Array(this.unalignedarraybytestemp,0,1),view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);return view3.set(view2),this.position+=4,view[0]},ByteArray}(away.utils.ByteArrayBase);utils.ByteArray=ByteArray}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var ByteArrayBuffer=function(_super){function ByteArrayBuffer(){_super.call(this),this._bytes=[],this._mode="Array"}return __extends(ByteArrayBuffer,_super),ByteArrayBuffer.prototype.writeByte=function(b){var bi=~~b;this._bytes[this.position++]=bi,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;return this._bytes[this.position++]},ByteArrayBuffer.prototype.writeUnsignedByte=function(b){var bi=~~b;this._bytes[this.position++]=255&bi,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readUnsignedByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;return this._bytes[this.position++]},ByteArrayBuffer.prototype.writeUnsignedShort=function(b){var bi=~~b;this._bytes[this.position++]=255&bi,this._bytes[this.position++]=bi>>8&255,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readUnsignedShort=function(){if(this.position+2>this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;var r=this._bytes[this.position]|this._bytes[this.position+1]<<8;return this.position+=2,r},ByteArrayBuffer.prototype.writeUnsignedInt=function(b){var bi=~~b;this._bytes[this.position++]=255&bi,this._bytes[this.position++]=bi>>>8&255,this._bytes[this.position++]=bi>>>16&255,this._bytes[this.position++]=bi>>>24&255,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readUnsignedInt=function(){if(this.position+4>this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;var r=this._bytes[this.position]|this._bytes[this.position+1]<<8|this._bytes[this.position+2]<<16|this._bytes[this.position+3]<<24;return this.position+=4,r>>>0},ByteArrayBuffer.prototype.writeFloat=function(b){this.writeUnsignedInt(this.toFloatBits(Number(b)))},ByteArrayBuffer.prototype.toFloatBits=function(x){if(0==x)return 0;var sign=0;0>x?(x=-x,sign=1):sign=0;var exponent=Math.log(x)/Math.log(2);exponent=Math.floor(exponent),x*=Math.pow(2,23-exponent);var mantissa=Math.floor(x)-8388608;return exponent+=127,sign<<31>>>0|exponent<<23|mantissa},ByteArrayBuffer.prototype.readFloat=function(){return this.fromFloatBits(this.readUnsignedInt())},ByteArrayBuffer.prototype.fromFloatBits=function(x){if(0==x)return 0;var exponent=x>>>23&255,mantissa=8388607&x|8388608,y=Math.pow(2,exponent-127-23)*mantissa;return x>>>31!=0&&(y=-y),y},ByteArrayBuffer}(away.utils.ByteArrayBase);utils.ByteArrayBuffer=ByteArrayBuffer}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var ColorUtils=function(){function ColorUtils(){}return ColorUtils.float32ColorToARGB=function(float32Color){var a=(4278190080&float32Color)>>>24,r=(16711680&float32Color)>>>16,g=(65280&float32Color)>>>8,b=255&float32Color,result=[a,r,g,b];return result},ColorUtils.componentToHex=function(c){var hex=c.toString(16);return 1==hex.length?"0"+hex:hex},ColorUtils.RGBToHexString=function(argb){return"#"+ColorUtils.componentToHex(argb[1])+ColorUtils.componentToHex(argb[2])+ColorUtils.componentToHex(argb[3])},ColorUtils.ARGBToHexString=function(argb){return"#"+ColorUtils.componentToHex(argb[0])+ColorUtils.componentToHex(argb[1])+ColorUtils.componentToHex(argb[2])+ColorUtils.componentToHex(argb[3])},ColorUtils}();utils.ColorUtils=ColorUtils}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var Cast=function(){function Cast(){}return Cast.string=function(data){return"function"==typeof data&&(data=new data),"string"==typeof data?data:data},Cast.byteArray=function(data){return"function"==typeof data&&(data=new data),data instanceof away.utils.ByteArray?data:data},Cast.isHex=function(str){for(var length=str.length,i=0;length>i;++i)if(-1==this._hexChars.indexOf(str.charAt(i)))return!1;return!0},Cast.tryColor=function(data){if("number"==typeof data)return Math.floor(data);if("string"==typeof data){if("random"==data)return Math.floor(16777216*Math.random());if(null==this._colorNames&&(this._colorNames=new Object,this._colorNames.steelblue=4620980,this._colorNames.royalblue=267920,this._colorNames.cornflowerblue=6591981,this._colorNames.lightsteelblue=11584734,this._colorNames.mediumslateblue=8087790,this._colorNames.slateblue=6970061,this._colorNames.darkslateblue=4734347,this._colorNames.midnightblue=1644912,this._colorNames.navy=128,this._colorNames.darkblue=139,this._colorNames.mediumblue=205,this._colorNames.blue=255,this._colorNames.dodgerblue=2003199,this._colorNames.deepskyblue=49151,this._colorNames.lightskyblue=8900346,this._colorNames.skyblue=8900331,this._colorNames.lightblue=11393254,this._colorNames.powderblue=11591910,this._colorNames.azure=15794175,this._colorNames.lightcyan=14745599,this._colorNames.paleturquoise=11529966,this._colorNames.mediumturquoise=4772300,this._colorNames.lightseagreen=2142890,this._colorNames.darkcyan=35723,this._colorNames.teal=32896,this._colorNames.cadetblue=6266528,this._colorNames.darkturquoise=52945,this._colorNames.aqua=65535,this._colorNames.cyan=65535,this._colorNames.turquoise=4251856,this._colorNames.aquamarine=8388564,this._colorNames.mediumaquamarine=6737322,this._colorNames.darkseagreen=9419919,this._colorNames.mediumseagreen=3978097,this._colorNames.seagreen=3050327,this._colorNames.darkgreen=25600,this._colorNames.green=32768,this._colorNames.forestgreen=2263842,this._colorNames.limegreen=3329330,this._colorNames.lime=65280,this._colorNames.chartreuse=8388352,this._colorNames.lawngreen=8190976,this._colorNames.greenyellow=11403055,this._colorNames.yellowgreen=10145074,this._colorNames.palegreen=10025880,this._colorNames.lightgreen=9498256,this._colorNames.springgreen=65407,this._colorNames.mediumspringgreen=64154,this._colorNames.darkolivegreen=5597999,this._colorNames.olivedrab=7048739,this._colorNames.olive=8421376,this._colorNames.darkkhaki=12433259,this._colorNames.darkgoldenrod=12092939,this._colorNames.goldenrod=14329120,this._colorNames.gold=16766720,this._colorNames.yellow=16776960,this._colorNames.khaki=15787660,this._colorNames.palegoldenrod=15657130,this._colorNames.blanchedalmond=16772045,this._colorNames.moccasin=16770229,this._colorNames.wheat=16113331,this._colorNames.navajowhite=16768685,this._colorNames.burlywood=14596231,this._colorNames.tan=13808780,this._colorNames.rosybrown=12357519,this._colorNames.sienna=10506797,this._colorNames.saddlebrown=9127187,this._colorNames.chocolate=13789470,this._colorNames.peru=13468991,this._colorNames.sandybrown=16032864,this._colorNames.darkred=9109504,this._colorNames.maroon=8388608,this._colorNames.brown=10824234,this._colorNames.firebrick=11674146,this._colorNames.indianred=13458524,this._colorNames.lightcoral=15761536,this._colorNames.salmon=16416882,this._colorNames.darksalmon=15308410,this._colorNames.lightsalmon=16752762,this._colorNames.coral=16744272,this._colorNames.tomato=16737095,this._colorNames.darkorange=16747520,this._colorNames.orange=16753920,this._colorNames.orangered=16729344,this._colorNames.crimson=14423100,this._colorNames.red=16711680,this._colorNames.deeppink=16716947,this._colorNames.fuchsia=16711935,this._colorNames.magenta=16711935,this._colorNames.hotpink=16738740,this._colorNames.lightpink=16758465,this._colorNames.pink=16761035,this._colorNames.palevioletred=14381203,this._colorNames.mediumvioletred=13047173,this._colorNames.purple=8388736,this._colorNames.darkmagenta=9109643,this._colorNames.mediumpurple=9662683,this._colorNames.blueviolet=9055202,this._colorNames.indigo=4915330,this._colorNames.darkviolet=9699539,this._colorNames.darkorchid=10040012,this._colorNames.mediumorchid=12211667,this._colorNames.orchid=14315734,this._colorNames.violet=15631086,this._colorNames.plum=14524637,this._colorNames.thistle=14204888,this._colorNames.lavender=15132410,this._colorNames.ghostwhite=16316671,this._colorNames.aliceblue=15792383,this._colorNames.mintcream=16121850,this._colorNames.honeydew=15794160,this._colorNames.lightgoldenrodyellow=16448210,this._colorNames.lemonchiffon=16775885,this._colorNames.cornsilk=16775388,this._colorNames.lightyellow=16777184,this._colorNames.ivory=16777200,this._colorNames.floralwhite=16775920,this._colorNames.linen=16445670,this._colorNames.oldlace=16643558,this._colorNames.antiquewhite=16444375,this._colorNames.bisque=16770244,this._colorNames.peachpuff=16767673,this._colorNames.papayawhip=16773077,this._colorNames.beige=16119260,this._colorNames.seashell=16774638,this._colorNames.lavenderblush=16773365,this._colorNames.mistyrose=16770273,this._colorNames.snow=16775930,this._colorNames.white=16777215,this._colorNames.whitesmoke=16119285,this._colorNames.gainsboro=14474460,this._colorNames.lightgrey=13882323,this._colorNames.silver=12632256,this._colorNames.darkgrey=11119017,this._colorNames.grey=8421504,this._colorNames.lightslategrey=7833753,this._colorNames.slategrey=7372944,this._colorNames.dimgrey=6908265,this._colorNames.darkslategrey=3100495,this._colorNames.black=0,this._colorNames.transparent=4278190080),null!=this._colorNames[data])return this._colorNames[data];
-if(6==data.length&&this.isHex(data))return parseInt("0x"+data)}return null},Cast.color=function(data){var result=this.tryColor(data);if(null==result)throw new away.errors.CastError("Can't cast to color: "+data);return result},Cast.tryClass=function(name){if(this._notClasses[name])return name;var result=this._classes[name];if(null!=result)return result;try{return result=window[name],this._classes[name]=result,result}catch(e){}return this._notClasses[name]=!0,name},Cast.bitmapData=function(data){if(null==data)return null;if("string"==typeof data&&(data=this.tryClass(data)),"function"==typeof data)try{data=new data}catch(e){data=new data(0,0)}if(data instanceof away.base.BitmapData)return data;if(data instanceof away.textures.ImageTexture&&(data=data.htmlImageElement),data instanceof HTMLImageElement){var imageElement=data,bitmapData=new away.base.BitmapData(imageElement.width,imageElement.height,!0,0);return bitmapData.draw(imageElement),bitmapData}throw new away.errors.CastError("Can't cast to BitmapData: "+data)},Cast.bitmapTexture=function(data){if(null==data)return null;if("string"==typeof data&&(data=this.tryClass(data)),"function"==typeof data)try{data=new data}catch(e){data=new data(0,0)}if(data instanceof away.textures.BitmapTexture)return data;try{var bmd=Cast.bitmapData(data);return new away.textures.BitmapTexture(bmd)}catch(e){}throw new away.errors.CastError("Can't cast to BitmapTexture: "+data)},Cast._hexChars="0123456789abcdefABCDEF",Cast._notClasses=new Object,Cast._classes=new Object,Cast}();utils.Cast=Cast}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var CSS=function(){function CSS(){}return CSS.setCanvasSize=function(canvas,width,height){canvas.style.width=width+"px",canvas.style.height=height+"px",canvas.width=width,canvas.height=height},CSS.setCanvasWidth=function(canvas,width){canvas.style.width=width+"px",canvas.width=width},CSS.setCanvasHeight=function(canvas,height){canvas.style.height=height+"px",canvas.height=height},CSS.setCanvasX=function(canvas,x){canvas.style.position="absolute",canvas.style.left=x+"px"},CSS.setCanvasY=function(canvas,y){canvas.style.position="absolute",canvas.style.top=y+"px"},CSS.getCanvasVisibility=function(canvas){return"visible"==canvas.style.visibility},CSS.setCanvasVisibility=function(canvas,visible){canvas.style.visibility=visible?"visible":"hidden"},CSS.setCanvasAlpha=function(canvas,alpha){var context=canvas.getContext("2d");context.globalAlpha=alpha},CSS.setCanvasPosition=function(canvas,x,y,absolute){"undefined"==typeof absolute&&(absolute=!1),canvas.style.position=absolute?"absolute":"relative",canvas.style.left=x+"px",canvas.style.top=y+"px"},CSS}();utils.CSS=CSS}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){var Debug=function(){function Debug(){}return Debug.breakpoint=function(){away.Debug["break"]()},Debug.throwPIROnKeyWordOnly=function(str,enable){"undefined"==typeof enable&&(enable=!0),away.Debug.keyword=enable?str:null},Debug.throwPIR=function(clss,fnc,msg){if(Debug.logPIR("PartialImplementationError "+clss,fnc,msg),Debug.THROW_ERRORS){if(away.Debug.keyword){var e=clss+fnc+msg;if(-1==e.indexOf(away.Debug.keyword))return}throw new away.errors.PartialImplementationError(clss+"."+fnc+": "+msg)}},Debug.logPIR=function(clss,fnc,msg){"undefined"==typeof msg&&(msg=""),Debug.LOG_PI_ERRORS&&console.log(clss+"."+fnc+": "+msg)},Debug.log=function(){for(var args=[],_i=0;_i=1&&d<=TextureUtils.MAX_SIZE&&TextureUtils.isPowerOfTwo(d)},TextureUtils.isPowerOfTwo=function(value){return value?(value&-value)==value:!1},TextureUtils.getBestPowerOf2=function(value){for(var p=1;value>p;)p<<=1;return p>TextureUtils.MAX_SIZE&&(p=TextureUtils.MAX_SIZE),p},TextureUtils.MAX_SIZE=2048,TextureUtils}();utils.TextureUtils=TextureUtils}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var Timer=function(_super){function Timer(delay,repeatCount){if("undefined"==typeof repeatCount&&(repeatCount=0),_super.call(this),this._repeatCount=0,this._currentCount=0,this._running=!1,this._delay=delay,this._repeatCount=repeatCount,isNaN(delay)||0>delay)throw new away.errors.Error("Delay is negative or not a number")}return __extends(Timer,_super),Object.defineProperty(Timer.prototype,"currentCount",{get:function(){return this._currentCount},enumerable:!0,configurable:!0}),Object.defineProperty(Timer.prototype,"delay",{get:function(){return this._delay},set:function(value){this._delay=value,this._running&&(this.stop(),this.start())},enumerable:!0,configurable:!0}),Object.defineProperty(Timer.prototype,"repeatCount",{get:function(){return this._repeatCount},set:function(value){this._repeatCount=value},enumerable:!0,configurable:!0}),Timer.prototype.reset=function(){this._running&&this.stop(),this._currentCount=0},Object.defineProperty(Timer.prototype,"running",{get:function(){return this._running},enumerable:!0,configurable:!0}),Timer.prototype.start=function(){var _this=this;this._running=!0,clearInterval(this._iid),this._iid=setInterval(function(){return _this.tick()},this._delay)},Timer.prototype.stop=function(){this._running=!1,clearInterval(this._iid)},Timer.prototype.tick=function(){this._currentCount++,this._repeatCount>0&&this._currentCount>=this._repeatCount?(this.stop(),this.dispatchEvent(new away.events.TimerEvent(away.events.TimerEvent.TIMER)),this.dispatchEvent(new away.events.TimerEvent(away.events.TimerEvent.TIMER_COMPLETE))):this.dispatchEvent(new away.events.TimerEvent(away.events.TimerEvent.TIMER))},Timer}(away.events.EventDispatcher);utils.Timer=Timer}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(parsers){var ParserBase=function(_super){function ParserBase(format){_super.call(this),this._materialMode=0,this._dataFormat=format,this._dependencies=new Array,this._pOnIntervalDelegate=away.utils.Delegate.create(this,this._pOnInterval)}return __extends(ParserBase,_super),ParserBase.supportsType=function(){throw new away.errors.AbstractMethodError},Object.defineProperty(ParserBase.prototype,"content",{get:function(){return this._pContent},enumerable:!0,configurable:!0}),ParserBase.prototype.isBitmapDataValid=function(bitmapData){var isValid=away.utils.TextureUtils.isBitmapDataValid(bitmapData);return isValid||console.log(">> Bitmap loaded is not having power of 2 dimensions or is higher than 2048"),isValid},Object.defineProperty(ParserBase.prototype,"parsingFailure",{get:function(){return this._parsingFailure},set:function(b){this._parsingFailure=b},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"parsingPaused",{get:function(){return this._parsingPaused},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"parsingComplete",{get:function(){return this._parsingComplete},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"materialMode",{get:function(){return this._materialMode},set:function(newMaterialMode){this._materialMode=newMaterialMode},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"data",{get:function(){return this._data},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"dataFormat",{get:function(){return this._dataFormat},enumerable:!0,configurable:!0}),ParserBase.prototype.parseAsync=function(data,frameLimit){"undefined"==typeof frameLimit&&(frameLimit=30),this._data=data,this._pStartParsing(frameLimit)},Object.defineProperty(ParserBase.prototype,"dependencies",{get:function(){return this._dependencies},enumerable:!0,configurable:!0}),ParserBase.prototype._iResolveDependency=function(){throw new away.errors.AbstractMethodError},ParserBase.prototype._iResolveDependencyFailure=function(){throw new away.errors.AbstractMethodError},ParserBase.prototype._iResolveDependencyName=function(resourceDependency,asset){return asset.name},ParserBase.prototype._iResumeParsingAfterDependencies=function(){this._parsingPaused=!1,this._timer&&this._timer.start()},ParserBase.prototype._pFinalizeAsset=function(asset,name){"undefined"==typeof name&&(name=null);var type_name;switch(null!=name&&(asset.name=name),asset.assetType){case away.library.AssetType.LIGHT_PICKER:type_name="lightPicker";break;case away.library.AssetType.LIGHT:type_name="light";break;case away.library.AssetType.ANIMATOR:type_name="animator";break;case away.library.AssetType.ANIMATION_SET:type_name="animationSet";break;case away.library.AssetType.ANIMATION_STATE:type_name="animationState";break;case away.library.AssetType.ANIMATION_NODE:type_name="animationNode";break;case away.library.AssetType.STATE_TRANSITION:type_name="stateTransition";break;case away.library.AssetType.TEXTURE:type_name="texture";break;case away.library.AssetType.TEXTURE_PROJECTOR:type_name="textureProjector";break;case away.library.AssetType.CONTAINER:type_name="container";break;case away.library.AssetType.GEOMETRY:type_name="geometry";break;case away.library.AssetType.MATERIAL:type_name="material";break;case away.library.AssetType.MESH:type_name="mesh";break;case away.library.AssetType.SKELETON:type_name="skeleton";break;case away.library.AssetType.SKELETON_POSE:type_name="skelpose";break;case away.library.AssetType.SKYBOX:type_name="skybox";break;case away.library.AssetType.CAMERA:type_name="camera";break;case away.library.AssetType.SEGMENT_SET:type_name="segmentSet";break;case away.library.AssetType.EFFECTS_METHOD:type_name="effectsMethod";break;case away.library.AssetType.SHADOW_MAP_METHOD:type_name="effectsMethod";break;default:throw new away.errors.Error("Unhandled asset type "+asset.assetType+". Report as bug!")}asset.name||(asset.name=type_name),this.dispatchEvent(new away.events.AssetEvent(away.events.AssetEvent.ASSET_COMPLETE,asset))},ParserBase.prototype._pProceedParsing=function(){throw new away.errors.AbstractMethodError},ParserBase.prototype._pDieWithError=function(message){"undefined"==typeof message&&(message="Unknown parsing error"),this._timer&&(this._timer.removeEventListener(away.events.TimerEvent.TIMER,this._pOnIntervalDelegate),this._timer.stop(),this._timer=null),this.dispatchEvent(new away.events.ParserEvent(away.events.ParserEvent.PARSE_ERROR,message))},ParserBase.prototype._pAddDependency=function(id,req,retrieveAsRawData,data,suppressErrorEvents){"undefined"==typeof retrieveAsRawData&&(retrieveAsRawData=!1),"undefined"==typeof data&&(data=null),"undefined"==typeof suppressErrorEvents&&(suppressErrorEvents=!1);var dependency=new away.parsers.ResourceDependency(id,req,data,null,this,retrieveAsRawData,suppressErrorEvents);return this._dependencies.push(dependency),dependency},ParserBase.prototype._pPauseAndRetrieveDependencies=function(){this._timer&&this._timer.stop(),this._parsingPaused=!0,this.dispatchEvent(new away.events.ParserEvent(away.events.ParserEvent.READY_FOR_DEPENDENCIES))},ParserBase.prototype._pHasTime=function(){return away.utils.getTimer()-this._lastFrameTimei;i++)byteStr+=String.fromCharCode(bytes[i]);var base64Image=window.btoa(byteStr),str="data:image/png;base64,"+base64Image,img=new Image;return img.src=str,img},ParserUtils.byteArrayToImage=function(data){for(var byteStr="",bytes=new Uint8Array(data.arraybytes),len=bytes.byteLength,i=0;len>i;i++)byteStr+=String.fromCharCode(bytes[i]);var base64Image=window.btoa(byteStr),str="data:image/png;base64,"+base64Image,img=new Image;return img.src=str,img},ParserUtils.blobToImage=function(data){var URLObj=window.URL||window.webkitURL,src=URLObj.createObjectURL(data),img=new Image;return img.src=src,img},ParserUtils.toByteArray=function(data){var b=new away.utils.ByteArray;return b.setArrayBuffer(data),b},ParserUtils.toString=function(data,length){"undefined"==typeof length&&(length=0);var s=data;if(null!=s.substr)return s.substr(0,s.length);if(data instanceof away.utils.ByteArray){var ba=data;return ba.position=0,ba.readUTFBytes(Math.min(ba.getBytesAvailable(),length))}return null},ParserUtils}();parsers.ParserUtils=ParserUtils}(away.parsers||(away.parsers={}));away.parsers}(away||(away={}));var away;!function(away){!function(parsers){var ResourceDependency=function(){function ResourceDependency(id,request,data,parser,parentParser,retrieveAsRawData,suppressAssetEvents){"undefined"==typeof retrieveAsRawData&&(retrieveAsRawData=!1),"undefined"==typeof suppressAssetEvents&&(suppressAssetEvents=!1),this._id=id,this._request=request,this._data=data,this._parser=parser,this._parentParser=parentParser,this._retrieveAsRawData=retrieveAsRawData,this._suppressAssetEvents=suppressAssetEvents,this._assets=new Array,this._dependencies=new Array}return Object.defineProperty(ResourceDependency.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"request",{get:function(){return this._request},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"data",{get:function(){return this._data},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"parser",{get:function(){return this._parser},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"parentParser",{get:function(){return this._parentParser},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"retrieveAsRawData",{get:function(){return this._retrieveAsRawData},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"suppresAssetEvents",{get:function(){return this._suppressAssetEvents},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"assets",{get:function(){return this._assets},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"dependencies",{get:function(){return this._dependencies},enumerable:!0,configurable:!0}),ResourceDependency.prototype._iSetData=function(data){this._data=data},ResourceDependency.prototype._iSetParser=function(parser){this._parser=parser},ResourceDependency.prototype.resolve=function(){this._parentParser&&this._parentParser._iResolveDependency(this)},ResourceDependency.prototype.resolveFailure=function(){this._parentParser&&this._parentParser._iResolveDependencyFailure(this)},ResourceDependency.prototype.resolveName=function(asset){return this._parentParser?this._parentParser._iResolveDependencyName(this,asset):asset.name},ResourceDependency}();parsers.ResourceDependency=ResourceDependency}(away.parsers||(away.parsers={}));away.parsers}(away||(away={}));var away;!function(away){!function(library){var IDUtil=function(){function IDUtil(){}return IDUtil.createUID=function(){var i,j,uid=new Array(36),index=0;for(i=0;8>i;i++)uid[index++]=IDUtil.ALPHA_CHAR_CODES[Math.floor(16*Math.random())];for(i=0;3>i;i++)for(uid[index++]=45,j=0;4>j;j++)uid[index++]=IDUtil.ALPHA_CHAR_CODES[Math.floor(16*Math.random())];uid[index++]=45;var time=(new Date).getTime(),timeString=("0000000"+time.toString(16).toUpperCase()).substr(-8);for(i=0;8>i;i++)uid[index++]=timeString.charCodeAt(i);for(i=0;4>i;i++)uid[index++]=IDUtil.ALPHA_CHAR_CODES[Math.floor(16*Math.random())];return String.fromCharCode.apply(null,uid)},IDUtil.ALPHA_CHAR_CODES=[48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70],IDUtil}();library.IDUtil=IDUtil}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var NamedAssetBase=function(_super){function NamedAssetBase(name){"undefined"==typeof name&&(name=null),_super.call(this),this._id=(NamedAssetBase.ID_COUNT++).toString(),null==name&&(name="null"),this._name=name,this._originalName=name,this.updateFullPath()}return __extends(NamedAssetBase,_super),Object.defineProperty(NamedAssetBase.prototype,"assetType",{get:function(){throw new away.errors.AbstractMethodError},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"originalName",{get:function(){return this._originalName},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"name",{get:function(){return this._name},set:function(val){var prev;prev=this._name,this._name=val,null==this._name&&(this._name="null"),this.updateFullPath(),this.dispatchEvent(new away.events.AssetEvent(away.events.AssetEvent.ASSET_RENAME,this,prev))},enumerable:!0,configurable:!0}),NamedAssetBase.prototype.dispose=function(){throw new away.errors.AbstractMethodError},Object.defineProperty(NamedAssetBase.prototype,"assetNamespace",{get:function(){return this._namespace},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"assetFullPath",{get:function(){return this._full_path},enumerable:!0,configurable:!0}),NamedAssetBase.prototype.assetPathEquals=function(name,ns){return this._name==name&&(!ns||this._namespace==ns)},NamedAssetBase.prototype.resetAssetPath=function(name,ns,overrideOriginal){"undefined"==typeof ns&&(ns=null),"undefined"==typeof overrideOriginal&&(overrideOriginal=!0),this._name=name?name:"null",this._namespace=ns?ns:NamedAssetBase.DEFAULT_NAMESPACE,overrideOriginal&&(this._originalName=this._name),this.updateFullPath()},NamedAssetBase.prototype.updateFullPath=function(){this._full_path=[this._namespace,this._name]},NamedAssetBase.ID_COUNT=0,NamedAssetBase.DEFAULT_NAMESPACE="default",NamedAssetBase}(away.events.EventDispatcher);library.NamedAssetBase=NamedAssetBase}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var AssetType=function(){function AssetType(){}return AssetType.ANIMATION_NODE="animationNode",AssetType.ANIMATION_SET="animationSet",AssetType.ANIMATION_STATE="animationState",AssetType.ANIMATOR="animator",AssetType.BILLBOARD="billboard",AssetType.CAMERA="camera",AssetType.CONTAINER="container",AssetType.EFFECTS_METHOD="effectsMethod",AssetType.GEOMETRY="geometry",AssetType.LIGHT="light",AssetType.LIGHT_PICKER="lightPicker",AssetType.MATERIAL="material",AssetType.MESH="mesh",AssetType.SEGMENT_SET="segmentSet",AssetType.SHADOW_MAP_METHOD="shadowMapMethod",AssetType.SKELETON="skeleton",AssetType.SKELETON_POSE="skeletonPose",AssetType.SKYBOX="skybox",AssetType.STATE_TRANSITION="stateTransition",AssetType.TEXTURE="texture",AssetType.TEXTURE_PROJECTOR="textureProjector",AssetType}();library.AssetType=AssetType}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var AssetLibraryIterator=function(){function AssetLibraryIterator(assets,assetTypeFilter,namespaceFilter,filterFunc){this._assets=assets,this.filter(assetTypeFilter,namespaceFilter,filterFunc)}return Object.defineProperty(AssetLibraryIterator.prototype,"currentAsset",{get:function(){return this._idxc;c++)asset=this._assets[c],assetTypeFilter&&asset.assetType!=assetTypeFilter||namespaceFilter&&asset.assetNamespace!=namespaceFilter||(null==filterFunc||filterFunc(asset))&&(this._filtered[idx++]=asset)}else this._filtered=this._assets},AssetLibraryIterator}();library.AssetLibraryIterator=AssetLibraryIterator}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ConflictStrategyBase=function(){function ConflictStrategyBase(){}return ConflictStrategyBase.prototype.resolveConflict=function(){throw new away.errors.AbstractMethodError},ConflictStrategyBase.prototype.create=function(){throw new away.errors.AbstractMethodError},ConflictStrategyBase.prototype._pUpdateNames=function(ns,nonConflictingName,oldAsset,newAsset,assetsDictionary,precedence){var loser_prev_name,winner,loser;
-winner=precedence===away.library.ConflictPrecedence.FAVOR_NEW?newAsset:oldAsset,loser=precedence===away.library.ConflictPrecedence.FAVOR_NEW?oldAsset:newAsset,loser_prev_name=loser.name,assetsDictionary[winner.name]=winner,assetsDictionary[nonConflictingName]=loser,loser.resetAssetPath(nonConflictingName,ns,!1),loser.dispatchEvent(new away.events.AssetEvent(away.events.AssetEvent.ASSET_CONFLICT_RESOLVED,loser,loser_prev_name))},ConflictStrategyBase}();library.ConflictStrategyBase=ConflictStrategyBase}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var NumSuffixConflictStrategy=function(_super){function NumSuffixConflictStrategy(separator){"undefined"==typeof separator&&(separator="."),_super.call(this),this._separator=separator,this._next_suffix={}}return __extends(NumSuffixConflictStrategy,_super),NumSuffixConflictStrategy.prototype.resolveConflict=function(changedAsset,oldAsset,assetsDictionary,precedence){var orig,new_name,base,suffix;orig=changedAsset.name,orig.indexOf(this._separator)>=0?(base=orig.substring(0,orig.lastIndexOf(this._separator)),suffix=parseInt(orig.substring(base.length-1)),isNaN(suffix)&&(base=orig,suffix=0)):(base=orig,suffix=0),0==suffix&&this._next_suffix.hasOwnProperty(base)&&(suffix=this._next_suffix[base]);do suffix++,new_name=base.concat(this._separator,suffix.toString());while(assetsDictionary.hasOwnProperty(new_name));this._next_suffix[base]=suffix,this._pUpdateNames(oldAsset.assetNamespace,new_name,oldAsset,changedAsset,assetsDictionary,precedence)},NumSuffixConflictStrategy.prototype.create=function(){return new away.library.NumSuffixConflictStrategy(this._separator)},NumSuffixConflictStrategy}(away.library.ConflictStrategyBase);library.NumSuffixConflictStrategy=NumSuffixConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var IgnoreConflictStrategy=function(_super){function IgnoreConflictStrategy(){_super.call(this)}return __extends(IgnoreConflictStrategy,_super),IgnoreConflictStrategy.prototype.resolveConflict=function(){},IgnoreConflictStrategy.prototype.create=function(){return new away.library.IgnoreConflictStrategy},IgnoreConflictStrategy}(away.library.ConflictStrategyBase);library.IgnoreConflictStrategy=IgnoreConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ErrorConflictStrategy=function(_super){function ErrorConflictStrategy(){_super.call(this)}return __extends(ErrorConflictStrategy,_super),ErrorConflictStrategy.prototype.resolveConflict=function(changedAsset){throw new away.errors.Error("Asset name collision while AssetLibrary.namingStrategy set to AssetLibrary.THROW_ERROR. Asset path: "+changedAsset.assetFullPath)},ErrorConflictStrategy.prototype.create=function(){return new ErrorConflictStrategy},ErrorConflictStrategy}(away.library.ConflictStrategyBase);library.ErrorConflictStrategy=ErrorConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ConflictPrecedence=function(){function ConflictPrecedence(){}return ConflictPrecedence.FAVOR_OLD="favorOld",ConflictPrecedence.FAVOR_NEW="favorNew",ConflictPrecedence}();library.ConflictPrecedence=ConflictPrecedence}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ConflictStrategy=function(){function ConflictStrategy(){}return ConflictStrategy.APPEND_NUM_SUFFIX=new away.library.NumSuffixConflictStrategy,ConflictStrategy.IGNORE=new away.library.IgnoreConflictStrategy,ConflictStrategy.THROW_ERROR=new away.library.ErrorConflictStrategy,ConflictStrategy}();library.ConflictStrategy=ConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var AssetLibraryBundle=function(_super){function AssetLibraryBundle(){_super.call(this),this._loadingSessionsGarbage=new Array,this._assets=new Array,this._assetDictionary=new Object,this._loadingSessions=new Array,this.conflictStrategy=away.library.ConflictStrategy.IGNORE.create(),this.conflictPrecedence=away.library.ConflictPrecedence.FAVOR_NEW,this._onAssetRenameDelegate=away.utils.Delegate.create(this,this.onAssetRename),this._onAssetConflictResolvedDelegate=away.utils.Delegate.create(this,this.onAssetConflictResolved),this._onResourceCompleteDelegate=away.utils.Delegate.create(this,this.onResourceComplete),this._onTextureSizeErrorDelegate=away.utils.Delegate.create(this,this.onTextureSizeError),this._onAssetCompleteDelegate=away.utils.Delegate.create(this,this.onAssetComplete),this._onLoadErrorDelegate=away.utils.Delegate.create(this,this.onLoadError),this._onParseErrorDelegate=away.utils.Delegate.create(this,this.onParseError)}return __extends(AssetLibraryBundle,_super),AssetLibraryBundle.getInstance=function(key){return"undefined"==typeof key&&(key="default"),key||(key="default"),away.library.AssetLibrary._iInstances.hasOwnProperty(key)||(away.library.AssetLibrary._iInstances[key]=new AssetLibraryBundle(new AssetLibraryBundleSingletonEnforcer)),away.library.AssetLibrary._iInstances[key]},AssetLibraryBundle.prototype.enableParser=function(parserClass){away.net.AssetLoader.enableParser(parserClass)},AssetLibraryBundle.prototype.enableParsers=function(parserClasses){away.net.AssetLoader.enableParsers(parserClasses)},Object.defineProperty(AssetLibraryBundle.prototype,"conflictStrategy",{get:function(){return this._strategy},set:function(val){if(!val)throw new away.errors.Error("namingStrategy must not be null. To ignore naming, use AssetLibrary.IGNORE");this._strategy=val.create()},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLibraryBundle.prototype,"conflictPrecedence",{get:function(){return this._strategyPreference},set:function(val){this._strategyPreference=val},enumerable:!0,configurable:!0}),AssetLibraryBundle.prototype.createIterator=function(assetTypeFilter,namespaceFilter,filterFunc){return"undefined"==typeof assetTypeFilter&&(assetTypeFilter=null),"undefined"==typeof namespaceFilter&&(namespaceFilter=null),"undefined"==typeof filterFunc&&(filterFunc=null),new away.library.AssetLibraryIterator(this._assets,assetTypeFilter,namespaceFilter,filterFunc)},AssetLibraryBundle.prototype.load=function(req,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var loader=new away.net.AssetLoader;return this._loadingSessions||(this._loadingSessions=new Array),this._loadingSessions.push(loader),loader.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),loader.addEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),loader.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),loader._iAddErrorHandler(this._onLoadErrorDelegate),loader._iAddParseErrorHandler(this._onParseErrorDelegate),loader.load(req,context,ns,parser)},AssetLibraryBundle.prototype.loadData=function(data,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var loader=new away.net.AssetLoader;return this._loadingSessions||(this._loadingSessions=new Array),this._loadingSessions.push(loader),loader.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),loader.addEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),loader.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),loader._iAddErrorHandler(this._onLoadErrorDelegate),loader._iAddParseErrorHandler(this._onParseErrorDelegate),loader.loadData(data,"",context,ns,parser)},AssetLibraryBundle.prototype.getAsset=function(name,ns){return"undefined"==typeof ns&&(ns=null),this._assetDictDirty&&this.rehashAssetDict(),null==ns&&(ns=away.library.NamedAssetBase.DEFAULT_NAMESPACE),this._assetDictionary.hasOwnProperty(ns)?this._assetDictionary[ns][name]:null},AssetLibraryBundle.prototype.addAsset=function(asset){var ns,old;this._assets.indexOf(asset)>=0||(old=this.getAsset(asset.name,asset.assetNamespace),ns=asset.assetNamespace||away.library.NamedAssetBase.DEFAULT_NAMESPACE,null!=old&&this._strategy.resolveConflict(asset,old,this._assetDictionary[ns],this._strategyPreference),asset.id=away.library.IDUtil.createUID(),this._assets.push(asset),this._assetDictionary.hasOwnProperty(ns)||(this._assetDictionary[ns]=new Object),this._assetDictionary[ns][asset.name]=asset,asset.addEventListener(away.events.AssetEvent.ASSET_RENAME,this._onAssetRenameDelegate),asset.addEventListener(away.events.AssetEvent.ASSET_CONFLICT_RESOLVED,this._onAssetConflictResolvedDelegate))},AssetLibraryBundle.prototype.removeAsset=function(asset,dispose){"undefined"==typeof dispose&&(dispose=!0);var idx;this.removeAssetFromDict(asset),asset.removeEventListener(away.events.AssetEvent.ASSET_RENAME,this._onAssetRenameDelegate),asset.removeEventListener(away.events.AssetEvent.ASSET_CONFLICT_RESOLVED,this._onAssetConflictResolvedDelegate),idx=this._assets.indexOf(asset),idx>=0&&this._assets.splice(idx,1),dispose&&asset.dispose()},AssetLibraryBundle.prototype.removeAssetByName=function(name,ns,dispose){"undefined"==typeof ns&&(ns=null),"undefined"==typeof dispose&&(dispose=!0);var asset=this.getAsset(name,ns);return asset&&this.removeAsset(asset,dispose),asset},AssetLibraryBundle.prototype.removeAllAssets=function(dispose){if("undefined"==typeof dispose&&(dispose=!0),dispose)for(var asset,c=0;ci;i++)this.killLoadingSession(this._loadingSessions[i]);this._loadingSessions=null},AssetLibraryBundle.prototype.rehashAssetDict=function(){var asset;this._assetDictionary={};for(var l=this._assets.length,c=0;l>c;c++)asset=this._assets[c],this._assetDictionary.hasOwnProperty(asset.assetNamespace)||(this._assetDictionary[asset.assetNamespace]={}),this._assetDictionary[asset.assetNamespace][asset.name]=asset;this._assetDictDirty=!1},AssetLibraryBundle.prototype.onLoadError=function(event){return this.hasEventListener(away.events.IOErrorEvent.IO_ERROR)?(this.dispatchEvent(event),!0):!1},AssetLibraryBundle.prototype.onParseError=function(event){return this.hasEventListener(away.events.ParserEvent.PARSE_ERROR)?(this.dispatchEvent(event),!0):!1},AssetLibraryBundle.prototype.onAssetComplete=function(event){event.type==away.events.AssetEvent.ASSET_COMPLETE&&this.addAsset(event.asset),this.dispatchEvent(event)},AssetLibraryBundle.prototype.onTextureSizeError=function(event){this.dispatchEvent(event)},AssetLibraryBundle.prototype.onResourceComplete=function(event){var _this=this,loader=event.target;this.dispatchEvent(event);var index=this._loadingSessions.indexOf(loader);this._loadingSessions.splice(index,1),this._loadingSessionsGarbage.push(loader),this._gcTimeoutIID=setTimeout(function(){_this.loadingSessionGC()},100)},AssetLibraryBundle.prototype.loadingSessionGC=function(){for(var loader;this._loadingSessionsGarbage.length>0;)loader=this._loadingSessionsGarbage.pop(),this.killLoadingSession(loader);clearTimeout(this._gcTimeoutIID),this._gcTimeoutIID=null},AssetLibraryBundle.prototype.killLoadingSession=function(loader){loader.removeEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),loader.removeEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),loader.removeEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),loader.stop()},AssetLibraryBundle.prototype.onAssetRename=function(ev){var asset=ev.target,old=this.getAsset(asset.assetNamespace,asset.name);if(null!=old)this._strategy.resolveConflict(asset,old,this._assetDictionary[asset.assetNamespace],this._strategyPreference);else{var dict=this._assetDictionary[ev.asset.assetNamespace];if(null==dict)return;dict[ev.assetPrevName]=null,dict[ev.asset.name]=ev.asset}},AssetLibraryBundle.prototype.onAssetConflictResolved=function(ev){this.dispatchEvent(ev.clone())},AssetLibraryBundle}(away.events.EventDispatcher);library.AssetLibraryBundle=AssetLibraryBundle}(away.library||(away.library={}));away.library}(away||(away={}));var AssetLibraryBundleSingletonEnforcer=function(){function AssetLibraryBundleSingletonEnforcer(){}return AssetLibraryBundleSingletonEnforcer}(),away;!function(away){!function(library){var AssetLibrary=function(){function AssetLibrary(se){se=se}return AssetLibrary.getBundle=function(key){return"undefined"==typeof key&&(key="default"),away.library.AssetLibraryBundle.getInstance(key)},AssetLibrary.enableParser=function(parserClass){away.net.AssetLoader.enableParser(parserClass)},AssetLibrary.enableParsers=function(parserClasses){away.net.AssetLoader.enableParsers(parserClasses)},Object.defineProperty(AssetLibrary,"conflictStrategy",{get:function(){return away.library.AssetLibrary.getBundle().conflictStrategy},set:function(val){away.library.AssetLibrary.getBundle().conflictStrategy=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLibrary,"conflictPrecedence",{get:function(){return away.library.AssetLibrary.getBundle().conflictPrecedence},set:function(val){away.library.AssetLibrary.getBundle().conflictPrecedence=val},enumerable:!0,configurable:!0}),AssetLibrary.createIterator=function(assetTypeFilter,namespaceFilter,filterFunc){return"undefined"==typeof assetTypeFilter&&(assetTypeFilter=null),"undefined"==typeof namespaceFilter&&(namespaceFilter=null),"undefined"==typeof filterFunc&&(filterFunc=null),away.library.AssetLibrary.getBundle().createIterator(assetTypeFilter,namespaceFilter,filterFunc)},AssetLibrary.load=function(req,context,ns,parser){return"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null),away.library.AssetLibrary.getBundle().load(req,context,ns,parser)},AssetLibrary.loadData=function(data,context,ns,parser){return"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null),away.library.AssetLibrary.getBundle().loadData(data,context,ns,parser)},AssetLibrary.stopLoad=function(){away.library.AssetLibrary.getBundle().stopAllLoadingSessions()},AssetLibrary.getAsset=function(name,ns){return"undefined"==typeof ns&&(ns=null),away.library.AssetLibrary.getBundle().getAsset(name,ns)},AssetLibrary.addEventListener=function(type,listener){away.library.AssetLibrary.getBundle().addEventListener(type,listener)},AssetLibrary.removeEventListener=function(type,listener){away.library.AssetLibrary.getBundle().removeEventListener(type,listener)},AssetLibrary.addAsset=function(asset){away.library.AssetLibrary.getBundle().addAsset(asset)},AssetLibrary.removeAsset=function(asset,dispose){"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeAsset(asset,dispose)},AssetLibrary.removeAssetByName=function(name,ns,dispose){return"undefined"==typeof ns&&(ns=null),"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeAssetByName(name,ns,dispose)},AssetLibrary.removeAllAssets=function(dispose){"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeAllAssets(dispose)},AssetLibrary.removeNamespaceAssets=function(ns,dispose){"undefined"==typeof ns&&(ns=null),"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeNamespaceAssets(ns,dispose)},AssetLibrary._iInstances={},AssetLibrary}();library.AssetLibrary=AssetLibrary}(away.library||(away.library={}));away.library}(away||(away={}));var AssetLibrarySingletonEnforcer=function(){function AssetLibrarySingletonEnforcer(){}return AssetLibrarySingletonEnforcer}(),away;!function(away){!function(base){var BlendMode=function(){function BlendMode(){}return BlendMode.ADD="add",BlendMode.ALPHA="alpha",BlendMode.DARKEN="darken",BlendMode.DIFFERENCE="difference",BlendMode.ERASE="erase",BlendMode.HARDLIGHT="hardlight",BlendMode.INVERT="invert",BlendMode.LAYER="layer",BlendMode.LIGHTEN="lighten",BlendMode.MULTIPLY="multiply",BlendMode.NORMAL="normal",BlendMode.OVERLAY="overlay",BlendMode.SCREEN="screen",BlendMode.SHADER="shader",BlendMode.SUBTRACT="subtract",BlendMode}();base.BlendMode=BlendMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var AlignmentMode=function(){function AlignmentMode(){}return AlignmentMode.REGISTRATION_POINT="registrationPoint",AlignmentMode.PIVOT_POINT="pivot",AlignmentMode}();base.AlignmentMode=AlignmentMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var OrientationMode=function(){function OrientationMode(){}return OrientationMode.DEFAULT="default",OrientationMode.CAMERA_PLANE="cameraPlane",OrientationMode.CAMERA_POSITION="cameraPosition",OrientationMode}();base.OrientationMode=OrientationMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var BitmapData=function(){function BitmapData(width,height,transparent,fillColor){"undefined"==typeof transparent&&(transparent=!0),"undefined"==typeof fillColor&&(fillColor=null),this._alpha=1,this._locked=!1,this._transparent=transparent,this._imageCanvas=document.createElement("canvas"),this._imageCanvas.width=width,this._imageCanvas.height=height,this._context=this._imageCanvas.getContext("2d"),this._rect=new away.geom.Rectangle(0,0,width,height),null!=fillColor&&(this._alpha=this._transparent?away.utils.ColorUtils.float32ColorToARGB(fillColor)[0]/255:1,this.fillRect(this._rect,fillColor))}return BitmapData.prototype.dispose=function(){this._context=null,this._imageCanvas=null,this._imageData=null,this._rect=null,this._transparent=null,this._locked=null},BitmapData.prototype.lock=function(){this._locked=!0,this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)},BitmapData.prototype.unlock=function(){this._locked=!1,this._imageData&&(this._context.putImageData(this._imageData,0,0),this._imageData=null)},BitmapData.prototype.getPixel=function(x,y){var r,g,b,a;if(this._locked){var index=4*(x+y*this._imageCanvas.width);this._imageData||(this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)),r=this._imageData.data[index+0],g=this._imageData.data[index+1],b=this._imageData.data[index+2],a=this._imageData.data[index+3]}else{var pixelData=this._context.getImageData(x,y,1,1);r=pixelData.data[0],g=pixelData.data[1],b=pixelData.data[2],a=pixelData.data[3]}return this._locked||(this._imageData=null),a<<24|r<<16|g<<8|b},BitmapData.prototype.setPixel=function(x,y,color){var argb=away.utils.ColorUtils.float32ColorToARGB(color);if(this._locked||(this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)),this._imageData){var index=4*(x+y*this._imageCanvas.width);this._imageData.data[index+0]=argb[1],this._imageData.data[index+1]=argb[2],this._imageData.data[index+2]=argb[3],this._imageData.data[index+3]=255}this._locked||(this._context.putImageData(this._imageData,0,0),this._imageData=null)},BitmapData.prototype.setPixels=function(rect,inputByteArray){if(this._locked||(this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)),this._imageData){inputByteArray.position=0;var i,j,index;for(i=0;irayEntryDistance?!1:(pickingCollisionVO.rayEntryDistance=rayEntryDistance,pickingCollisionVO.localRayPosition=localRayPosition,pickingCollisionVO.localRayDirection=localRayDirection,pickingCollisionVO.rayPosition=rayPosition,pickingCollisionVO.rayDirection=rayDirection,pickingCollisionVO.rayOriginIsInsideBounds=0==rayEntryDistance,!0)},DisplayObject.prototype.local3DToGlobal=function(){return new away.geom.Point},DisplayObject.prototype.lookAt=function(target,upAxis){"undefined"==typeof upAxis&&(upAxis=null);var yAxis,zAxis,xAxis,raw;null==upAxis?upAxis=away.geom.Vector3D.Y_AXIS:upAxis.normalize(),zAxis=target.subtract(this._iMatrix3D.position),zAxis.normalize(),xAxis=upAxis.crossProduct(zAxis),xAxis.normalize(),xAxis.length<.05&&(xAxis.x=upAxis.y,xAxis.y=upAxis.x,xAxis.z=0,xAxis.normalize()),yAxis=zAxis.crossProduct(xAxis),raw=away.geom.Matrix3DUtils.RAW_DATA_CONTAINER,raw[0]=xAxis.x,raw[1]=xAxis.y,raw[2]=xAxis.z,raw[3]=0,raw[4]=yAxis.x,raw[5]=yAxis.y,raw[6]=yAxis.z,raw[7]=0,raw[8]=zAxis.x,raw[9]=zAxis.y,raw[10]=zAxis.z,raw[11]=0;var m=new away.geom.Matrix3D;m.copyRawDataFrom(raw);var vec=m.decompose()[1];this._rotationX=vec.x,this._rotationY=vec.y,this._rotationZ=vec.z,this.invalidateRotation()},DisplayObject.prototype.localToGlobal=function(){return new away.geom.Point},DisplayObject.prototype.moveTo=function(dx,dy,dz){(this._x!=dx||this._y!=dy||this._z!=dz)&&(this._x=dx,this._y=dy,this._z=dz,this.invalidatePosition())},DisplayObject.prototype.movePivot=function(dx,dy,dz){null==this._pivot&&(this._pivot=new away.geom.Vector3D),this._pivot.x+=dx,this._pivot.y+=dy,this._pivot.z+=dz,this.invalidatePivot()},DisplayObject.prototype.pitch=function(angle){this.rotate(away.geom.Vector3D.X_AXIS,angle)},DisplayObject.prototype.getRenderSceneTransform=function(camera){if(this.orientationMode==away.base.OrientationMode.CAMERA_PLANE){var comps=camera.sceneTransform.decompose(),scale=comps[2];return comps[0]=this.scenePosition,scale.x=this._pScaleX,scale.y=this._pScaleY,scale.z=this._pScaleZ,this._orientationMatrix.recompose(comps),this._pivotZero||this.alignmentMode!=away.base.AlignmentMode.PIVOT_POINT||this._orientationMatrix.prependTranslation(-this._pivot.x/this._pScaleX,-this._pivot.y/this._pScaleY,-this._pivot.z/this._pScaleZ),this._orientationMatrix}return this.sceneTransform},DisplayObject.prototype.roll=function(angle){this.rotate(away.geom.Vector3D.Z_AXIS,angle)},DisplayObject.prototype.rotate=function(axis,angle){var m=new away.geom.Matrix3D;m.prependRotation(angle,axis);var vec=m.decompose()[1];this._rotationX+=vec.x,this._rotationY+=vec.y,this._rotationZ+=vec.z,this.invalidateRotation()},DisplayObject.prototype.rotateTo=function(ax,ay,az){this._rotationX=ax*away.geom.MathConsts.DEGREES_TO_RADIANS,this._rotationY=ay*away.geom.MathConsts.DEGREES_TO_RADIANS,this._rotationZ=az*away.geom.MathConsts.DEGREES_TO_RADIANS,this.invalidateRotation()},DisplayObject.prototype.removeEventListener=function(type,listener){if(_super.prototype.removeEventListener.call(this,type,listener),!this.hasEventListener(type,listener))switch(type){case away.events.DisplayObjectEvent.POSITION_CHANGED:this._listenToPositionChanged=!1;break;case away.events.DisplayObjectEvent.ROTATION_CHANGED:this._listenToRotationChanged=!1;break;case away.events.DisplayObjectEvent.SCALE_CHANGED:this._listenToScaleChanged=!1}},DisplayObject.prototype.translate=function(axis,distance){var x=axis.x,y=axis.y,z=axis.z,len=distance/Math.sqrt(x*x+y*y+z*z);this._x+=x*len,this._y+=y*len,this._z+=z*len,this.invalidatePosition()},DisplayObject.prototype.translateLocal=function(axis,distance){var x=axis.x,y=axis.y,z=axis.z,len=distance/Math.sqrt(x*x+y*y+z*z);this._iMatrix3D.prependTranslation(x*len,y*len,z*len),this._matrix3D.copyColumnTo(3,this._pos),this._x=this._pos.x,this._y=this._pos.y,this._z=this._pos.z,this.invalidatePosition()},DisplayObject.prototype.yaw=function(angle){this.rotate(away.geom.Vector3D.Y_AXIS,angle)},Object.defineProperty(DisplayObject.prototype,"_iAssignedPartition",{get:function(){return this._pImplicitPartition},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObject.prototype,"_iMatrix3D",{get:function(){return this._matrix3DDirty&&this._pUpdateMatrix3D(),this._matrix3D},set:function(val){var vec,elements=val.decompose();vec=elements[0],(this._x!=vec.x||this._y!=vec.y||this._z!=vec.z)&&(this._x=vec.x,this._y=vec.y,this._z=vec.z,this.invalidatePosition()),vec=elements[1],(this._rotationX!=vec.x||this._rotationY!=vec.y||this._rotationZ!=vec.z)&&(this._rotationX=vec.x,this._rotationY=vec.y,this._rotationZ=vec.z,this.invalidateRotation()),vec=elements[2],(this._pScaleX!=vec.x||this._pScaleY!=vec.y||this._pScaleZ!=vec.z)&&(this._pScaleX=vec.x,this._pScaleY=vec.y,this._pScaleZ=vec.z,this.invalidateScale())},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObject.prototype,"_iPickingCollisionVO",{get:function(){return this._pPickingCollisionVO||(this._pPickingCollisionVO=new away.pick.PickingCollisionVO(this)),this._pPickingCollisionVO},enumerable:!0,configurable:!0}),DisplayObject.prototype.iSetParent=function(value){this._pParent=value,value?(this._pUpdateImplicitMouseEnabled(value.mouseChildren),this._pUpdateImplicitVisibility(value._iIsVisible()),this._pUpdateImplicitPartition(value._iAssignedPartition),this._iSetScene(value._pScene)):(this._pUpdateImplicitMouseEnabled(!0),this._pUpdateImplicitVisibility(!0),this._pUpdateImplicitPartition(null),this._iSetScene(null))},DisplayObject.prototype.pCreateDefaultBoundingVolume=function(){return new away.bounds.AxisAlignedBoundingBox},DisplayObject.prototype.pCreateEntityPartitionNode=function(){throw new away.errors.AbstractMethodError},DisplayObject.prototype.pInvalidateBounds=function(){this._pBoundsInvalid=!0,this._worldBoundsInvalid=!0,this.isEntity&&this.invalidatePartition()},DisplayObject.prototype.pInvalidateSceneTransform=function(){this._pSceneTransformDirty=!this._pIgnoreTransform,this._inverseSceneTransformDirty=!this._pIgnoreTransform,this._scenePositionDirty=!this._pIgnoreTransform,this._worldBoundsInvalid=!this._pIgnoreTransform,this.isEntity&&this.invalidatePartition(),this._listenToSceneTransformChanged&&this.notifySceneTransformChange()},DisplayObject.prototype.pUpdateBounds=function(){this._width=this._pBounds.aabb.width*this._pScaleX,this._height=this._pBounds.aabb.height*this._pScaleY,this._depth=this._pBounds.aabb.depth*this._pScaleZ,this._pBoundsInvalid=!1},DisplayObject.prototype._pUpdateImplicitMouseEnabled=function(value){this._pImplicitMouseEnabled=this._explicitMouseEnabled&&value,this._pImplicitMouseEnabled&&this._pParent&&!this._pPickingCollider&&(this._pPickingCollider=this._pParent._pPickingCollider)},DisplayObject.prototype._pUpdateImplicitPartition=function(value){this._pImplicitPartition=this._explicitPartition||value},DisplayObject.prototype._pUpdateImplicitVisibility=function(value){this._pImplicitVisibility=this._explicitVisibility&&value},DisplayObject.prototype._pUpdateMatrix3D=function(){this._pos.x=this._x,this._pos.y=this._y,this._pos.z=this._z,this._rot.x=this._rotationX,this._rot.y=this._rotationY,this._rot.z=this._rotationZ,this._sca.x=this._pScaleX,this._sca.y=this._pScaleY,this._sca.z=this._pScaleZ,this._matrix3D.recompose(this._transformComponents),this._pivotZero||(this._matrix3D.prependTranslation(-this._pivot.x/this._pScaleX,-this._pivot.y/this._pScaleY,-this._pivot.z/this._pScaleZ),this.alignmentMode!=away.base.AlignmentMode.PIVOT_POINT&&this._matrix3D.appendTranslation(this._pivot.x,this._pivot.y,this._pivot.z)),this._matrix3DDirty=!1,this._positionDirty=!1,this._rotationDirty=!1,this._scaleDirty=!1,this._pivotDirty=!1},DisplayObject.prototype.pUpdateSceneTransform=function(){this._pParent&&!this._pParent._iIsRoot?(this._pSceneTransform.copyFrom(this._pParent.sceneTransform),this._pSceneTransform.prepend(this._iMatrix3D)):this._pSceneTransform.copyFrom(this._iMatrix3D),this._pSceneTransformDirty=!1},DisplayObject.prototype._iAddRenderable=function(renderable){return this._pRenderables.push(renderable),renderable},DisplayObject.prototype._iRemoveRenderable=function(renderable){var index=this._pRenderables.indexOf(renderable);return this._pRenderables.splice(index,1),renderable},DisplayObject.prototype._iTestCollision=function(){return!1},DisplayObject.prototype._iInternalUpdate=function(){this._iController&&this._iController.update()},DisplayObject.prototype._iIsVisible=function(){return this._pImplicitVisibility},DisplayObject.prototype._iIsMouseEnabled=function(){return this._pImplicitMouseEnabled},DisplayObject.prototype._iSetScene=function(value){this._pScene!=value&&(this._pUpdateScene(value),this._pSceneTransformDirty||this._pIgnoreTransform||this.pInvalidateSceneTransform())},DisplayObject.prototype._pUpdateScene=function(value){this._pScene&&(this._pScene.dispatchEvent(new away.events.SceneEvent(away.events.SceneEvent.REMOVED_FROM_SCENE,this)),this._pScene.iUnregisterEntity(this)),this._pScene=value,value&&(value.dispatchEvent(new away.events.SceneEvent(away.events.SceneEvent.ADDED_TO_SCENE,this)),value.iRegisterEntity(this)),this.notifySceneChange()},DisplayObject.prototype.addBounds=function(){this._boundsIsShown||(this._boundsIsShown=!0)},DisplayObject.prototype.notifyPositionChanged=function(){this._positionChanged||(this._positionChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.POSITION_CHANGED,this)),this.dispatchEvent(this._positionChanged)},DisplayObject.prototype.notifyRotationChanged=function(){this._rotationChanged||(this._rotationChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.ROTATION_CHANGED,this)),this.dispatchEvent(this._rotationChanged)},DisplayObject.prototype.notifyScaleChanged=function(){this._scaleChanged||(this._scaleChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.SCALE_CHANGED,this)),this.dispatchEvent(this._scaleChanged)},DisplayObject.prototype.notifySceneChange=function(){this._listenToSceneChanged&&(this._scenechanged||(this._scenechanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.SCENE_CHANGED,this)),this.dispatchEvent(this._scenechanged))},DisplayObject.prototype.notifySceneTransformChange=function(){this._sceneTransformChanged||(this._sceneTransformChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this)),this.dispatchEvent(this._sceneTransformChanged)},DisplayObject.prototype.invalidateMatrix3D=function(){this._matrix3DDirty||(this._matrix3DDirty=!0,this._pSceneTransformDirty||this._pIgnoreTransform||this.pInvalidateSceneTransform())},DisplayObject.prototype.invalidatePartition=function(){this._iAssignedPartition&&this._iAssignedPartition.iMarkForUpdate(this)},DisplayObject.prototype.invalidatePivot=function(){this._pivotZero=0==this._pivot.x&&0==this._pivot.y&&0==this._pivot.z,this._pivotDirty||(this._pivotDirty=!0,this.invalidateMatrix3D())},DisplayObject.prototype.invalidatePosition=function(){this._positionDirty||(this._positionDirty=!0,this.invalidateMatrix3D(),this._listenToPositionChanged&&this.notifyPositionChanged())},DisplayObject.prototype.invalidateRotation=function(){this._rotationDirty||(this._rotationDirty=!0,this.invalidateMatrix3D(),this._listenToRotationChanged&&this.notifyRotationChanged())},DisplayObject.prototype.invalidateScale=function(){this._scaleDirty||(this._scaleDirty=!0,this.invalidateMatrix3D(),this._listenToScaleChanged&&this.notifyScaleChanged())},DisplayObject.prototype.removeBounds=function(){this._boundsIsShown&&(this._boundsIsShown=!1,this._pBounds.disposeRenderable())},DisplayObject}(away.library.NamedAssetBase);base.DisplayObject=DisplayObject}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var GradientType=function(){function GradientType(){}return GradientType.LINEAR="linear",GradientType.RADIAL="radial",GradientType}();base.GradientType=GradientType}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var Graphics=function(){function Graphics(){}return Graphics.prototype.beginBitmapFill=function(bitmap,matrix,repeat,smooth){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof repeat&&(repeat=!0),"undefined"==typeof smooth&&(smooth=!1)},Graphics.prototype.beginFill=function(color,alpha){"undefined"==typeof alpha&&(alpha=1)},Graphics.prototype.beginGradientFill=function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof spreadMethod&&(spreadMethod="pad"),"undefined"==typeof interpolationMethod&&(interpolationMethod="rgb"),"undefined"==typeof focalPointRatio&&(focalPointRatio=0)},Graphics.prototype.clear=function(){},Graphics.prototype.copyFrom=function(){},Graphics.prototype.cubicCurveTo=function(){},Graphics.prototype.curveTo=function(){},Graphics.prototype.drawCircle=function(){},Graphics.prototype.drawEllipse=function(){},Graphics.prototype.drawGraphicsData=function(){},Graphics.prototype.drawPath=function(){},Graphics.prototype.drawRect=function(){},Graphics.prototype.drawRoundRect=function(x,y,width,height,ellipseWidth,ellipseHeight){"undefined"==typeof ellipseHeight&&(ellipseHeight=0/0)},Graphics.prototype.drawTriangles=function(vertices,indices,uvtData,culling){"undefined"==typeof indices&&(indices=null),"undefined"==typeof uvtData&&(uvtData=null),"undefined"==typeof culling&&(culling=null)},Graphics.prototype.endFill=function(){},Graphics.prototype.lineBitmapStyle=function(bitmap,matrix,repeat,smooth){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof repeat&&(repeat=!0),"undefined"==typeof smooth&&(smooth=!1)},Graphics.prototype.lineGradientStyle=function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof spreadMethod&&(spreadMethod=null),"undefined"==typeof interpolationMethod&&(interpolationMethod=null),"undefined"==typeof focalPointRatio&&(focalPointRatio=0)},Graphics.prototype.lineStyle=function(thickness,color,alpha,pixelHinting,scaleMode,caps,joints,miterLimit){"undefined"==typeof thickness&&(thickness=0),"undefined"==typeof color&&(color=0),"undefined"==typeof alpha&&(alpha=1),"undefined"==typeof pixelHinting&&(pixelHinting=!1),"undefined"==typeof scaleMode&&(scaleMode=null),"undefined"==typeof caps&&(caps=null),"undefined"==typeof joints&&(joints=null),"undefined"==typeof miterLimit&&(miterLimit=3)},Graphics.prototype.lineTo=function(){},Graphics.prototype.moveTo=function(){},Graphics}();base.Graphics=Graphics}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var GraphicsPathWinding=function(){function GraphicsPathWinding(){}return GraphicsPathWinding.EVEN_ODD="evenOdd",GraphicsPathWinding.NON_ZERO="nonZero",GraphicsPathWinding}();base.GraphicsPathWinding=GraphicsPathWinding}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var InterpolationMethod=function(){function InterpolationMethod(){}return InterpolationMethod.LINEAR_RGB="linearRGB",InterpolationMethod.RGB="rgb",InterpolationMethod}();base.InterpolationMethod=InterpolationMethod}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var JointStyle=function(){function JointStyle(){}return JointStyle.BEVEL="bevel",JointStyle.MITER="miter",JointStyle.ROUND="round",JointStyle}();base.JointStyle=JointStyle}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var LineScaleMode=function(){function LineScaleMode(){}return LineScaleMode.HORIZONTAL="horizontal",LineScaleMode.NONE="none",LineScaleMode.NORMAL="normal",LineScaleMode.VERTICAL="vertical",LineScaleMode}();base.LineScaleMode=LineScaleMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var LoaderInfo=function(_super){function LoaderInfo(){_super.apply(this,arguments)}return __extends(LoaderInfo,_super),Object.defineProperty(LoaderInfo.prototype,"bytes",{get:function(){return this._bytes},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderInfo.prototype,"bytesLoaded",{get:function(){return this._bytesLoaded},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderInfo.prototype,"bytesTotal",{get:function(){return this._bytesTotal},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderInfo.prototype,"content",{get:function(){return this._content},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderInfo.prototype,"contentType",{get:function(){return this._contentType},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderInfo.prototype,"loader",{get:function(){return this._loader},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderInfo.prototype,"url",{get:function(){return this._url},enumerable:!0,configurable:!0}),LoaderInfo}(away.events.EventDispatcher);base.LoaderInfo=LoaderInfo}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var PixelSnapping=function(){function PixelSnapping(){}return PixelSnapping.ALWAYS="always",PixelSnapping.AUTO="auto",PixelSnapping.NEVER="never",PixelSnapping}();base.PixelSnapping=PixelSnapping}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var SpreadMethod=function(){function SpreadMethod(){}return SpreadMethod.PAD="pad",SpreadMethod.REFLECT="reflect",SpreadMethod.REPEAT="repeat",SpreadMethod}();base.SpreadMethod=SpreadMethod}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var StageGL=function(_super){function StageGL(canvas,stageGLIndex,stageGLManager,forceSoftware,profile){"undefined"==typeof forceSoftware&&(forceSoftware=!1),"undefined"==typeof profile&&(profile="baseline"),_super.call(this),this._x=0,this._y=0,this._iStageGLIndex=-1,this._antiAlias=0,this._renderTarget=null,this._renderSurfaceSelector=0,this._initialised=!1,this._canvas=canvas,this._iStageGLIndex=stageGLIndex,this._stageGLManager=stageGLManager,this._viewPort=new away.geom.Rectangle,this._enableDepthAndStencil=!0,away.utils.CSS.setCanvasX(this._canvas,0),away.utils.CSS.setCanvasY(this._canvas,0),this.visible=!0}return __extends(StageGL,_super),StageGL.prototype.requestContext=function(aglslContext,forceSoftware,profile){"undefined"==typeof aglslContext&&(aglslContext=!1),"undefined"==typeof forceSoftware&&(forceSoftware=!1),"undefined"==typeof profile&&(profile="baseline"),null!=this._usesSoftwareRendering&&(this._usesSoftwareRendering=forceSoftware),this._profile=profile;try{this._contextGL=aglslContext?new away.gl.AGLSLContextGL(this._canvas):new away.gl.ContextGL(this._canvas)}catch(e){this.dispatchEvent(new away.events.Event(away.events.Event.ERROR))}this._contextGL&&(this._width&&this._height&&this._contextGL.configureBackBuffer(this._width,this._height,this._antiAlias,this._enableDepthAndStencil),this.dispatchEvent(new away.events.StageGLEvent(this._initialised?away.events.StageGLEvent.CONTEXTGL_RECREATED:away.events.StageGLEvent.CONTEXTGL_CREATED)),this._initialised=!0)},Object.defineProperty(StageGL.prototype,"width",{get:function(){return this._width},set:function(val){this._width!=val&&(away.utils.CSS.setCanvasWidth(this._canvas,val),this._width=this._viewPort.width=val,this._backBufferDirty=!0,this.notifyViewportUpdated())},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"height",{get:function(){return this._height},set:function(val){this._height!=val&&(away.utils.CSS.setCanvasHeight(this._canvas,val),this._height=this._viewPort.height=val,this._backBufferDirty=!0,this.notifyViewportUpdated())},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"x",{get:function(){return this._x},set:function(val){this._x!=val&&(away.utils.CSS.setCanvasX(this._canvas,val),this._x=this._viewPort.x=val,this.notifyViewportUpdated())},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"y",{get:function(){return this._y},set:function(val){this._y!=val&&(away.utils.CSS.setCanvasY(this._canvas,val),this._y=this._viewPort.y=val,this.notifyViewportUpdated())},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"visible",{get:function(){return away.utils.CSS.getCanvasVisibility(this._canvas)},set:function(val){away.utils.CSS.setCanvasVisibility(this._canvas,val)},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"canvas",{get:function(){return this._canvas},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"contextGL",{get:function(){return this._contextGL},enumerable:!0,configurable:!0}),StageGL.prototype.notifyViewportUpdated=function(){this._viewportDirty||(this._viewportDirty=!0,this._viewportUpdated=new away.events.StageGLEvent(away.events.StageGLEvent.VIEWPORT_UPDATED),this.dispatchEvent(this._viewportUpdated))},StageGL.prototype.notifyEnterFrame=function(){this._enterFrame||(this._enterFrame=new away.events.Event(away.events.Event.ENTER_FRAME)),this.dispatchEvent(this._enterFrame)},StageGL.prototype.notifyExitFrame=function(){this._exitFrame||(this._exitFrame=new away.events.Event(away.events.Event.EXIT_FRAME)),this.dispatchEvent(this._exitFrame)},Object.defineProperty(StageGL.prototype,"profile",{get:function(){return this._profile},enumerable:!0,configurable:!0}),StageGL.prototype.dispose=function(){this._stageGLManager.iRemoveStageGL(this),this.freeContextGL(),this._stageGLManager=null,this._iStageGLIndex=-1},StageGL.prototype.configureBackBuffer=function(backBufferWidth,backBufferHeight,antiAlias,enableDepthAndStencil){this.width=backBufferWidth,this.height=backBufferHeight,this._antiAlias=antiAlias,this._enableDepthAndStencil=enableDepthAndStencil,this._contextGL&&this._contextGL.configureBackBuffer(backBufferWidth,backBufferHeight,antiAlias,enableDepthAndStencil)},Object.defineProperty(StageGL.prototype,"enableDepthAndStencil",{get:function(){return this._enableDepthAndStencil},set:function(enableDepthAndStencil){this._enableDepthAndStencil=enableDepthAndStencil,this._backBufferDirty=!0},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"renderTarget",{get:function(){return this._renderTarget},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"renderSurfaceSelector",{get:function(){return this._renderSurfaceSelector},enumerable:!0,configurable:!0}),StageGL.prototype.setRenderTarget=function(target,enableDepthAndStencil,surfaceSelector){"undefined"==typeof enableDepthAndStencil&&(enableDepthAndStencil=!1),"undefined"==typeof surfaceSelector&&(surfaceSelector=0),(this._renderTarget!==target||surfaceSelector!=this._renderSurfaceSelector||this._enableDepthAndStencil!=enableDepthAndStencil)&&(this._renderTarget=target,this._renderSurfaceSelector=surfaceSelector,this._enableDepthAndStencil=enableDepthAndStencil,target?this._contextGL.setRenderToTexture(target,enableDepthAndStencil,this._antiAlias,surfaceSelector):(this._contextGL.setRenderToBackBuffer(),this.configureBackBuffer(this._width,this._height,this._antiAlias,this._enableDepthAndStencil)))},StageGL.prototype.clear=function(){this._contextGL&&(this._backBufferDirty&&(this.configureBackBuffer(this._width,this._height,this._antiAlias,this._enableDepthAndStencil),this._backBufferDirty=!1),this._contextGL.clear((4278190080&this._color)>>>24,(16711680&this._color)>>>16,(65280&this._color)>>>8,255&this._color),this._bufferClear=!0)
-},StageGL.prototype.present=function(){this._contextGL&&(this._contextGL.present(),this._activeProgram=null)},StageGL.prototype.addEventListener=function(type,listener){_super.prototype.addEventListener.call(this,type,listener)},StageGL.prototype.removeEventListener=function(type,listener){_super.prototype.removeEventListener.call(this,type,listener)},Object.defineProperty(StageGL.prototype,"scissorRect",{get:function(){return this._scissorRect},set:function(value){this._scissorRect=value,this._contextGL.setScissorRectangle(this._scissorRect)},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"stageGLIndex",{get:function(){return this._iStageGLIndex},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"usesSoftwareRendering",{get:function(){return this._usesSoftwareRendering},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"antiAlias",{get:function(){return this._antiAlias},set:function(antiAlias){this._antiAlias=antiAlias,this._backBufferDirty=!0},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"viewPort",{get:function(){return this._viewportDirty=!1,this._viewPort},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"color",{get:function(){return this._color},set:function(color){this._color=color},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"bufferClear",{get:function(){return this._bufferClear},set:function(newBufferClear){this._bufferClear=newBufferClear},enumerable:!0,configurable:!0}),StageGL.prototype.freeContextGL=function(){this._contextGL&&(this._contextGL.dispose(),this.dispatchEvent(new away.events.StageGLEvent(away.events.StageGLEvent.CONTEXTGL_DISPOSED))),this._contextGL=null,this._initialised=!1},StageGL.prototype.onEnterFrame=function(){this._contextGL&&(this.clear(),this.notifyEnterFrame(),this.present(),this.notifyExitFrame())},StageGL.prototype.recoverFromDisposal=function(){return this._contextGL?!0:!1},StageGL.prototype.clearDepthBuffer=function(){this._contextGL&&this._contextGL.clear(0,0,0,1,1,0,away.gl.ContextGLClearMask.DEPTH)},StageGL}(away.events.EventDispatcher);base.StageGL=StageGL}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var TriangleCulling=function(){function TriangleCulling(){}return TriangleCulling.NEGATIVE="negative",TriangleCulling.NONE="none",TriangleCulling.POSITIVE="positive",TriangleCulling}();base.TriangleCulling=TriangleCulling}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(pool){var EntityListItem=function(){function EntityListItem(){}return EntityListItem}();pool.EntityListItem=EntityListItem}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var EntityListItemPool=function(){function EntityListItemPool(){this._index=0,this._poolSize=0,this._pool=[]}return EntityListItemPool.prototype.getItem=function(){var item;return this._index==this._poolSize?(item=new away.pool.EntityListItem,this._pool[this._index++]=item,++this._poolSize):item=this._pool[this._index++],item},EntityListItemPool.prototype.freeAll=function(){this._index=0},EntityListItemPool.prototype.dispose=function(){this._pool.length=0},EntityListItemPool}();pool.EntityListItemPool=EntityListItemPool}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var RenderablePool=function(){function RenderablePool(renderableClass){this._pool=new Object,this._renderableClass=renderableClass}return RenderablePool.prototype.getItem=function(materialOwner){return this._pool[materialOwner.id]||(this._pool[materialOwner.id]=materialOwner._iAddRenderable(new this._renderableClass(this,materialOwner)))},RenderablePool.prototype.disposeItem=function(materialOwner){materialOwner._iRemoveRenderable(this._pool[materialOwner.id]),this._pool[materialOwner.id]=null},RenderablePool.getPool=function(renderableClass){var pool=RenderablePool._pools[renderableClass.id];return void 0!=pool?pool:RenderablePool._pools[renderableClass.id]=new RenderablePool(renderableClass)},RenderablePool.disposePool=function(renderableClass){RenderablePool._pools[renderableClass.id]&&(RenderablePool._pools[renderableClass.id]=void 0)},RenderablePool._pools=new Object,RenderablePool}();pool.RenderablePool=RenderablePool}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var CSSRenderableBase=function(){function CSSRenderableBase(pool,sourceEntity,materialOwner){this._pool=pool,this.sourceEntity=sourceEntity,this.materialOwner=materialOwner}return CSSRenderableBase.prototype.dispose=function(){this._pool.disposeItem(this.materialOwner)},CSSRenderableBase.prototype._iUpdate=function(){},CSSRenderableBase}();pool.CSSRenderableBase=CSSRenderableBase}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var CSSBillboardRenderable=function(_super){function CSSBillboardRenderable(pool,billboard){_super.call(this,pool,billboard,billboard);var div=document.createElement("div");div.onmousedown=function(){return!1},this.htmlElement=div;var style=div.style;style.position="absolute",style.transformOrigin=style["-webkit-transform-origin"]=style["-moz-transform-origin"]=style["-o-transform-origin"]=style["-ms-transform-origin"]="0% 0%";var img=document.createElement("div");div.appendChild(img),img.className="material"+billboard.material.id}return __extends(CSSBillboardRenderable,_super),CSSBillboardRenderable.id="billboard",CSSBillboardRenderable}(away.pool.CSSRenderableBase);pool.CSSBillboardRenderable=CSSBillboardRenderable}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(traverse){var CollectorBase=function(){function CollectorBase(){this._numCullPlanes=0,this._pNumEntities=0,this._pNumInteractiveEntities=0,this._pEntityListItemPool=new away.pool.EntityListItemPool}return Object.defineProperty(CollectorBase.prototype,"camera",{get:function(){return this._pCamera},set:function(value){this._pCamera=value,this._cullPlanes=this._pCamera.frustumPlanes},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"cullPlanes",{get:function(){return this._customCullPlanes},set:function(value){this._customCullPlanes=value},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"entityHead",{get:function(){return this._pEntityHead},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"numEntities",{get:function(){return this._pNumEntities},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"numInteractiveEntities",{get:function(){return this._pNumInteractiveEntities},enumerable:!0,configurable:!0}),CollectorBase.prototype.clear=function(){this._pNumEntities=this._pNumInteractiveEntities=0,this._cullPlanes=this._customCullPlanes?this._customCullPlanes:this._pCamera?this._pCamera.frustumPlanes:null,this._numCullPlanes=this._cullPlanes?this._cullPlanes.length:0,this._pEntityHead=null,this._pEntityListItemPool.freeAll()},CollectorBase.prototype.enterNode=function(node){var enter=this.scene._iCollectionMark!=node._iCollectionMark&&node.isInFrustum(this._cullPlanes,this._numCullPlanes);return node._iCollectionMark=this.scene._iCollectionMark,enter},CollectorBase.prototype.applyDirectionalLight=function(){},CollectorBase.prototype.applyEntity=function(entity){this._pNumEntities++,entity._iIsMouseEnabled()&&this._pNumInteractiveEntities++;var item=this._pEntityListItemPool.getItem();item.entity=entity,item.next=this._pEntityHead,this._pEntityHead=item},CollectorBase.prototype.applyLightProbe=function(){},CollectorBase.prototype.applyPointLight=function(){},CollectorBase}();traverse.CollectorBase=CollectorBase}(away.traverse||(away.traverse={}));away.traverse}(away||(away={}));var away;!function(away){!function(traverse){var RaycastCollector=function(_super){function RaycastCollector(){_super.call(this),this._rayPosition=new away.geom.Vector3D,this._rayDirection=new away.geom.Vector3D,this._iCollectionMark=0}return __extends(RaycastCollector,_super),Object.defineProperty(RaycastCollector.prototype,"rayPosition",{get:function(){return this._rayPosition},set:function(value){this._rayPosition=value},enumerable:!0,configurable:!0}),Object.defineProperty(RaycastCollector.prototype,"rayDirection",{get:function(){return this._rayDirection},set:function(value){this._rayDirection=value},enumerable:!0,configurable:!0}),RaycastCollector.prototype.enterNode=function(node){return node.isIntersectingRay(this._rayPosition,this._rayDirection)},RaycastCollector}(away.traverse.CollectorBase);traverse.RaycastCollector=RaycastCollector}(away.traverse||(away.traverse={}));away.traverse}(away||(away={}));var away;!function(away){!function(traverse){var CSSEntityCollector=function(_super){function CSSEntityCollector(){_super.call(this)}return __extends(CSSEntityCollector,_super),CSSEntityCollector}(away.traverse.CollectorBase);traverse.CSSEntityCollector=CSSEntityCollector}(away.traverse||(away.traverse={}));away.traverse}(away||(away={}));var away;!function(away){!function(partition){var NodeBase=function(){function NodeBase(){this._pNumChildNodes=0,this._iNumEntities=0,this._pChildNodes=new Array}return Object.defineProperty(NodeBase.prototype,"showDebugBounds",{get:function(){return null!=this._pDebugPrimitive},set:function(value){if(!(this._pDebugPrimitive&&1==value||!this._pDebugPrimitive&&0==value)){value?this._pDebugPrimitive=this.pCreateDebugBounds():(this._pDebugPrimitive.dispose(),this._pDebugPrimitive=null);for(var i=0;ii;i++)if(this._ignoredEntities[i]==entity)return!0;return!1},RaycastPicker.prototype.sortOnNearT=function(entity1,entity2){return entity1._iPickingCollisionVO.rayEntryDistance>entity2._iPickingCollisionVO.rayEntryDistance?1:-1},RaycastPicker.prototype.getPickingCollisionVO=function(){this._entities.length=this._numEntities,this._entities=this._entities.sort(this.sortOnNearT);var bestCollisionVO,pickingCollisionVO,entity,i,shortestCollisionDistance=Number.MAX_VALUE;for(i=0;imb?1:-1}else cmp=aid>bid?1:-1;0>cmp?(l=head,head=head.next):(l=headB,headB=headB.next),result?(curr.next=l,curr=l):(result=l,curr=l)}return head?curr.next=head:headB&&(curr.next=headB),result},RenderableMergeSort}();sort.RenderableMergeSort=RenderableMergeSort}(away.sort||(away.sort={}));away.sort}(away||(away={}));var away;!function(away){!function(gl){var ContextGLClearMask=function(){function ContextGLClearMask(){}return ContextGLClearMask.COLOR=16384,ContextGLClearMask.DEPTH=256,ContextGLClearMask.STENCIL=1024,ContextGLClearMask.ALL=ContextGLClearMask.COLOR|ContextGLClearMask.DEPTH|ContextGLClearMask.STENCIL,ContextGLClearMask}();gl.ContextGLClearMask=ContextGLClearMask}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var VertexBuffer=function(){function VertexBuffer(gl,numVertices,data32PerVertex){this._gl=gl,this._buffer=this._gl.createBuffer(),this._numVertices=numVertices,this._data32PerVertex=data32PerVertex}return VertexBuffer.prototype.uploadFromArray=function(vertices){this._gl.bindBuffer(this._gl.ARRAY_BUFFER,this._buffer),this._gl.bufferData(this._gl.ARRAY_BUFFER,new Float32Array(vertices),this._gl.STATIC_DRAW)},Object.defineProperty(VertexBuffer.prototype,"numVertices",{get:function(){return this._numVertices},enumerable:!0,configurable:!0}),Object.defineProperty(VertexBuffer.prototype,"data32PerVertex",{get:function(){return this._data32PerVertex},enumerable:!0,configurable:!0}),Object.defineProperty(VertexBuffer.prototype,"glBuffer",{get:function(){return this._buffer},enumerable:!0,configurable:!0}),VertexBuffer.prototype.dispose=function(){this._gl.deleteBuffer(this._buffer)},VertexBuffer}();gl.VertexBuffer=VertexBuffer}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var IndexBuffer=function(){function IndexBuffer(gl,numIndices){this._gl=gl,this._buffer=this._gl.createBuffer(),this._numIndices=numIndices}return IndexBuffer.prototype.uploadFromArray=function(data){this._gl.bindBuffer(this._gl.ELEMENT_ARRAY_BUFFER,this._buffer),this._gl.bufferData(this._gl.ELEMENT_ARRAY_BUFFER,new Uint16Array(data),this._gl.STATIC_DRAW)},IndexBuffer.prototype.dispose=function(){this._gl.deleteBuffer(this._buffer)},Object.defineProperty(IndexBuffer.prototype,"numIndices",{get:function(){return this._numIndices},enumerable:!0,configurable:!0}),Object.defineProperty(IndexBuffer.prototype,"glBuffer",{get:function(){return this._buffer},enumerable:!0,configurable:!0}),IndexBuffer}();gl.IndexBuffer=IndexBuffer}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var Program=function(){function Program(gl){this._gl=gl,this._program=this._gl.createProgram()
-}return Program.prototype.upload=function(vertexProgram,fragmentProgram){return this._vertexShader=this._gl.createShader(this._gl.VERTEX_SHADER),this._fragmentShader=this._gl.createShader(this._gl.FRAGMENT_SHADER),this._gl.shaderSource(this._vertexShader,vertexProgram),this._gl.compileShader(this._vertexShader),this._gl.getShaderParameter(this._vertexShader,this._gl.COMPILE_STATUS)?(this._gl.shaderSource(this._fragmentShader,fragmentProgram),this._gl.compileShader(this._fragmentShader),this._gl.getShaderParameter(this._fragmentShader,this._gl.COMPILE_STATUS)?(this._gl.attachShader(this._program,this._vertexShader),this._gl.attachShader(this._program,this._fragmentShader),this._gl.linkProgram(this._program),this._gl.getProgramParameter(this._program,this._gl.LINK_STATUS)||alert("Could not link the program."),void 0):(alert(this._gl.getShaderInfoLog(this._fragmentShader)),null)):(alert(this._gl.getShaderInfoLog(this._vertexShader)),null)},Program.prototype.dispose=function(){this._gl.deleteProgram(this._program)},Program.prototype.focusProgram=function(){this._gl.useProgram(this._program)},Object.defineProperty(Program.prototype,"glProgram",{get:function(){return this._program},enumerable:!0,configurable:!0}),Program}();gl.Program=Program}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var SamplerState=function(){function SamplerState(){this.wrap=0,this.filter=0,this.mipfilter=0}return SamplerState}();gl.SamplerState=SamplerState}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLTextureFormat=function(){function ContextGLTextureFormat(){}return ContextGLTextureFormat.BGRA="bgra",ContextGLTextureFormat.BGRA_PACKED="bgraPacked4444",ContextGLTextureFormat.BGR_PACKED="bgrPacked565",ContextGLTextureFormat.COMPRESSED="compressed",ContextGLTextureFormat.COMPRESSED_ALPHA="compressedAlpha",ContextGLTextureFormat}();gl.ContextGLTextureFormat=ContextGLTextureFormat}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var TextureBase=function(){function TextureBase(gl){this.textureType="",this._gl=gl}return TextureBase.prototype.dispose=function(){throw"Abstract method must be overridden."},TextureBase}();gl.TextureBase=TextureBase}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var Texture=function(_super){function Texture(gl,width,height){_super.call(this,gl),this.textureType="texture2d",this._width=width,this._height=height,this._glTexture=this._gl.createTexture()}return __extends(Texture,_super),Texture.prototype.dispose=function(){this._gl.deleteTexture(this._glTexture)},Object.defineProperty(Texture.prototype,"width",{get:function(){return this._width},enumerable:!0,configurable:!0}),Object.defineProperty(Texture.prototype,"height",{get:function(){return this._height},enumerable:!0,configurable:!0}),Object.defineProperty(Texture.prototype,"frameBuffer",{get:function(){return this._frameBuffer},enumerable:!0,configurable:!0}),Texture.prototype.uploadFromHTMLImageElement=function(image,miplevel){"undefined"==typeof miplevel&&(miplevel=0),this._gl.bindTexture(this._gl.TEXTURE_2D,this._glTexture),this._gl.texImage2D(this._gl.TEXTURE_2D,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image),this._gl.bindTexture(this._gl.TEXTURE_2D,null)},Texture.prototype.uploadFromBitmapData=function(data,miplevel){"undefined"==typeof miplevel&&(miplevel=0),this._gl.bindTexture(this._gl.TEXTURE_2D,this._glTexture),this._gl.texImage2D(this._gl.TEXTURE_2D,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_2D,null)},Texture.prototype.uploadCompressedTextureFromByteArray=function(data,byteArrayOffset,async){"undefined"==typeof async&&(async=!1);this._gl.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc")},Object.defineProperty(Texture.prototype,"glTexture",{get:function(){return this._glTexture},enumerable:!0,configurable:!0}),Texture.prototype.generateFromRenderBuffer=function(){this._frameBuffer=this._gl.createFramebuffer(),this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,this._frameBuffer),this._frameBuffer.width=this._width,this._frameBuffer.height=this._height,this._gl.bindTexture(this._gl.TEXTURE_2D,this._glTexture),this._gl.texImage2D(this._gl.TEXTURE_2D,0,this._gl.RGBA,this._width,this._height,0,this._gl.RGBA,this._gl.UNSIGNED_BYTE,null);var renderBuffer=this._gl.createRenderbuffer();this._gl.bindRenderbuffer(this._gl.RENDERBUFFER,renderBuffer),this._gl.renderbufferStorage(this._gl.RENDERBUFFER,this._gl.DEPTH_COMPONENT16,this._width,this._height),this._gl.framebufferTexture2D(this._gl.FRAMEBUFFER,this._gl.COLOR_ATTACHMENT0,this._gl.TEXTURE_2D,this._glTexture,0),this._gl.framebufferRenderbuffer(this._gl.FRAMEBUFFER,this._gl.DEPTH_ATTACHMENT,this._gl.RENDERBUFFER,renderBuffer),this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._gl.bindRenderbuffer(this._gl.RENDERBUFFER,null),this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,null)},Texture.prototype.generateMipmaps=function(){},Texture}(away.gl.TextureBase);gl.Texture=Texture}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var CubeTexture=function(_super){function CubeTexture(gl,size){_super.call(this,gl),this.textureType="textureCube",this._size=size,this._texture=this._gl.createTexture()}return __extends(CubeTexture,_super),CubeTexture.prototype.dispose=function(){this._gl.deleteTexture(this._texture)},CubeTexture.prototype.uploadFromHTMLImageElement=function(image,side,miplevel){switch("undefined"==typeof miplevel&&(miplevel=0),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),side){case 0:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 1:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 2:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 3:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 4:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 5:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;default:throw"unknown side type"}this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null)},CubeTexture.prototype.uploadFromBitmapData=function(data,side,miplevel){switch("undefined"==typeof miplevel&&(miplevel=0),side){case 0:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 1:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 2:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 3:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 4:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 5:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;default:throw"unknown side type"}},CubeTexture.prototype.uploadCompressedTextureFromByteArray=function(data,byteArrayOffset,async){"undefined"==typeof async&&(async=!1)},Object.defineProperty(CubeTexture.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),Object.defineProperty(CubeTexture.prototype,"glTexture",{get:function(){return this._texture},enumerable:!0,configurable:!0}),CubeTexture}(away.gl.TextureBase);gl.CubeTexture=CubeTexture}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLTriangleFace=function(){function ContextGLTriangleFace(){}return ContextGLTriangleFace.BACK="back",ContextGLTriangleFace.FRONT="front",ContextGLTriangleFace.FRONT_AND_BACK="frontAndBack",ContextGLTriangleFace.NONE="none",ContextGLTriangleFace}();gl.ContextGLTriangleFace=ContextGLTriangleFace}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLVertexBufferFormat=function(){function ContextGLVertexBufferFormat(){}return ContextGLVertexBufferFormat.BYTES_4="bytes4",ContextGLVertexBufferFormat.FLOAT_1="float1",ContextGLVertexBufferFormat.FLOAT_2="float2",ContextGLVertexBufferFormat.FLOAT_3="float3",ContextGLVertexBufferFormat.FLOAT_4="float4",ContextGLVertexBufferFormat}();gl.ContextGLVertexBufferFormat=ContextGLVertexBufferFormat}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLProgramType=function(){function ContextGLProgramType(){}return ContextGLProgramType.FRAGMENT="fragment",ContextGLProgramType.VERTEX="vertex",ContextGLProgramType}();gl.ContextGLProgramType=ContextGLProgramType}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLBlendFactor=function(){function ContextGLBlendFactor(){}return ContextGLBlendFactor.DESTINATION_ALPHA="destinationAlpha",ContextGLBlendFactor.DESTINATION_COLOR="destinationColor",ContextGLBlendFactor.ONE="one",ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA="oneMinusDestinationAlpha",ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR="oneMinusDestinationColor",ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA="oneMinusSourceAlpha",ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR="oneMinusSourceColor",ContextGLBlendFactor.SOURCE_ALPHA="sourceAlpha",ContextGLBlendFactor.SOURCE_COLOR="sourceColor",ContextGLBlendFactor.ZERO="zero",ContextGLBlendFactor}();gl.ContextGLBlendFactor=ContextGLBlendFactor}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLCompareMode=function(){function ContextGLCompareMode(){}return ContextGLCompareMode.ALWAYS="always",ContextGLCompareMode.EQUAL="equal",ContextGLCompareMode.GREATER="greater",ContextGLCompareMode.GREATER_EQUAL="greaterEqual",ContextGLCompareMode.LESS="less",ContextGLCompareMode.LESS_EQUAL="lessEqual",ContextGLCompareMode.NEVER="never",ContextGLCompareMode.NOT_EQUAL="notEqual",ContextGLCompareMode}();gl.ContextGLCompareMode=ContextGLCompareMode}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLMipFilter=function(){function ContextGLMipFilter(){}return ContextGLMipFilter.MIPLINEAR="miplinear",ContextGLMipFilter.MIPNEAREST="mipnearest",ContextGLMipFilter.MIPNONE="mipnone",ContextGLMipFilter}();gl.ContextGLMipFilter=ContextGLMipFilter}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLProfile=function(){function ContextGLProfile(){}return ContextGLProfile.BASELINE="baseline",ContextGLProfile.BASELINE_CONSTRAINED="baselineConstrained",ContextGLProfile.BASELINE_EXTENDED="baselineExtended",ContextGLProfile}();gl.ContextGLProfile=ContextGLProfile}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLStencilAction=function(){function ContextGLStencilAction(){}return ContextGLStencilAction.DECREMENT_SATURATE="decrementSaturate",ContextGLStencilAction.DECREMENT_WRAP="decrementWrap",ContextGLStencilAction.INCREMENT_SATURATE="incrementSaturate",ContextGLStencilAction.INCREMENT_WRAP="incrementWrap",ContextGLStencilAction.INVERT="invert",ContextGLStencilAction.KEEP="keep",ContextGLStencilAction.SET="set",ContextGLStencilAction.ZERO="zero",ContextGLStencilAction}();gl.ContextGLStencilAction=ContextGLStencilAction}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLTextureFilter=function(){function ContextGLTextureFilter(){}return ContextGLTextureFilter.LINEAR="linear",ContextGLTextureFilter.NEAREST="nearest",ContextGLTextureFilter}();gl.ContextGLTextureFilter=ContextGLTextureFilter}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLWrapMode=function(){function ContextGLWrapMode(){}return ContextGLWrapMode.CLAMP="clamp",ContextGLWrapMode.REPEAT="repeat",ContextGLWrapMode}();gl.ContextGLWrapMode=ContextGLWrapMode}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGL=function(){function ContextGL(canvas){this._currentWrap=0,this._currentFilter=0,this._currentMipFilter=0,this._indexBufferList=[],this._vertexBufferList=[],this._textureList=[],this._programList=[],this._samplerStates=[];try{this._gl=canvas.getContext("experimental-webgl",{premultipliedAlpha:!1,alpha:!1}),this._gl||(this._gl=canvas.getContext("webgl",{premultipliedAlpha:!1,alpha:!1}))}catch(e){}this._gl||alert("WebGL is not available.");for(var i=0;ii;++i){var currentIndex=4*i,locationName=this.getUniformLocationNameFromAgalRegisterIndex(programType,firstRegister+i)+(i+firstRegister);this.setGLSLProgramConstantsFromArray(locationName,data,currentIndex)}},ContextGL.prototype.setGLSLProgramConstantsFromMatrix=function(locationName,matrix,transposedMatrix){"undefined"==typeof transposedMatrix&&(transposedMatrix=!1);var location=this._gl.getUniformLocation(this._currentProgram.glProgram,locationName);this._gl.uniformMatrix4fv(location,!transposedMatrix,new Float32Array(matrix.rawData))},ContextGL.prototype.setGLSLProgramConstantsFromArray=function(locationName,data,startIndex){"undefined"==typeof startIndex&&(startIndex=0);var location=this._gl.getUniformLocation(this._currentProgram.glProgram,locationName);this._gl.uniform4f(location,data[startIndex],data[startIndex+1],data[startIndex+2],data[startIndex+3])},ContextGL.prototype.setScissorRectangle=function(rectangle){return rectangle?(this._gl.enable(this._gl.SCISSOR_TEST),this._gl.scissor(rectangle.x,rectangle.y,rectangle.width,rectangle.height),void 0):(this._gl.disable(this._gl.SCISSOR_TEST),void 0)},ContextGL.prototype.setTextureAt=function(sampler,texture){var locationName="fs"+sampler;this.setGLSLTextureAt(locationName,texture,sampler)},ContextGL.prototype.setGLSLTextureAt=function(locationName,texture,textureIndex){if(!texture)return this._gl.activeTexture(this._gl.TEXTURE0+textureIndex),this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null),void 0;switch(textureIndex){case 0:this._gl.activeTexture(this._gl.TEXTURE0);break;case 1:this._gl.activeTexture(this._gl.TEXTURE1);break;case 2:this._gl.activeTexture(this._gl.TEXTURE2);break;case 3:this._gl.activeTexture(this._gl.TEXTURE3);break;case 4:this._gl.activeTexture(this._gl.TEXTURE4);break;case 5:this._gl.activeTexture(this._gl.TEXTURE5);break;case 6:this._gl.activeTexture(this._gl.TEXTURE6);break;case 7:this._gl.activeTexture(this._gl.TEXTURE7);break;default:throw"Texture "+textureIndex+" is out of bounds."}var location=this._gl.getUniformLocation(this._currentProgram.glProgram,locationName);if("texture2d"==texture.textureType){this._gl.bindTexture(this._gl.TEXTURE_2D,texture.glTexture),this._gl.uniform1i(location,textureIndex);var samplerState=this._samplerStates[textureIndex];samplerState.wrap!=this._currentWrap&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_WRAP_S,samplerState.wrap),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_WRAP_T,samplerState.wrap)),samplerState.filter!=this._currentFilter&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,samplerState.filter),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,samplerState.filter)),samplerState.mipfilter!=this._currentMipFilter&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,samplerState.mipfilter),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,samplerState.mipfilter))}else if("textureCube"==texture.textureType){this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,texture.glTexture),this._gl.uniform1i(location,textureIndex);var samplerState=this._samplerStates[textureIndex];samplerState.wrap!=this._currentWrap&&(this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_WRAP_S,samplerState.wrap),this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_WRAP_T,samplerState.wrap)),samplerState.filter!=this._currentFilter&&(this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_MIN_FILTER,samplerState.filter),this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_MAG_FILTER,samplerState.filter)),samplerState.mipfilter!=this._currentMipFilter&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,samplerState.mipfilter),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,samplerState.mipfilter))}},ContextGL.prototype.setSamplerStateAt=function(sampler,wrap,filter,mipfilter){var glWrap=0,glFilter=0,glMipFilter=0;switch(wrap){case away.gl.ContextGLWrapMode.REPEAT:glWrap=this._gl.REPEAT;break;case away.gl.ContextGLWrapMode.CLAMP:glWrap=this._gl.CLAMP_TO_EDGE;break;default:throw"Wrap is not supported: "+wrap}switch(filter){case away.gl.ContextGLTextureFilter.LINEAR:glFilter=this._gl.LINEAR;break;case away.gl.ContextGLTextureFilter.NEAREST:glFilter=this._gl.NEAREST;break;default:throw"Filter is not supported "+filter}switch(mipfilter){case away.gl.ContextGLMipFilter.MIPNEAREST:glMipFilter=this._gl.NEAREST_MIPMAP_NEAREST;break;case away.gl.ContextGLMipFilter.MIPLINEAR:glMipFilter=this._gl.LINEAR_MIPMAP_LINEAR;break;case away.gl.ContextGLMipFilter.MIPNONE:glMipFilter=this._gl.NONE;break;default:throw"MipFilter is not supported "+mipfilter}if(!(sampler>=0&&sampler-1&&this._gl.disableVertexAttribArray(location),void 0;this._gl.bindBuffer(this._gl.ARRAY_BUFFER,buffer.glBuffer);var dimension,type=this._gl.FLOAT,numBytes=4;switch(format){case away.gl.ContextGLVertexBufferFormat.BYTES_4:dimension=4;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_1:dimension=1;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_2:dimension=2;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_3:dimension=3;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_4:dimension=4;break;default:throw"Buffer format "+format+" is not supported."}this._gl.enableVertexAttribArray(location),this._gl.vertexAttribPointer(location,dimension,type,!1,buffer.data32PerVertex*numBytes,bufferOffset*numBytes)},ContextGL.prototype.setRenderToTexture=function(target,enableDepthAndStencil,antiAlias,surfaceSelector){"undefined"==typeof enableDepthAndStencil&&(enableDepthAndStencil=!1),"undefined"==typeof antiAlias&&(antiAlias=0),"undefined"==typeof surfaceSelector&&(surfaceSelector=0);var frameBuffer=target.frameBuffer;this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,frameBuffer),enableDepthAndStencil&&(this._gl.enable(this._gl.STENCIL_TEST),this._gl.enable(this._gl.DEPTH_TEST)),this._gl.viewport.width=frameBuffer.width,this._gl.viewport.height=frameBuffer.height,this._gl.viewport(0,0,frameBuffer.width,frameBuffer.height)},ContextGL.prototype.setRenderToBackBuffer=function(){this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,null)},ContextGL.prototype.updateBlendStatus=function(){this._blendEnabled?(this._gl.enable(this._gl.BLEND),this._gl.blendEquation(this._gl.FUNC_ADD),this._gl.blendFunc(this._blendSourceFactor,this._blendDestinationFactor)):this._gl.disable(this._gl.BLEND)},ContextGL.MAX_SAMPLERS=8,ContextGL.modulo=0,ContextGL}();gl.ContextGL=ContextGL}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var AGLSLContextGL=function(_super){function AGLSLContextGL(canvas){_super.call(this,canvas)}return __extends(AGLSLContextGL,_super),AGLSLContextGL.prototype.setProgramConstantsFromMatrix=function(programType,firstRegister,matrix,transposedMatrix){"undefined"==typeof transposedMatrix&&(transposedMatrix=!1);var d=matrix.rawData;transposedMatrix?(this.setProgramConstantsFromArray(programType,firstRegister,[d[0],d[4],d[8],d[12]],1),this.setProgramConstantsFromArray(programType,firstRegister+1,[d[1],d[5],d[9],d[13]],1),this.setProgramConstantsFromArray(programType,firstRegister+2,[d[2],d[6],d[10],d[14]],1),this.setProgramConstantsFromArray(programType,firstRegister+3,[d[3],d[7],d[11],d[15]],1)):(this.setProgramConstantsFromArray(programType,firstRegister,[d[0],d[1],d[2],d[3]],1),this.setProgramConstantsFromArray(programType,firstRegister+1,[d[4],d[5],d[6],d[7]],1),this.setProgramConstantsFromArray(programType,firstRegister+2,[d[8],d[9],d[10],d[11]],1),this.setProgramConstantsFromArray(programType,firstRegister+3,[d[12],d[13],d[14],d[15]],1))},AGLSLContextGL}(away.gl.ContextGL);gl.AGLSLContextGL=AGLSLContextGL}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(geom){var Box=function(){function Box(x,y,z,width,height,depth){"undefined"==typeof x&&(x=0),"undefined"==typeof y&&(y=0),"undefined"==typeof z&&(z=0),"undefined"==typeof width&&(width=0),"undefined"==typeof height&&(height=0),"undefined"==typeof depth&&(depth=0),this.x=x,this.y=y,this.z=z,this.width=width,this.height=height,this.depth=depth}return Object.defineProperty(Box.prototype,"back",{get:function(){return this.z+this.depth},set:function(val){this.depth=val-this.z},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"bottom",{get:function(){return this.y+this.height},set:function(val){this.height=val-this.y},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"bottomRightBack",{get:function(){return null==this._bottomRightBack&&(this._bottomRightBack=new away.geom.Vector3D),this._bottomRightBack.x=this.x+this.width,this._bottomRightBack.y=this.y+this.height,this._bottomRightBack.z=this.z+this.depth,this._bottomRightBack
-},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"front",{get:function(){return this.z},set:function(val){this.depth+=this.z-val,this.z=val},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"left",{get:function(){return this.x},set:function(val){this.width+=this.x-val,this.x=val},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"right",{get:function(){return this.x+this.width},set:function(val){this.width=val-this.x},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"size",{get:function(){return null==this._size&&(this._size=new away.geom.Vector3D),this._size.x=this.width,this._size.y=this.height,this._size.z=this.depth,this._size},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"top",{get:function(){return this.y},set:function(val){this.height+=this.y-val,this.y=val},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"topLeftFront",{get:function(){return null==this._topLeftFront&&(this._topLeftFront=new away.geom.Vector3D),this._topLeftFront.x=this.x,this._topLeftFront.y=this.y,this._topLeftFront.z=this.z,this._topLeftFront},enumerable:!0,configurable:!0}),Box.prototype.clone=function(){return new Box(this.x,this.y,this.z,this.width,this.height,this.depth)},Box.prototype.contains=function(x,y,z){return this.x<=x&&this.x+this.width>=x&&this.y<=y&&this.y+this.height>=y&&this.z<=z&&this.z+this.depth>=z},Box.prototype.containsPoint=function(position){return this.x<=position.x&&this.x+this.width>=position.x&&this.y<=position.y&&this.y+this.height>=position.y&&this.z<=position.z&&this.z+this.depth>=position.z},Box.prototype.containsRect=function(box){return this.x<=box.x&&this.x+this.width>=box.x+box.width&&this.y<=box.y&&this.y+this.height>=box.y+box.height&&this.z<=box.z&&this.z+this.depth>=box.z+box.depth},Box.prototype.copyFrom=function(){},Box.prototype.equals=function(toCompare){return this.x==toCompare.x&&this.y==toCompare.y&&this.z==toCompare.z&&this.width==toCompare.width&&this.height==toCompare.height&&this.depth==toCompare.depth},Box.prototype.inflate=function(dx,dy,dz){this.x-=dx/2,this.y-=dy/2,this.z-=dz/2,this.width+=dx/2,this.height+=dy/2,this.depth+=dz/2},Box.prototype.inflatePoint=function(delta){this.x-=delta.x/2,this.y-=delta.y/2,this.z-=delta.z/2,this.width+=delta.x/2,this.height+=delta.y/2,this.depth+=delta.z/2},Box.prototype.intersection=function(toIntersect){if(this.intersects(toIntersect)){var i=new Box;return this.x>toIntersect.x?(i.x=this.x,i.width=toIntersect.x-this.x+toIntersect.width,i.width>this.width&&(i.width=this.width)):(i.x=toIntersect.x,i.width=this.x-toIntersect.x+this.width,i.width>toIntersect.width&&(i.width=toIntersect.width)),this.y>toIntersect.y?(i.y=this.y,i.height=toIntersect.y-this.y+toIntersect.height,i.height>this.height&&(i.height=this.height)):(i.y=toIntersect.y,i.height=this.y-toIntersect.y+this.height,i.height>toIntersect.height&&(i.height=toIntersect.height)),this.z>toIntersect.z?(i.z=this.z,i.depth=toIntersect.z-this.z+toIntersect.depth,i.depth>this.depth&&(i.depth=this.depth)):(i.z=toIntersect.z,i.depth=this.z-toIntersect.z+this.depth,i.depth>toIntersect.depth&&(i.depth=toIntersect.depth)),i}return new Box},Box.prototype.intersects=function(toIntersect){return this.x+this.width>toIntersect.x&&this.xtoIntersect.y&&this.ytoIntersect.z&&this.z2)throw"Column "+column+" out of bounds (2)";0==column?(this.a=vector3D.x,this.c=vector3D.y):1==column?(this.b=vector3D.x,this.d=vector3D.y):(this.tx=vector3D.x,this.ty=vector3D.y)},Matrix.prototype.copyColumnTo=function(column,vector3D){if(column>2)throw new away.errors.ArgumentError("ArgumentError, Column "+column+" out of bounds [0, ..., 2]");0==column?(vector3D.x=this.a,vector3D.y=this.c,vector3D.z=0):1==column?(vector3D.x=this.b,vector3D.y=this.d,vector3D.z=0):(vector3D.x=this.tx,vector3D.y=this.ty,vector3D.z=1)},Matrix.prototype.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},Matrix.prototype.copyRowFrom=function(row,vector3D){if(row>2)throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 2]");0==row?(this.a=vector3D.x,this.c=vector3D.y):1==row?(this.b=vector3D.x,this.d=vector3D.y):(this.tx=vector3D.x,this.ty=vector3D.y)},Matrix.prototype.copyRowTo=function(row,vector3D){if(row>2)throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 2]");0==row?(vector3D.x=this.a,vector3D.y=this.b,vector3D.z=this.tx):1==row?(vector3D.x=this.c,vector3D.y=this.d,vector3D.z=this.ty):vector3D.setTo(0,0,1)},Matrix.prototype.createBox=function(scaleX,scaleY,rotation,tx,ty){"undefined"==typeof rotation&&(rotation=0),"undefined"==typeof tx&&(tx=0),"undefined"==typeof ty&&(ty=0),this.a=scaleX,this.d=scaleY,this.b=rotation,this.tx=tx,this.ty=ty},Matrix.prototype.createGradientBox=function(width,height,rotation,tx,ty){if("undefined"==typeof rotation&&(rotation=0),"undefined"==typeof tx&&(tx=0),"undefined"==typeof ty&&(ty=0),this.a=width/1638.4,this.d=height/1638.4,0!=rotation){var cos=Math.cos(rotation),sin=Math.sin(rotation);this.b=sin*this.d,this.c=-sin*this.a,this.a*=cos,this.d*=cos}else this.b=this.c=0;this.tx=tx+width/2,this.ty=ty+height/2},Matrix.prototype.deltaTransformPoint=function(point){return new away.geom.Point(point.x*this.a+point.y*this.c,point.x*this.b+point.y*this.d)},Matrix.prototype.identity=function(){this.a=1,this.b=0,this.c=0,this.d=1,this.tx=0,this.ty=0},Matrix.prototype.invert=function(){var norm=this.a*this.d-this.b*this.c;if(0==norm)this.a=this.b=this.c=this.d=0,this.tx=-this.tx,this.ty=-this.ty;else{norm=1/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}},Matrix.prototype.multiply=function(matrix){var result=new Matrix;return result.a=this.a*matrix.a+this.b*matrix.c,result.b=this.a*matrix.b+this.b*matrix.d,result.c=this.c*matrix.a+this.d*matrix.c,result.d=this.c*matrix.b+this.d*matrix.d,result.tx=this.tx*matrix.a+this.ty*matrix.c+matrix.tx,result.ty=this.tx*matrix.b+this.ty*matrix.d+matrix.ty,result},Matrix.prototype.rotate=function(angle){var cos=Math.cos(angle),sin=Math.sin(angle),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},Matrix.prototype.scale=function(sx,sy){this.a*=sx,this.b*=sy,this.c*=sx,this.d*=sy,this.tx*=sx,this.ty*=sy},Matrix.prototype.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},Matrix.prototype.toString=function(){return"[Matrix] (a="+this.a+", b="+this.b+", c="+this.c+", d="+this.d+", tx="+this.tx+", ty="+this.ty+")"},Matrix.prototype.transformPoint=function(point){return new away.geom.Point(point.x*this.a+point.y*this.c+this.tx,point.x*this.b+point.y*this.d+this.ty)},Matrix.prototype.translate=function(dx,dy){this.tx+=dx,this.ty+=dy},Matrix}();geom.Matrix=Matrix}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Matrix3D=function(){function Matrix3D(v){"undefined"==typeof v&&(v=null),this.rawData=null!=v&&16==v.length?v.concat():[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}return Matrix3D.prototype.append=function(lhs){var m111=this.rawData[0],m121=this.rawData[4],m131=this.rawData[8],m141=this.rawData[12],m112=this.rawData[1],m122=this.rawData[5],m132=this.rawData[9],m142=this.rawData[13],m113=this.rawData[2],m123=this.rawData[6],m133=this.rawData[10],m143=this.rawData[14],m114=this.rawData[3],m124=this.rawData[7],m134=this.rawData[11],m144=this.rawData[15],m211=lhs.rawData[0],m221=lhs.rawData[4],m231=lhs.rawData[8],m241=lhs.rawData[12],m212=lhs.rawData[1],m222=lhs.rawData[5],m232=lhs.rawData[9],m242=lhs.rawData[13],m213=lhs.rawData[2],m223=lhs.rawData[6],m233=lhs.rawData[10],m243=lhs.rawData[14],m214=lhs.rawData[3],m224=lhs.rawData[7],m234=lhs.rawData[11],m244=lhs.rawData[15];this.rawData[0]=m111*m211+m112*m221+m113*m231+m114*m241,this.rawData[1]=m111*m212+m112*m222+m113*m232+m114*m242,this.rawData[2]=m111*m213+m112*m223+m113*m233+m114*m243,this.rawData[3]=m111*m214+m112*m224+m113*m234+m114*m244,this.rawData[4]=m121*m211+m122*m221+m123*m231+m124*m241,this.rawData[5]=m121*m212+m122*m222+m123*m232+m124*m242,this.rawData[6]=m121*m213+m122*m223+m123*m233+m124*m243,this.rawData[7]=m121*m214+m122*m224+m123*m234+m124*m244,this.rawData[8]=m131*m211+m132*m221+m133*m231+m134*m241,this.rawData[9]=m131*m212+m132*m222+m133*m232+m134*m242,this.rawData[10]=m131*m213+m132*m223+m133*m233+m134*m243,this.rawData[11]=m131*m214+m132*m224+m133*m234+m134*m244,this.rawData[12]=m141*m211+m142*m221+m143*m231+m144*m241,this.rawData[13]=m141*m212+m142*m222+m143*m232+m144*m242,this.rawData[14]=m141*m213+m142*m223+m143*m233+m144*m243,this.rawData[15]=m141*m214+m142*m224+m143*m234+m144*m244},Matrix3D.prototype.appendRotation=function(degrees,axis){var m=Matrix3D.getAxisRotation(axis.x,axis.y,axis.z,degrees);this.append(m)},Matrix3D.prototype.appendScale=function(xScale,yScale,zScale){this.append(new Matrix3D([xScale,0,0,0,0,yScale,0,0,0,0,zScale,0,0,0,0,1]))},Matrix3D.prototype.appendTranslation=function(x,y,z){this.rawData[12]+=x,this.rawData[13]+=y,this.rawData[14]+=z},Matrix3D.prototype.clone=function(){return new Matrix3D(this.rawData.slice(0))},Matrix3D.prototype.copyColumnFrom=function(column,vector3D){switch(column){case 0:this.rawData[0]=vector3D.x,this.rawData[1]=vector3D.y,this.rawData[2]=vector3D.z,this.rawData[3]=vector3D.w;break;case 1:this.rawData[4]=vector3D.x,this.rawData[5]=vector3D.y,this.rawData[6]=vector3D.z,this.rawData[7]=vector3D.w;break;case 2:this.rawData[8]=vector3D.x,this.rawData[9]=vector3D.y,this.rawData[10]=vector3D.z,this.rawData[11]=vector3D.w;break;case 3:this.rawData[12]=vector3D.x,this.rawData[13]=vector3D.y,this.rawData[14]=vector3D.z,this.rawData[15]=vector3D.w;break;default:throw new away.errors.ArgumentError("ArgumentError, Column "+column+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyColumnTo=function(column,vector3D){switch(column){case 0:vector3D.x=this.rawData[0],vector3D.y=this.rawData[1],vector3D.z=this.rawData[2],vector3D.w=this.rawData[3];break;case 1:vector3D.x=this.rawData[4],vector3D.y=this.rawData[5],vector3D.z=this.rawData[6],vector3D.w=this.rawData[7];break;case 2:vector3D.x=this.rawData[8],vector3D.y=this.rawData[9],vector3D.z=this.rawData[10],vector3D.w=this.rawData[11];break;case 3:vector3D.x=this.rawData[12],vector3D.y=this.rawData[13],vector3D.z=this.rawData[14],vector3D.w=this.rawData[15];break;default:throw new away.errors.ArgumentError("ArgumentError, Column "+column+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyFrom=function(sourceMatrix3D){for(var len=sourceMatrix3D.rawData.length,c=0;len>c;c++)this.rawData[c]=sourceMatrix3D.rawData[c]},Matrix3D.prototype.copyRawDataFrom=function(vector,index,transpose){"undefined"==typeof index&&(index=0),"undefined"==typeof transpose&&(transpose=!1),transpose&&this.transpose();for(var len=vector.length-index,c=0;len>c;c++)this.rawData[c]=vector[c+index];transpose&&this.transpose()},Matrix3D.prototype.copyRawDataTo=function(vector,index,transpose){"undefined"==typeof index&&(index=0),"undefined"==typeof transpose&&(transpose=!1),transpose&&this.transpose();for(var len=this.rawData.length,c=0;len>c;c++)vector[c+index]=this.rawData[c];transpose&&this.transpose()},Matrix3D.prototype.copyRowFrom=function(row,vector3D){switch(row){case 0:this.rawData[0]=vector3D.x,this.rawData[4]=vector3D.y,this.rawData[8]=vector3D.z,this.rawData[12]=vector3D.w;break;case 1:this.rawData[1]=vector3D.x,this.rawData[5]=vector3D.y,this.rawData[9]=vector3D.z,this.rawData[13]=vector3D.w;break;case 2:this.rawData[2]=vector3D.x,this.rawData[6]=vector3D.y,this.rawData[10]=vector3D.z,this.rawData[14]=vector3D.w;break;case 3:this.rawData[3]=vector3D.x,this.rawData[7]=vector3D.y,this.rawData[11]=vector3D.z,this.rawData[15]=vector3D.w;break;default:throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyRowTo=function(row,vector3D){switch(row){case 0:vector3D.x=this.rawData[0],vector3D.y=this.rawData[4],vector3D.z=this.rawData[8],vector3D.w=this.rawData[12];break;case 1:vector3D.x=this.rawData[1],vector3D.y=this.rawData[5],vector3D.z=this.rawData[9],vector3D.w=this.rawData[13];break;case 2:vector3D.x=this.rawData[2],vector3D.y=this.rawData[6],vector3D.z=this.rawData[10],vector3D.w=this.rawData[14];break;case 3:vector3D.x=this.rawData[3],vector3D.y=this.rawData[7],vector3D.z=this.rawData[11],vector3D.w=this.rawData[15];break;default:throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyToMatrix3D=function(dest){dest.rawData=this.rawData.slice(0)},Matrix3D.prototype.decompose=function(orientationStyle){"undefined"==typeof orientationStyle&&(orientationStyle="eulerAngles");var vec=[],m=this.clone(),mr=m.rawData,pos=new away.geom.Vector3D(mr[12],mr[13],mr[14]);mr[12]=0,mr[13]=0,mr[14]=0;var scale=new away.geom.Vector3D;scale.x=Math.sqrt(mr[0]*mr[0]+mr[1]*mr[1]+mr[2]*mr[2]),scale.y=Math.sqrt(mr[4]*mr[4]+mr[5]*mr[5]+mr[6]*mr[6]),scale.z=Math.sqrt(mr[8]*mr[8]+mr[9]*mr[9]+mr[10]*mr[10]),mr[0]*(mr[5]*mr[10]-mr[6]*mr[9])-mr[1]*(mr[4]*mr[10]-mr[6]*mr[8])+mr[2]*(mr[4]*mr[9]-mr[5]*mr[8])<0&&(scale.z=-scale.z),mr[0]/=scale.x,mr[1]/=scale.x,mr[2]/=scale.x,mr[4]/=scale.y,mr[5]/=scale.y,mr[6]/=scale.y,mr[8]/=scale.z,mr[9]/=scale.z,mr[10]/=scale.z;var rot=new away.geom.Vector3D;switch(orientationStyle){case away.geom.Orientation3D.AXIS_ANGLE:rot.w=Math.acos((mr[0]+mr[5]+mr[10]-1)/2);var len=Math.sqrt((mr[6]-mr[9])*(mr[6]-mr[9])+(mr[8]-mr[2])*(mr[8]-mr[2])+(mr[1]-mr[4])*(mr[1]-mr[4]));rot.x=(mr[6]-mr[9])/len,rot.y=(mr[8]-mr[2])/len,rot.z=(mr[1]-mr[4])/len;break;case away.geom.Orientation3D.QUATERNION:var tr=mr[0]+mr[5]+mr[10];tr>0?(rot.w=Math.sqrt(1+tr)/2,rot.x=(mr[6]-mr[9])/(4*rot.w),rot.y=(mr[8]-mr[2])/(4*rot.w),rot.z=(mr[1]-mr[4])/(4*rot.w)):mr[0]>mr[5]&&mr[0]>mr[10]?(rot.x=Math.sqrt(1+mr[0]-mr[5]-mr[10])/2,rot.w=(mr[6]-mr[9])/(4*rot.x),rot.y=(mr[1]+mr[4])/(4*rot.x),rot.z=(mr[8]+mr[2])/(4*rot.x)):mr[5]>mr[10]?(rot.y=Math.sqrt(1+mr[5]-mr[0]-mr[10])/2,rot.x=(mr[1]+mr[4])/(4*rot.y),rot.w=(mr[8]-mr[2])/(4*rot.y),rot.z=(mr[6]+mr[9])/(4*rot.y)):(rot.z=Math.sqrt(1+mr[10]-mr[0]-mr[5])/2,rot.x=(mr[8]+mr[2])/(4*rot.z),rot.y=(mr[6]+mr[9])/(4*rot.z),rot.w=(mr[1]-mr[4])/(4*rot.z));break;case away.geom.Orientation3D.EULER_ANGLES:rot.y=Math.asin(-mr[2]),1!=mr[2]&&-1!=mr[2]?(rot.x=Math.atan2(mr[6],mr[10]),rot.z=Math.atan2(mr[1],mr[0])):(rot.z=0,rot.x=Math.atan2(mr[4],mr[5]))}return vec.push(pos),vec.push(rot),vec.push(scale),vec},Matrix3D.prototype.deltaTransformVector=function(v){var x=v.x,y=v.y,z=v.z;return new away.geom.Vector3D(x*this.rawData[0]+y*this.rawData[4]+z*this.rawData[8],x*this.rawData[1]+y*this.rawData[5]+z*this.rawData[9],x*this.rawData[2]+y*this.rawData[6]+z*this.rawData[10],x*this.rawData[3]+y*this.rawData[7]+z*this.rawData[11])},Matrix3D.prototype.identity=function(){this.rawData=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},Matrix3D.interpolate=function(thisMat,toMat,percent){for(var m=new Matrix3D,i=0;16>i;++i)m.rawData[i]=thisMat.rawData[i]+(toMat.rawData[i]-thisMat.rawData[i])*percent;return m},Matrix3D.prototype.interpolateTo=function(toMat,percent){for(var i=0;16>i;++i)this.rawData[i]=this.rawData[i]+(toMat.rawData[i]-this.rawData[i])*percent},Matrix3D.prototype.invert=function(){var d=this.determinant,invertable=Math.abs(d)>1e-11;if(invertable){d=1/d;var m11=this.rawData[0],m21=this.rawData[4],m31=this.rawData[8],m41=this.rawData[12],m12=this.rawData[1],m22=this.rawData[5],m32=this.rawData[9],m42=this.rawData[13],m13=this.rawData[2],m23=this.rawData[6],m33=this.rawData[10],m43=this.rawData[14],m14=this.rawData[3],m24=this.rawData[7],m34=this.rawData[11],m44=this.rawData[15];this.rawData[0]=d*(m22*(m33*m44-m43*m34)-m32*(m23*m44-m43*m24)+m42*(m23*m34-m33*m24)),this.rawData[1]=-d*(m12*(m33*m44-m43*m34)-m32*(m13*m44-m43*m14)+m42*(m13*m34-m33*m14)),this.rawData[2]=d*(m12*(m23*m44-m43*m24)-m22*(m13*m44-m43*m14)+m42*(m13*m24-m23*m14)),this.rawData[3]=-d*(m12*(m23*m34-m33*m24)-m22*(m13*m34-m33*m14)+m32*(m13*m24-m23*m14)),this.rawData[4]=-d*(m21*(m33*m44-m43*m34)-m31*(m23*m44-m43*m24)+m41*(m23*m34-m33*m24)),this.rawData[5]=d*(m11*(m33*m44-m43*m34)-m31*(m13*m44-m43*m14)+m41*(m13*m34-m33*m14)),this.rawData[6]=-d*(m11*(m23*m44-m43*m24)-m21*(m13*m44-m43*m14)+m41*(m13*m24-m23*m14)),this.rawData[7]=d*(m11*(m23*m34-m33*m24)-m21*(m13*m34-m33*m14)+m31*(m13*m24-m23*m14)),this.rawData[8]=d*(m21*(m32*m44-m42*m34)-m31*(m22*m44-m42*m24)+m41*(m22*m34-m32*m24)),this.rawData[9]=-d*(m11*(m32*m44-m42*m34)-m31*(m12*m44-m42*m14)+m41*(m12*m34-m32*m14)),this.rawData[10]=d*(m11*(m22*m44-m42*m24)-m21*(m12*m44-m42*m14)+m41*(m12*m24-m22*m14)),this.rawData[11]=-d*(m11*(m22*m34-m32*m24)-m21*(m12*m34-m32*m14)+m31*(m12*m24-m22*m14)),this.rawData[12]=-d*(m21*(m32*m43-m42*m33)-m31*(m22*m43-m42*m23)+m41*(m22*m33-m32*m23)),this.rawData[13]=d*(m11*(m32*m43-m42*m33)-m31*(m12*m43-m42*m13)+m41*(m12*m33-m32*m13)),this.rawData[14]=-d*(m11*(m22*m43-m42*m23)-m21*(m12*m43-m42*m13)+m41*(m12*m23-m22*m13)),this.rawData[15]=d*(m11*(m22*m33-m32*m23)-m21*(m12*m33-m32*m13)+m31*(m12*m23-m22*m13))}return invertable},Matrix3D.prototype.prepend=function(rhs){var m111=rhs.rawData[0],m121=rhs.rawData[4],m131=rhs.rawData[8],m141=rhs.rawData[12],m112=rhs.rawData[1],m122=rhs.rawData[5],m132=rhs.rawData[9],m142=rhs.rawData[13],m113=rhs.rawData[2],m123=rhs.rawData[6],m133=rhs.rawData[10],m143=rhs.rawData[14],m114=rhs.rawData[3],m124=rhs.rawData[7],m134=rhs.rawData[11],m144=rhs.rawData[15],m211=this.rawData[0],m221=this.rawData[4],m231=this.rawData[8],m241=this.rawData[12],m212=this.rawData[1],m222=this.rawData[5],m232=this.rawData[9],m242=this.rawData[13],m213=this.rawData[2],m223=this.rawData[6],m233=this.rawData[10],m243=this.rawData[14],m214=this.rawData[3],m224=this.rawData[7],m234=this.rawData[11],m244=this.rawData[15];this.rawData[0]=m111*m211+m112*m221+m113*m231+m114*m241,this.rawData[1]=m111*m212+m112*m222+m113*m232+m114*m242,this.rawData[2]=m111*m213+m112*m223+m113*m233+m114*m243,this.rawData[3]=m111*m214+m112*m224+m113*m234+m114*m244,this.rawData[4]=m121*m211+m122*m221+m123*m231+m124*m241,this.rawData[5]=m121*m212+m122*m222+m123*m232+m124*m242,this.rawData[6]=m121*m213+m122*m223+m123*m233+m124*m243,this.rawData[7]=m121*m214+m122*m224+m123*m234+m124*m244,this.rawData[8]=m131*m211+m132*m221+m133*m231+m134*m241,this.rawData[9]=m131*m212+m132*m222+m133*m232+m134*m242,this.rawData[10]=m131*m213+m132*m223+m133*m233+m134*m243,this.rawData[11]=m131*m214+m132*m224+m133*m234+m134*m244,this.rawData[12]=m141*m211+m142*m221+m143*m231+m144*m241,this.rawData[13]=m141*m212+m142*m222+m143*m232+m144*m242,this.rawData[14]=m141*m213+m142*m223+m143*m233+m144*m243,this.rawData[15]=m141*m214+m142*m224+m143*m234+m144*m244},Matrix3D.prototype.prependRotation=function(degrees,axis){var m=Matrix3D.getAxisRotation(axis.x,axis.y,axis.z,degrees);this.prepend(m)},Matrix3D.prototype.prependScale=function(xScale,yScale,zScale){this.prepend(new Matrix3D([xScale,0,0,0,0,yScale,0,0,0,0,zScale,0,0,0,0,1]))},Matrix3D.prototype.prependTranslation=function(x,y,z){var m=new Matrix3D;m.position=new away.geom.Vector3D(x,y,z),this.prepend(m)},Matrix3D.prototype.recompose=function(components){if(components.length<3)return!1;this.identity(),this.appendScale(components[2].x,components[2].y,components[2].z);var angle;return angle=-components[1].x,this.append(new Matrix3D([1,0,0,0,0,Math.cos(angle),-Math.sin(angle),0,0,Math.sin(angle),Math.cos(angle),0,0,0,0,0])),angle=-components[1].y,this.append(new Matrix3D([Math.cos(angle),0,Math.sin(angle),0,0,1,0,0,-Math.sin(angle),0,Math.cos(angle),0,0,0,0,0])),angle=-components[1].z,this.append(new Matrix3D([Math.cos(angle),-Math.sin(angle),0,0,Math.sin(angle),Math.cos(angle),0,0,0,0,1,0,0,0,0,0])),this.position=components[0],this.rawData[15]=1,!0},Matrix3D.prototype.transformVector=function(v){var x=v.x,y=v.y,z=v.z;return new away.geom.Vector3D(x*this.rawData[0]+y*this.rawData[4]+z*this.rawData[8]+this.rawData[12],x*this.rawData[1]+y*this.rawData[5]+z*this.rawData[9]+this.rawData[13],x*this.rawData[2]+y*this.rawData[6]+z*this.rawData[10]+this.rawData[14],x*this.rawData[3]+y*this.rawData[7]+z*this.rawData[11]+this.rawData[15])},Matrix3D.prototype.transformVectors=function(vin,vout){for(var i=0,x=0,y=0,z=0;i+3<=vin.length;)x=vin[i],y=vin[i+1],z=vin[i+2],vout[i]=x*this.rawData[0]+y*this.rawData[4]+z*this.rawData[8]+this.rawData[12],vout[i+1]=x*this.rawData[1]+y*this.rawData[5]+z*this.rawData[9]+this.rawData[13],vout[i+2]=x*this.rawData[2]+y*this.rawData[6]+z*this.rawData[10]+this.rawData[14],i+=3},Matrix3D.prototype.transpose=function(){var oRawData=this.rawData.slice(0);this.rawData[1]=oRawData[4],this.rawData[2]=oRawData[8],this.rawData[3]=oRawData[12],this.rawData[4]=oRawData[1],this.rawData[6]=oRawData[9],this.rawData[7]=oRawData[13],this.rawData[8]=oRawData[2],this.rawData[9]=oRawData[6],this.rawData[11]=oRawData[14],this.rawData[12]=oRawData[3],this.rawData[13]=oRawData[7],this.rawData[14]=oRawData[11]},Matrix3D.getAxisRotation=function(x,y,z,degrees){var tmp1,tmp2,m=new Matrix3D,rad=degrees*(Math.PI/180),c=Math.cos(rad),s=Math.sin(rad),t=1-c;return m.rawData[0]=c+x*x*t,m.rawData[5]=c+y*y*t,m.rawData[10]=c+z*z*t,tmp1=x*y*t,tmp2=z*s,m.rawData[1]=tmp1+tmp2,m.rawData[4]=tmp1-tmp2,tmp1=x*z*t,tmp2=y*s,m.rawData[8]=tmp1+tmp2,m.rawData[2]=tmp1-tmp2,tmp1=y*z*t,tmp2=x*s,m.rawData[9]=tmp1-tmp2,m.rawData[6]=tmp1+tmp2,m},Object.defineProperty(Matrix3D.prototype,"determinant",{get:function(){return(this.rawData[0]*this.rawData[5]-this.rawData[4]*this.rawData[1])*(this.rawData[10]*this.rawData[15]-this.rawData[14]*this.rawData[11])-(this.rawData[0]*this.rawData[9]-this.rawData[8]*this.rawData[1])*(this.rawData[6]*this.rawData[15]-this.rawData[14]*this.rawData[7])+(this.rawData[0]*this.rawData[13]-this.rawData[12]*this.rawData[1])*(this.rawData[6]*this.rawData[11]-this.rawData[10]*this.rawData[7])+(this.rawData[4]*this.rawData[9]-this.rawData[8]*this.rawData[5])*(this.rawData[2]*this.rawData[15]-this.rawData[14]*this.rawData[3])-(this.rawData[4]*this.rawData[13]-this.rawData[12]*this.rawData[5])*(this.rawData[2]*this.rawData[11]-this.rawData[10]*this.rawData[3])+(this.rawData[8]*this.rawData[13]-this.rawData[12]*this.rawData[9])*(this.rawData[2]*this.rawData[7]-this.rawData[6]*this.rawData[3])},enumerable:!0,configurable:!0}),Object.defineProperty(Matrix3D.prototype,"position",{get:function(){return new away.geom.Vector3D(this.rawData[12],this.rawData[13],this.rawData[14])},set:function(value){this.rawData[12]=value.x,this.rawData[13]=value.y,this.rawData[14]=value.z},enumerable:!0,configurable:!0}),Matrix3D.prototype.toFixed=function(decimalPlace){var magnitude=Math.pow(10,decimalPlace);return"matrix3d("+Math.round(this.rawData[0]*magnitude)/magnitude+","+Math.round(this.rawData[1]*magnitude)/magnitude+","+Math.round(this.rawData[2]*magnitude)/magnitude+","+Math.round(this.rawData[3]*magnitude)/magnitude+","+Math.round(this.rawData[4]*magnitude)/magnitude+","+Math.round(this.rawData[5]*magnitude)/magnitude+","+Math.round(this.rawData[6]*magnitude)/magnitude+","+Math.round(this.rawData[7]*magnitude)/magnitude+","+Math.round(this.rawData[8]*magnitude)/magnitude+","+Math.round(this.rawData[9]*magnitude)/magnitude+","+Math.round(this.rawData[10]*magnitude)/magnitude+","+Math.round(this.rawData[11]*magnitude)/magnitude+","+Math.round(this.rawData[12]*magnitude)/magnitude+","+Math.round(this.rawData[13]*magnitude)/magnitude+","+Math.round(this.rawData[14]*magnitude)/magnitude+","+Math.round(this.rawData[15]*magnitude)/magnitude+")"},Matrix3D.prototype.toString=function(){return"matrix3d("+Math.round(1e3*this.rawData[0])/1e3+","+Math.round(1e3*this.rawData[1])/1e3+","+Math.round(1e3*this.rawData[2])/1e3+","+Math.round(1e3*this.rawData[3])/1e3+","+Math.round(1e3*this.rawData[4])/1e3+","+Math.round(1e3*this.rawData[5])/1e3+","+Math.round(1e3*this.rawData[6])/1e3+","+Math.round(1e3*this.rawData[7])/1e3+","+Math.round(1e3*this.rawData[8])/1e3+","+Math.round(1e3*this.rawData[9])/1e3+","+Math.round(1e3*this.rawData[10])/1e3+","+Math.round(1e3*this.rawData[11])/1e3+","+Math.round(1e3*this.rawData[12])/1e3+","+Math.round(1e3*this.rawData[13])/1e3+","+Math.round(1e3*this.rawData[14])/1e3+","+Math.round(1e3*this.rawData[15])/1e3+")"},Matrix3D}();geom.Matrix3D=Matrix3D}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Orientation3D=function(){function Orientation3D(){}return Orientation3D.AXIS_ANGLE="axisAngle",Orientation3D.EULER_ANGLES="eulerAngles",Orientation3D.QUATERNION="quaternion",Orientation3D}();geom.Orientation3D=Orientation3D}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var PerspectiveProjection=function(){function PerspectiveProjection(){}return PerspectiveProjection.prototype.toMatrix3D=function(){return this._matrix3D},PerspectiveProjection}();geom.PerspectiveProjection=PerspectiveProjection}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Point=function(){function Point(x,y){"undefined"==typeof x&&(x=0),"undefined"==typeof y&&(y=0),this.x=x,this.y=y}return Object.defineProperty(Point.prototype,"length",{get:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},enumerable:!0,configurable:!0}),Point.prototype.add=function(v){return new Point(this.x+v.x,this.y+v.y)},Point.prototype.clone=function(){return new Point(this.x,this.y)},Point.prototype.copyFrom=function(){},Point.prototype.equals=function(toCompare){return this.x==toCompare.x&&this.y==toCompare.y},Point.prototype.normalize=function(thickness){if("undefined"==typeof thickness&&(thickness=1),0!=this.length){var invLength=thickness/this.length;return this.x*=invLength,this.y*=invLength,void 0}throw"Cannot divide by zero length."},Point.prototype.offset=function(dx,dy){this.x+=dx,this.y+=dy},Point.prototype.setTo=function(){},Point.prototype.subtract=function(v){return new Point(this.x-v.x,this.y-v.y)},Point.prototype.toString=function(){return"[Point] (x="+this.x+", y="+this.y+")"},Point.distance=function(pt1,pt2){var dx=pt2.x-pt1.x,dy=pt2.y-pt1.y;return Math.sqrt(dx*dx+dy*dy)},Point.interpolate=function(pt1,pt2,f){return new Point(pt2.x+(pt1.x-pt2.x)*f,pt2.y+(pt1.y-pt2.y)*f)},Point.polar=function(len,angle){return new Point(len*Math.cos(angle),len*Math.sin(angle))},Point}();geom.Point=Point}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Rectangle=function(){function Rectangle(x,y,width,height){"undefined"==typeof x&&(x=0),"undefined"==typeof y&&(y=0),"undefined"==typeof width&&(width=0),"undefined"==typeof height&&(height=0),this.x=x,this.y=y,this.width=width,this.height=height}return Object.defineProperty(Rectangle.prototype,"bottom",{get:function(){return this.y+this.height},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"bottomRight",{get:function(){return null==this._bottomRight&&(this._bottomRight=new away.geom.Point),this._bottomRight.x=this.x+this.width,this._bottomRight.y=this.y+this.height,this._bottomRight},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"left",{get:function(){return this.x},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"right",{get:function(){return this.x+this.width},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"size",{get:function(){return null==this._size&&(this._size=new away.geom.Point),this._size.x=this.width,this._size.y=this.height,this._size},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"top",{get:function(){return this.y},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"topLeft",{get:function(){return null==this._topLeft&&(this._topLeft=new away.geom.Point),this._topLeft.x=this.x,this._topLeft.y=this.y,this._topLeft
-},enumerable:!0,configurable:!0}),Rectangle.prototype.clone=function(){return new Rectangle(this.x,this.y,this.width,this.height)},Rectangle.prototype.contains=function(x,y){return this.x<=x&&this.x+this.width>=x&&this.y<=y&&this.y+this.height>=y},Rectangle.prototype.containsPoint=function(point){return this.x<=point.x&&this.x+this.width>=point.x&&this.y<=point.y&&this.y+this.height>=point.y},Rectangle.prototype.containsRect=function(rect){return this.x<=rect.x&&this.x+this.width>=rect.x+rect.width&&this.y<=rect.y&&this.y+this.height>=rect.y+rect.height},Rectangle.prototype.copyFrom=function(){},Rectangle.prototype.equals=function(toCompare){return this.x==toCompare.x&&this.y==toCompare.y&&this.width==toCompare.width&&this.height==toCompare.height},Rectangle.prototype.inflate=function(dx,dy){this.x-=dx/2,this.y-=dy/2,this.width+=dx/2,this.height+=dy/2},Rectangle.prototype.inflatePoint=function(point){this.x-=point.x/2,this.y-=point.y/2,this.width+=point.x/2,this.height+=point.y/2},Rectangle.prototype.intersection=function(toIntersect){if(this.intersects(toIntersect)){var i=new Rectangle;return this.x>toIntersect.x?(i.x=this.x,i.width=toIntersect.x-this.x+toIntersect.width,i.width>this.width&&(i.width=this.width)):(i.x=toIntersect.x,i.width=this.x-toIntersect.x+this.width,i.width>toIntersect.width&&(i.width=toIntersect.width)),this.y>toIntersect.y?(i.y=this.y,i.height=toIntersect.y-this.y+toIntersect.height,i.height>this.height&&(i.height=this.height)):(i.y=toIntersect.y,i.height=this.y-toIntersect.y+this.height,i.height>toIntersect.height&&(i.height=toIntersect.height)),i}return new Rectangle},Rectangle.prototype.intersects=function(toIntersect){return this.x+this.width>toIntersect.x&&this.xtoIntersect.y&&this.ydot&&(dot=-dot,w2=-w2,x2=-x2,y2=-y2,z2=-z2),.95>dot){var angle=Math.acos(dot),s=1/Math.sin(angle),s1=Math.sin(angle*(1-t))*s,s2=Math.sin(angle*t)*s;this.w=w1*s1+w2*s2,this.x=x1*s1+x2*s2,this.y=y1*s1+y2*s2,this.z=z1*s1+z2*s2}else{this.w=w1+t*(w2-w1),this.x=x1+t*(x2-x1),this.y=y1+t*(y2-y1),this.z=z1+t*(z2-z1);var len=1/Math.sqrt(this.w*this.w+this.x*this.x+this.y*this.y+this.z*this.z);this.w*=len,this.x*=len,this.y*=len,this.z*=len}},Quaternion.prototype.lerp=function(qa,qb,t){var len,w1=qa.w,x1=qa.x,y1=qa.y,z1=qa.z,w2=qb.w,x2=qb.x,y2=qb.y,z2=qb.z;0>w1*w2+x1*x2+y1*y2+z1*z2&&(w2=-w2,x2=-x2,y2=-y2,z2=-z2),this.w=w1+t*(w2-w1),this.x=x1+t*(x2-x1),this.y=y1+t*(y2-y1),this.z=z1+t*(z2-z1),len=1/Math.sqrt(this.w*this.w+this.x*this.x+this.y*this.y+this.z*this.z),this.w*=len,this.x*=len,this.y*=len,this.z*=len},Quaternion.prototype.fromEulerAngles=function(ax,ay,az){var halfX=.5*ax,halfY=.5*ay,halfZ=.5*az,cosX=Math.cos(halfX),sinX=Math.sin(halfX),cosY=Math.cos(halfY),sinY=Math.sin(halfY),cosZ=Math.cos(halfZ),sinZ=Math.sin(halfZ);this.w=cosX*cosY*cosZ+sinX*sinY*sinZ,this.x=sinX*cosY*cosZ-cosX*sinY*sinZ,this.y=cosX*sinY*cosZ+sinX*cosY*sinZ,this.z=cosX*cosY*sinZ-sinX*sinY*cosZ},Quaternion.prototype.toEulerAngles=function(target){return"undefined"==typeof target&&(target=null),null===target&&(target=new away.geom.Vector3D),target.x=Math.atan2(2*(this.w*this.x+this.y*this.z),1-2*(this.x*this.x+this.y*this.y)),target.y=Math.asin(2*(this.w*this.y-this.z*this.x)),target.z=Math.atan2(2*(this.w*this.z+this.x*this.y),1-2*(this.y*this.y+this.z*this.z)),target},Quaternion.prototype.normalize=function(val){"undefined"==typeof val&&(val=1);var mag=val/Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);this.x*=mag,this.y*=mag,this.z*=mag,this.w*=mag},Quaternion.prototype.toString=function(){return"{x:"+this.x+" y:"+this.y+" z:"+this.z+" w:"+this.w+"}"},Quaternion.prototype.toMatrix3D=function(target){"undefined"==typeof target&&(target=null);var rawData=away.geom.Matrix3DUtils.RAW_DATA_CONTAINER,xy2=2*this.x*this.y,xz2=2*this.x*this.z,xw2=2*this.x*this.w,yz2=2*this.y*this.z,yw2=2*this.y*this.w,zw2=2*this.z*this.w,xx=this.x*this.x,yy=this.y*this.y,zz=this.z*this.z,ww=this.w*this.w;return rawData[0]=xx-yy-zz+ww,rawData[4]=xy2-zw2,rawData[8]=xz2+yw2,rawData[12]=0,rawData[1]=xy2+zw2,rawData[5]=-xx+yy-zz+ww,rawData[9]=yz2-xw2,rawData[13]=0,rawData[2]=xz2-yw2,rawData[6]=yz2+xw2,rawData[10]=-xx-yy+zz+ww,rawData[14]=0,rawData[3]=0,rawData[7]=0,rawData[11]=0,rawData[15]=1,target?(target.copyRawDataFrom(rawData),target):new away.geom.Matrix3D(rawData)},Quaternion.prototype.fromMatrix=function(matrix){var v=matrix.decompose(away.geom.Orientation3D.QUATERNION)[1];this.x=v.x,this.y=v.y,this.z=v.z,this.w=v.w},Quaternion.prototype.toRawData=function(target,exclude4thRow){"undefined"==typeof exclude4thRow&&(exclude4thRow=!1);var xy2=2*this.x*this.y,xz2=2*this.x*this.z,xw2=2*this.x*this.w,yz2=2*this.y*this.z,yw2=2*this.y*this.w,zw2=2*this.z*this.w,xx=this.x*this.x,yy=this.y*this.y,zz=this.z*this.z,ww=this.w*this.w;target[0]=xx-yy-zz+ww,target[1]=xy2-zw2,target[2]=xz2+yw2,target[4]=xy2+zw2,target[5]=-xx+yy-zz+ww,target[6]=yz2-xw2,target[8]=xz2-yw2,target[9]=yz2+xw2,target[10]=-xx-yy+zz+ww,target[3]=target[7]=target[11]=0,exclude4thRow||(target[12]=target[13]=target[14]=0,target[15]=1)},Quaternion.prototype.clone=function(){return new Quaternion(this.x,this.y,this.z,this.w)},Quaternion.prototype.rotatePoint=function(vector,target){"undefined"==typeof target&&(target=null);var x1,y1,z1,w1,x2=vector.x,y2=vector.y,z2=vector.z;return null===target&&(target=new away.geom.Vector3D),w1=-this.x*x2-this.y*y2-this.z*z2,x1=this.w*x2+this.y*z2-this.z*y2,y1=this.w*y2-this.x*z2+this.z*x2,z1=this.w*z2+this.x*y2-this.y*x2,target.x=-w1*this.x+x1*this.w-y1*this.z+z1*this.y,target.y=-w1*this.y+x1*this.z+y1*this.w-z1*this.x,target.z=-w1*this.z-x1*this.y+y1*this.x+z1*this.w,target},Quaternion.prototype.copyFrom=function(q){this.x=q.x,this.y=q.y,this.z=q.z,this.w=q.w},Quaternion}();geom.Quaternion=Quaternion}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var PlaneClassification=function(){function PlaneClassification(){}return PlaneClassification.BACK=0,PlaneClassification.FRONT=1,PlaneClassification.IN=0,PlaneClassification.OUT=1,PlaneClassification.INTERSECT=2,PlaneClassification}();geom.PlaneClassification=PlaneClassification}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Plane3D=function(){function Plane3D(a,b,c,d){"undefined"==typeof a&&(a=0),"undefined"==typeof b&&(b=0),"undefined"==typeof c&&(c=0),"undefined"==typeof d&&(d=0),this.a=a,this.b=b,this.c=c,this.d=d,this._iAlignment=0==a&&0==b?Plane3D.ALIGN_XY_AXIS:0==b&&0==c?Plane3D.ALIGN_YZ_AXIS:0==a&&0==c?Plane3D.ALIGN_XZ_AXIS:Plane3D.ALIGN_ANY}return Plane3D.prototype.fromPoints=function(p0,p1,p2){var d1x=p1.x-p0.x,d1y=p1.y-p0.y,d1z=p1.z-p0.z,d2x=p2.x-p0.x,d2y=p2.y-p0.y,d2z=p2.z-p0.z;this.a=d1y*d2z-d1z*d2y,this.b=d1z*d2x-d1x*d2z,this.c=d1x*d2y-d1y*d2x,this.d=this.a*p0.x+this.b*p0.y+this.c*p0.z,this._iAlignment=0==this.a&&0==this.b?Plane3D.ALIGN_XY_AXIS:0==this.b&&0==this.c?Plane3D.ALIGN_YZ_AXIS:0==this.a&&0==this.c?Plane3D.ALIGN_XZ_AXIS:Plane3D.ALIGN_ANY},Plane3D.prototype.fromNormalAndPoint=function(normal,point){this.a=normal.x,this.b=normal.y,this.c=normal.z,this.d=this.a*point.x+this.b*point.y+this.c*point.z,this._iAlignment=0==this.a&&0==this.b?Plane3D.ALIGN_XY_AXIS:0==this.b&&0==this.c?Plane3D.ALIGN_YZ_AXIS:0==this.a&&0==this.c?Plane3D.ALIGN_XZ_AXIS:Plane3D.ALIGN_ANY},Plane3D.prototype.normalize=function(){var len=1/Math.sqrt(this.a*this.a+this.b*this.b+this.c*this.c);return this.a*=len,this.b*=len,this.c*=len,this.d*=len,this},Plane3D.prototype.distance=function(p){return this._iAlignment==Plane3D.ALIGN_YZ_AXIS?this.a*p.x-this.d:this._iAlignment==Plane3D.ALIGN_XZ_AXIS?this.b*p.y-this.d:this._iAlignment==Plane3D.ALIGN_XY_AXIS?this.c*p.z-this.d:this.a*p.x+this.b*p.y+this.c*p.z-this.d},Plane3D.prototype.classifyPoint=function(p,epsilon){if("undefined"==typeof epsilon&&(epsilon=.01),this.d!=this.d)return away.geom.PlaneClassification.FRONT;var len;return len=this._iAlignment==Plane3D.ALIGN_YZ_AXIS?this.a*p.x-this.d:this._iAlignment==Plane3D.ALIGN_XZ_AXIS?this.b*p.y-this.d:this._iAlignment==Plane3D.ALIGN_XY_AXIS?this.c*p.z-this.d:this.a*p.x+this.b*p.y+this.c*p.z-this.d,-epsilon>len?away.geom.PlaneClassification.BACK:len>epsilon?away.geom.PlaneClassification.FRONT:away.geom.PlaneClassification.INTERSECT},Plane3D.prototype.toString=function(){return"Plane3D [a:"+this.a+", b:"+this.b+", c:"+this.c+", d:"+this.d+"]"},Plane3D.ALIGN_ANY=0,Plane3D.ALIGN_XY_AXIS=1,Plane3D.ALIGN_YZ_AXIS=2,Plane3D.ALIGN_XZ_AXIS=3,Plane3D}();geom.Plane3D=Plane3D}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Matrix3DUtils=function(){function Matrix3DUtils(){}return Matrix3DUtils.quaternion2matrix=function(quarternion,m){"undefined"==typeof m&&(m=null);var x=quarternion.x,y=quarternion.y,z=quarternion.z,w=quarternion.w,xx=x*x,xy=x*y,xz=x*z,xw=x*w,yy=y*y,yz=y*z,yw=y*w,zz=z*z,zw=z*w,raw=Matrix3DUtils.RAW_DATA_CONTAINER;return raw[0]=1-2*(yy+zz),raw[1]=2*(xy+zw),raw[2]=2*(xz-yw),raw[4]=2*(xy-zw),raw[5]=1-2*(xx+zz),raw[6]=2*(yz+xw),raw[8]=2*(xz+yw),raw[9]=2*(yz-xw),raw[10]=1-2*(xx+yy),raw[3]=raw[7]=raw[11]=raw[12]=raw[13]=raw[14]=0,raw[15]=1,m?(m.copyRawDataFrom(raw),m):new away.geom.Matrix3D(raw)},Matrix3DUtils.getForward=function(m,v){return"undefined"==typeof v&&(v=null),null===v&&(v=new away.geom.Vector3D(0,0,0)),m.copyColumnTo(2,v),v.normalize(),v},Matrix3DUtils.getUp=function(m,v){return"undefined"==typeof v&&(v=null),null===v&&(v=new away.geom.Vector3D(0,0,0)),m.copyColumnTo(1,v),v.normalize(),v},Matrix3DUtils.getRight=function(m,v){return"undefined"==typeof v&&(v=null),null===v&&(v=new away.geom.Vector3D(0,0,0)),m.copyColumnTo(0,v),v.normalize(),v},Matrix3DUtils.compare=function(m1,m2){var r1=Matrix3DUtils.RAW_DATA_CONTAINER,r2=m2.rawData;m1.copyRawDataTo(r1);for(var i=0;16>i;++i)if(r1[i]!=r2[i])return!1;return!0},Matrix3DUtils.lookAt=function(matrix,pos,dir,up){var dirN,upN,lftN,raw=Matrix3DUtils.RAW_DATA_CONTAINER;lftN=dir.crossProduct(up),lftN.normalize(),upN=lftN.crossProduct(dir),upN.normalize(),dirN=dir.clone(),dirN.normalize(),raw[0]=lftN.x,raw[1]=upN.x,raw[2]=-dirN.x,raw[3]=0,raw[4]=lftN.y,raw[5]=upN.y,raw[6]=-dirN.y,raw[7]=0,raw[8]=lftN.z,raw[9]=upN.z,raw[10]=-dirN.z,raw[11]=0,raw[12]=-lftN.dotProduct(pos),raw[13]=-upN.dotProduct(pos),raw[14]=dirN.dotProduct(pos),raw[15]=1,matrix.copyRawDataFrom(raw)},Matrix3DUtils.reflection=function(plane,target){"undefined"==typeof target&&(target=null),null===target&&(target=new away.geom.Matrix3D);var a=plane.a,b=plane.b,c=plane.c,d=plane.d,rawData=Matrix3DUtils.RAW_DATA_CONTAINER,ab2=-2*a*b,ac2=-2*a*c,bc2=-2*b*c;return rawData[0]=1-2*a*a,rawData[4]=ab2,rawData[8]=ac2,rawData[12]=-2*a*d,rawData[1]=ab2,rawData[5]=1-2*b*b,rawData[9]=bc2,rawData[13]=-2*b*d,rawData[2]=ac2,rawData[6]=bc2,rawData[10]=1-2*c*c,rawData[14]=-2*c*d,rawData[3]=0,rawData[7]=0,rawData[11]=0,rawData[15]=1,target.copyRawDataFrom(rawData),target},Matrix3DUtils.transformVector=function(matrix,vector,result){"undefined"==typeof result&&(result=null),result||(result=new away.geom.Vector3D);var raw=Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);var a=raw[0],e=raw[1],i=raw[2],m=raw[3],b=raw[4],f=raw[5],j=raw[6],n=raw[7],c=raw[8],g=raw[9],k=raw[10],o=raw[11],d=raw[12],h=raw[13],l=raw[14],p=raw[15],x=vector.x,y=vector.y,z=vector.z;return result.x=a*x+b*y+c*z+d,result.y=e*x+f*y+g*z+h,result.z=i*x+j*y+k*z+l,result.w=m*x+n*y+o*z+p,result},Matrix3DUtils.deltaTransformVector=function(matrix,vector,result){"undefined"==typeof result&&(result=null),result||(result=new away.geom.Vector3D);var raw=Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);var a=raw[0],e=raw[1],i=raw[2],m=raw[3],b=raw[4],f=raw[5],j=raw[6],n=raw[7],c=raw[8],g=raw[9],k=raw[10],o=raw[11],x=vector.x,y=vector.y,z=vector.z;return result.x=a*x+b*y+c*z,result.y=e*x+f*y+g*z,result.z=i*x+j*y+k*z,result.w=m*x+n*y+o*z,result},Matrix3DUtils.getTranslation=function(transform,result){return"undefined"==typeof result&&(result=null),result||(result=new away.geom.Vector3D),transform.copyColumnTo(3,result),result},Matrix3DUtils.deltaTransformVectors=function(matrix,vin,vout){var raw=Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);for(var a=raw[0],e=raw[1],i=raw[2],b=(raw[3],raw[4]),f=raw[5],j=raw[6],c=(raw[7],raw[8]),g=raw[9],k=raw[10],outIndex=(raw[11],0),length=vin.length,index=0;length>index;index+=3){var x=vin[index],y=vin[index+1],z=vin[index+2];vout[outIndex++]=a*x+b*y+c*z,vout[outIndex++]=e*x+f*y+g*z,vout[outIndex++]=i*x+j*y+k*z}},Matrix3DUtils.RAW_DATA_CONTAINER=new Array(16),Matrix3DUtils.CALCULATION_MATRIX=new away.geom.Matrix3D,Matrix3DUtils}();geom.Matrix3DUtils=Matrix3DUtils}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var PoissonLookup=function(){function PoissonLookup(){}return PoissonLookup.initDistributions=function(){this._distributions=new Array,this._distributions[0]=new Array(.3082841,.4320919),this._distributions[1]=new Array(.3082841,.4320919,-.2274942,-.6640266),this._distributions[2]=new Array(.8742689,.0009265686,-.6864116,-.5536607,-.2325206,.7678371),this._distributions[3]=new Array(.3913446,-.7084417,-.7511101,-.5935929,-.2323436,.5320091,.8435315,.5035911),this._distributions[4]=new Array(.2122471,-.5771395,-.8543506,-.1763534,.5189021,.8323698,-.3616908,.5865368,.9523004,-.04948437),this._distributions[5]=new Array(.5791035,.3496495,.2959551,-.6006749,-.2419119,-.06879545,-.7403072,.6110353,-.04555973,.8059174,-.5275017,-.737129),this._distributions[6]=new Array(.06941478,.8519508,-.7441907,.2426432,.6439992,-.2405252,-.1007523,-.2327587,-.6427067,-.7248485,.8050759,.5492936,.3573822,-.8824506),this._distributions[7]=new Array(.8509863,.4452587,-.09507271,.2073005,.1706571,-.6434793,.8029777,-.2718274,-.4401725,.8196304,.2715359,.8598521,-.8121575,-.006447683,-.6486837,-.7237598),this._distributions[8]=new Array(.6951686,-.2680728,-.04933243,.3710589,.6592212,.3661054,-.01579228,-.6909603,-.3275101,-.1756866,.3811549,.9218544,-.216032,.9755028,-.7065172,.3355389,-.6579109,-.6798355),this._distributions[9]=new Array(.6181276,-.09790418,-.2537868,-.5570995,-.1964931,.3459414,.3474613,-.8885581,.5135743,.5753114,-.9549091,.1480672,-.8711916,-.4293123,-.6928071,.6190156,-.13369,.8892705,.0548224,-.1246777),this._distributions[10]=new Array(.4853027,-.5080479,-.1331675,-.506597,.139575,.01316885,.803486,-.07568797,.5240274,.4883182,-.4334005,.1207938,-.7794577,-.3985141,.1576432,-.9861221,-.3712867,.6959021,.1517378,.9847429,-.9762396,.1661073),this._distributions[11]=new Array(-.2790166,-.01252619,.3389016,.3921154,.2408341,-.313211,-.8151779,-.3898362,-.6347761,.3486495,.09471484,-.7722448,-.1385674,.6364574,.2456331,.9295807,-.3864306,-.8247881,.6111673,-.7164014,.8287669,.05466961,.837706,.5415626),this._distributions[12]=new Array(.056417,.3185693,-.8245888,.1882799,.8575996,.1136829,.1070375,.875332,.4076743,-.06000621,-.4311306,.7239349,.2677574,-.538472,-.08486642,-.2083647,-.888989,-.3906443,-.4768958,-.6664082,.09334993,-.9861541,.808736,-.455949,.5889823,.7660807),this._distributions[13]=new Array(-.2681346,-.3955857,-.1315102,-.8852947,-.5143692,.09551838,.4344836,-.546945,-.8620899,-.3813288,.1650431,.02034803,-.1543657,.3842218,-.828457,.5376903,-.6145,-.7818927,-.2639062,.8784655,.1912684,.9720125,.3135219,.5224229,.7850655,.4592297,.7465045,-.1368916),this._distributions[14]=new Array(.4241029,.695281,.150511,-.02304107,-.2482675,.9120338,.8057325,.2622084,-.2445909,.2765962,.8588713,-.1772072,.3117845,-.4385471,-.3923851,-.3298936,-.1751254,-.7405846,.6926506,-.684163,-.9304563,-.3254691,-.8533293,.1523024,.2510415,-.917345,-.6239773,-.7105472,-.6104624,.6041355),this._distributions[15]=new Array(.5844554,.06651045,.1343258,.6756578,.3799674,-.6301104,.5590436,.7940555,.09574714,.02262517,.8697868,.393301,.003945862,-.421735,.9043913,-.2432393,-.4844007,.7190998,-.3201078,.2972371,-.3852352,-.6341155,-.5413069,-.09223081,-.8468984,-.5126905,.004156174,-.8633173,-.9681889,-.03305046,-.846509,.4414353),this._distributions[16]=new Array(.4506488,.657668,.4621297,.07441051,-.2782125,.6201044,.9750003,.09110117,.1019436,.2986514,.03457398,.9631706,.542098,-.5505635,.8675668,.4938077,-.5414361,.2655292,-.7941836,.6003053,-.09847672,-.1001604,-.9316511,-.08572888,.07286467,-.611899,-.5232627,-.4082253,-.5481608,-.827938,-.1551939,-.9621193,.9220031,-.3315949),this._distributions[17]=new Array(.197908,-.4697656,-.4474689,-.3428435,.8529873,-.2228634,.6022478,-.5469642,.2545276,-.931133,-.1507547,-.7855865,-.07606658,.1011628,.3046715,.2785755,.4698432,-.1064076,.6831254,.4152522,.1374381,.8363233,-.2166121,.6682042,.5511393,.7996449,-.4278994,.28836,-.8875198,.2181732,-.8772842,-.2818254,-.7000262,.5762185,-.6062385,-.7439126),this._distributions[18]=new Array(.6645703,-.05678739,.5720971,.4533803,-.07660709,.08802763,.5163431,-.4426552,.1163455,-.3404382,-.4004807,-.5046007,.2932099,-.8201418,-.5322125,.03834766,-.1490209,-.8817304,-.8000439,-.3509448,.5260983,.8421043,.1197811,.6963812,.9498612,.3122156,-.9285746,.02120355,-.6670724,.7217396,.9155889,-.3510147,-.271941,.4727852,.318879,.1634057,-.2686755,.9253026),this._distributions[19]=new Array(.5064292,.422527,.8935515,-.06610427,.1199719,.175568,.403388,-.2003276,.1657927,.8154403,.9301245,.2929218,-.1644068,.6201534,.7113559,-.6589743,-.3364046,-.1799502,.02109996,-.392765,-.382213,.3219992,-.9201946,.1207967,-.726185,.4291916,-.7443482,-.2480059,-.5147594,.7418784,.1935272,-.7406143,-.3643523,-.5559214,-.7147766,-.6326278,-.2524151,-.9096627,.5161405,.7908453),this._distributions[20]=new Array(.7921003,-.3032096,.5992879,-.009052323,.2538549,-.1872749,.7053444,.3677175,.5417761,-.8170255,.9749611,.1210478,.1969143,-.6117041,-.1824499,-.4634196,-.1181338,-.8668742,-.3050112,-.1352596,-.4409327,-.7082354,-.03225285,.1171548,.3113096,.3250439,-.8166144,-.463995,-.01014475,.4715334,-.6868284,.05091889,-.4011163,.2717285,-.06756835,.8307694,-.7938535,.4352129,-.4663842,.7165329,.559729,.8093995),this._distributions[21]=new Array(.07832243,.426151,-.3856795,.5799953,.01970797,.06706189,.4822682,.3014512,-.1532982,.87485,-.4959527,.07888043,.260601,-.2304784,.4996209,.7167382,.585986,-.04265174,-.7679967,.5509416,-.9041753,.1802134,-.8407655,-.4442826,-.2058258,-.2636995,-.4984115,-.5928579,.2926032,-.7886473,-.06933882,-.621177,.578115,-.4813387,.8981777,-.3291056,.1942733,.9255584,.8084362,.5066984,.9920095,.03103104,-.2403206,-.9389018),this._distributions[22]=new Array(-.5691095,.1014316,-.7788262,.384012,-.8253665,-.1645582,-.1830993,.002997211,-.2555013,-.4177977,-.6640869,-.4794711,-.2351242,.5850121,.02436554,.2825883,.006061143,-.8200245,.1618791,-.3063331,-.3765897,-.7249815,.6092919,-.6769328,-.5956934,.6957655,.5383642,.4522677,-.1489165,.9125596,.4167473,.1335986,.1898309,.5874342,.2288171,.9624356,.7540846,-.07672304,.8986252,.2788797,.3555991,-.9262139,.8454325,-.4027667,.4945236,-.2935512),this._distributions[23]=new Array(-.4481403,-.3758374,-.8877251,.08739938,.05015831,-.1339983,-.4070427,-.8534173,.1019274,-.5503222,-.445998,.1997541,-.8686263,-.2788867,-.7695944,-.6033704,-.05515742,-.885711,-.7714347,.5790485,.3466263,-.8799297,.4487582,-.5321087,-.2461368,.6053771,-.05568117,.2457351,-.4668669,.8523816,.8103387,-.4255538,.4054182,-.175663,-.2802011,-.08920153,.2665959,.382935,.555679,.1621837,.105246,.8420411,.6921161,.6902903,.880946,.2483067,.9699264,-.1021767),this._distributions[24]=new Array(-.1703323,-.3119385,.2916039,-.2988263,-.008472982,-.9277695,-.7730271,-.3277904,.3440474,-.6815342,-.2910278,.03461745,-.6764899,-.657078,-.3505501,-.7311988,-.03478927,.3258755,-.6048835,.159423,.2035525,.02212214,.5116573,.2226856,.6664805,-.2500189,.7147882,-.6609634,.03030632,-.5763278,-.2516585,.6116219,-.9434413,-.0116792,.9061816,.2491155,.182867,.6076167,.286593,.9485695,-.5992439,.6970096,-.2082874,.9416641,.9880044,-.1541709,-.9122881,.331555,.7324886,.6725098),this._distributions[25]=new Array(.3869598,-.04974834,.7168844,-.0693711,-.07166742,.1725325,.4599592,.3232779,.5872094,-.4198674,.2442266,-.625667,.1254557,.4500048,-.2290154,-.1803567,.890583,.3373493,.1256081,.7853789,-.2676466,.5305805,-.7063224,.252168,-.3989835,.1189921,.09617215,-.2451447,.6302541,.6085876,.9380925,-.3234899,.5086241,-.8573482,.03576187,-.9876697,-.0876712,-.6365195,-.5276513,.823456,-.6935764,-.2240411,-.5212318,-.5383121,-.2116208,.9639363,-.9840096,.02743555,-.3991577,-.8994547,-.7830126,.614068),this._distributions[26]=new Array(-.8366601,.4464895,-.5917366,-.02073906,-.9845258,.1635625,-.3097973,.4379579,-.5478154,.7173221,-.1685888,.9261969,.01503595,.6046097,.4452421,.5449086,.0315687,.1944619,.3753404,.8688548,.4143643,.1396648,.8711032,.4304703,.7328773,.1461501,.6374492,-.3521495,.145613,-.1341466,.9040975,-.135123,-.7839059,-.5450199,-.516019,-.3320859,-.206158,-.4431106,-.9703014,-.2368356,-.2473119,-.0864351,.2130725,-.4604077,-.003726701,-.7122303,-.4072131,-.6833169,.1632999,-.9776646,.4686888,-.680495,-.2293511,-.9509777),this._distributions[27]=new Array(.107311,-.1311369,-.4194764,-.3148777,.6171439,-.2745973,.2796618,.1937153,-.09106886,.4180236,.6044006,.05577846,.02927299,-.6738263,-.2580845,.1179939,-.09023564,-.3830024,.3570953,-.5000587,.81591,-.5518309,.9300217,-.1257987,.4904627,-.8381903,-.3163182,-.8632009,.1137595,-.9875998,.8390043,.3538185,.2149114,.4993694,.5191584,.3833552,.5002763,.7061465,-.2567276,.9068756,-.5197366,.3467845,.03668867,.9734009,-.5347553,.66747,-.9028882,.1023768,-.8967977,.412834,-.5821944,.0426479,-.8032165,-.2397038,-.5597343,-.6358021),this._distributions[28]=new Array(-.6562496,-.1781036,-.9301494,.1185208,-.3861143,-.4153562,-.1560799,-.1099607,-.5587025,.395218,-.5322112,-.699701,-.5008639,.08726846,-.970524,-.1963461,-.813577,-.5185111,-.1644458,.298,-.3216791,.639982,.3315373,.3339162,.2383235,-.00105722,.1137828,.5450742,-.01899921,.8798413,.2849685,.8255596,.6974412,.2123175,.7588523,.5470437,.5102502,-.1687844,.5853448,.8033476,.2590716,-.5262504,.5607718,-.6342825,.8666443,-.1491841,.8341052,-.4935003,-.1568441,-.6634066,.2512113,-.8769391,-.2559827,-.9572457,-.01928852,-.3966542,-.750667,.6409678),this._distributions[29]=new Array(.3454786,-.04837726,.2649553,.2406852,.5599093,-.3839145,-.1111814,-.05502108,.7586042,-.05818377,.2519488,-.4665135,-.1264972,.2602723,-.08766216,-.3671907,.6428129,.3999204,-.6105871,-.1246869,-.4589451,-.7646643,-.03021116,-.7899352,-.6036922,-.4293956,-.2481938,.6534185,.102798,.6784465,-.6392644,.4821358,-.6789002,.1779133,-.9140783,-.1989647,-.9262617,.3381507,.4794891,-.8093274,.3959447,.668478,.9602883,.2272305,-.123672,.9210883,.2375148,.9523395,-.52898,.7973378,-.382433,.1228794,.695015,.6948439,.7530277,-.6458191,.8777987,-.3272956,.2318525,-.962768),this._distributions[30]=new Array(.4518921,-.1146195,.4720805,-.4238748,.3655423,.1806341,.1589939,-.23568,.7673324,-.5149941,.01163658,.09045836,.7010971,.1245747,.7518286,-.1855433,.4960719,.4601022,.2566979,-.6308268,-.0654714,-.5126389,-.1823319,-.1343282,-.1464312,.4883236,-.3858738,.203523,.1484799,.4432284,-.477109,-.116241,.2719092,.7208626,.9104174,.3578536,-.5956199,.7662588,-.6996251,.3678654,-.2514512,.9251933,.1275825,-.9478135,-.204608,-.8611552,.4264838,-.877443,.9854161,.05521112,.5912951,.7997434,.1140349,.982093,-.9324368,-.2094094,-.42436,-.6441524,-.6722705,-.3554261,-.7844236,.08587621),this._distributions[31]=new Array(-.4206714,-.5613642,-.8733016,-.3373051,-.1046226,-.2902999,-.1318562,-.8434365,.1145093,-.5962623,-.4965627,-.1873259,-.5011808,-.8546229,-.7165636,-.5743566,.1090901,.2017643,.3404809,-.220455,-.1989015,.2372122,-.4538706,.0979171,.4514146,-.572846,.2314168,-.8514503,-.4247236,.5650803,-.943347,.04514639,-.1309718,.5221877,-.7004157,.4561877,.6306441,.04448673,.4301621,.5766876,.1078042,.7245752,.3875354,.2794483,.702876,-.2924213,.7360667,-.6210318,.7486517,.6531103,.4898235,.8591025,.6549174,.3854057,-.2596106,.7916998,.9251194,-.05296265,-.5620695,.820877,-.01228026,.9937211,.9612103,.2628758)
-},PoissonLookup.getDistribution=function(n){return this._distributions||this.initDistributions(),2>n||n>32?null:this._distributions[n-1]},PoissonLookup}();geom.PoissonLookup=PoissonLookup}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(net){var AssetLoaderContext=function(){function AssetLoaderContext(includeDependencies,dependencyBaseUrl){"undefined"==typeof includeDependencies&&(includeDependencies=!0),"undefined"==typeof dependencyBaseUrl&&(dependencyBaseUrl=null),this._includeDependencies=includeDependencies,this._dependencyBaseUrl=dependencyBaseUrl||"",this._embeddedDataByUrl={},this._remappedUrls={},this._materialMode=AssetLoaderContext.UNDEFINED}return Object.defineProperty(AssetLoaderContext.prototype,"includeDependencies",{get:function(){return this._includeDependencies},set:function(val){this._includeDependencies=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"materialMode",{get:function(){return this._materialMode},set:function(materialMode){this._materialMode=materialMode},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"dependencyBaseUrl",{get:function(){return this._dependencyBaseUrl},set:function(val){this._dependencyBaseUrl=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"overrideAbsolutePaths",{get:function(){return this._overrideAbsPath},set:function(val){this._overrideAbsPath=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"overrideFullURLs",{get:function(){return this._overrideFullUrls},set:function(val){this._overrideFullUrls=val},enumerable:!0,configurable:!0}),AssetLoaderContext.prototype.mapUrl=function(originalUrl,newUrl){this._remappedUrls[originalUrl]=newUrl},AssetLoaderContext.prototype.mapUrlToData=function(originalUrl,data){this._embeddedDataByUrl[originalUrl]=data},AssetLoaderContext.prototype._iHasDataForUrl=function(url){return this._embeddedDataByUrl.hasOwnProperty(url)},AssetLoaderContext.prototype._iGetDataForUrl=function(url){return this._embeddedDataByUrl[url]},AssetLoaderContext.prototype._iHasMappingForUrl=function(url){return this._remappedUrls.hasOwnProperty(url)},AssetLoaderContext.prototype._iGetRemappedUrl=function(originalUrl){return this._remappedUrls[originalUrl]},AssetLoaderContext.UNDEFINED=0,AssetLoaderContext.SINGLEPASS_MATERIALS=1,AssetLoaderContext.MULTIPASS_MATERIALS=2,AssetLoaderContext}();net.AssetLoaderContext=AssetLoaderContext}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var AssetLoader=function(_super){function AssetLoader(materialMode){"undefined"==typeof materialMode&&(materialMode=0),_super.call(this),this._materialMode=materialMode,this._stack=new Array,this._errorHandlers=new Array,this._parseErrorHandlers=new Array,this._onReadyForDependenciesDelegate=away.utils.Delegate.create(this,this.onReadyForDependencies),this._onParseCompleteDelegate=away.utils.Delegate.create(this,this.onParseComplete),this._onParseErrorDelegate=away.utils.Delegate.create(this,this.onParseError),this._onLoadCompleteDelegate=away.utils.Delegate.create(this,this.onLoadComplete),this._onLoadErrorDelegate=away.utils.Delegate.create(this,this.onLoadError),this._onTextureSizeErrorDelegate=away.utils.Delegate.create(this,this.onTextureSizeError),this._onAssetCompleteDelegate=away.utils.Delegate.create(this,this.onAssetComplete)}return __extends(AssetLoader,_super),AssetLoader.enableParser=function(parser){AssetLoader._parsers.indexOf(parser)<0&&AssetLoader._parsers.push(parser)},AssetLoader.enableParsers=function(parsers){for(var c=0;ci;i++)this._currentDependency.dependencies[i]=parserDependancies[i];parserDependancies.length=0,this._stack.push(this._currentDependency),this.retrieveNext()}},AssetLoader.prototype.resolveParserDependencies=function(){this._currentDependency._iSuccess=!0,this._currentDependency.parser&&this._currentDependency.parser.dependencies.length&&(!this._context||this._context.includeDependencies)?this.retrieveParserDependencies():this.retrieveNext()},AssetLoader.prototype.onLoadError=function(event){var handled,isDependency=this._currentDependency!=this._baseDependency,loader=event.target;if(this.removeEventListeners(loader),this.hasEventListener(away.events.IOErrorEvent.IO_ERROR))this.dispatchEvent(event),handled=!0;else{var i,len=this._errorHandlers.length;for(i=0;len>i;i++)handled||(handled=this._errorHandlers[i](event))}if(!handled)throw new away.errors.Error;return isDependency?(this._currentDependency.resolveFailure(),this.retrieveNext(),void 0):(this.dispose(),void 0)},AssetLoader.prototype.onParseError=function(event){var handled,loader=(this._currentDependency!=this._baseDependency,event.target);if(this.removeEventListeners(loader),this.hasEventListener(away.events.ParserEvent.PARSE_ERROR))this.dispatchEvent(event),handled=!0;else{var i,len=this._parseErrorHandlers.length;for(i=0;len>i;i++)handled||(handled=this._parseErrorHandlers[i](event))}if(handled)return this.dispose(),void 0;throw new away.errors.Error(event.message)},AssetLoader.prototype.onAssetComplete=function(event){this._currentDependency&&this._currentDependency.assets.push(event.asset),event.asset.resetAssetPath(event.asset.name,this._namespace),this._currentDependency.suppresAssetEvents||this.dispatchEvent(event)},AssetLoader.prototype.onReadyForDependencies=function(event){var parser=event.target;this._context&&!this._context.includeDependencies?parser._iResumeParsingAfterDependencies():this.retrieveParserDependencies()},AssetLoader.prototype.onLoadComplete=function(event){var loader=event.target;this.removeEventListeners(loader),this._currentDependency._iSetData(loader.data),this._currentDependency.retrieveAsRawData?this.resolveParserDependencies():this.parseDependency(this._currentDependency)},AssetLoader.prototype.onParseComplete=function(event){var parser=event.target;this.resolveParserDependencies(),parser.removeEventListener(away.events.ParserEvent.READY_FOR_DEPENDENCIES,this._onReadyForDependenciesDelegate),parser.removeEventListener(away.events.ParserEvent.PARSE_COMPLETE,this._onParseCompleteDelegate),parser.removeEventListener(away.events.ParserEvent.PARSE_ERROR,this._onParseErrorDelegate),parser.removeEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),parser.removeEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate)},AssetLoader.prototype.onTextureSizeError=function(event){event.asset.name=this._currentDependency.resolveName(event.asset),this.dispatchEvent(event)},AssetLoader.prototype.addEventListeners=function(loader){loader.addEventListener(away.events.Event.COMPLETE,this._onLoadCompleteDelegate),loader.addEventListener(away.events.IOErrorEvent.IO_ERROR,this._onLoadErrorDelegate)},AssetLoader.prototype.removeEventListeners=function(loader){loader.removeEventListener(away.events.Event.COMPLETE,this._onLoadCompleteDelegate),loader.removeEventListener(away.events.IOErrorEvent.IO_ERROR,this._onLoadErrorDelegate)},AssetLoader.prototype.stop=function(){this.dispose()},AssetLoader.prototype.dispose=function(){this._errorHandlers=null,this._parseErrorHandlers=null,this._context=null,this._token=null,this._stack=null,this._currentDependency&&this._currentDependency._iLoader&&this.removeEventListeners(this._currentDependency._iLoader),this._currentDependency=null},AssetLoader.prototype._iAddParseErrorHandler=function(handler){this._parseErrorHandlers.indexOf(handler)<0&&this._parseErrorHandlers.push(handler)},AssetLoader.prototype._iAddErrorHandler=function(handler){this._errorHandlers.indexOf(handler)<0&&this._errorHandlers.push(handler)},AssetLoader.prototype.getParserFromData=function(data){for(var len=AssetLoader._parsers.length,i=len-1;i>=0;i--)if(AssetLoader._parsers[i].supportsData(data))return new AssetLoader._parsers[i];return null},AssetLoader.prototype.parseDependency=function(dependency){var parser=dependency.parser;if(parser||dependency._iSetParser(parser=this.getParserFromData(dependency.data)),parser)parser.addEventListener(away.events.ParserEvent.READY_FOR_DEPENDENCIES,this._onReadyForDependenciesDelegate),parser.addEventListener(away.events.ParserEvent.PARSE_COMPLETE,this._onParseCompleteDelegate),parser.addEventListener(away.events.ParserEvent.PARSE_ERROR,this._onParseErrorDelegate),parser.addEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),parser.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),dependency.request&&dependency.request.url&&(parser._iFileName=dependency.request.url),parser.materialMode=this._materialMode,parser.parseAsync(dependency.data);else{var message="No parser defined. To enable all parsers for auto-detection, use Parsers.enableAllBundled()";if(!this.hasEventListener(away.events.ParserEvent.PARSE_ERROR))throw new Error(message);this.dispatchEvent(new away.events.ParserEvent(away.events.ParserEvent.PARSE_ERROR,message))}},AssetLoader.prototype.getParserFromSuffix=function(url){for(var base=url.indexOf("?")>0?url.split("?")[0]:url,fileExtension=base.substr(base.lastIndexOf(".")+1).toLowerCase(),len=AssetLoader._parsers.length,i=len-1;i>=0;i--){var parserClass=AssetLoader._parsers[i];if(parserClass.supportsType(fileExtension))return new parserClass}return null},AssetLoader._parsers=new Array(away.parsers.BitmapParser,away.parsers.Texture2DParser,away.parsers.CubeTextureParser),AssetLoader}(away.events.EventDispatcher);net.AssetLoader=AssetLoader}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var AssetLoaderToken=function(_super){function AssetLoaderToken(loader){_super.call(this),this._iLoader=loader}return __extends(AssetLoaderToken,_super),AssetLoaderToken.prototype.addEventListener=function(type,listener){this._iLoader.addEventListener(type,listener)},AssetLoaderToken.prototype.removeEventListener=function(type,listener){this._iLoader.removeEventListener(type,listener)},AssetLoaderToken.prototype.hasEventListener=function(type,listener){return"undefined"==typeof listener&&(listener=null),this._iLoader.hasEventListener(type,listener)},AssetLoaderToken}(away.events.EventDispatcher);net.AssetLoaderToken=AssetLoaderToken}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLRequest=function(){function URLRequest(url){"undefined"==typeof url&&(url=null),this.method=away.net.URLRequestMethod.GET,this.async=!0,this._url=url}return Object.defineProperty(URLRequest.prototype,"url",{get:function(){return this._url},set:function(value){this._url=value},enumerable:!0,configurable:!0}),URLRequest.prototype.dispose=function(){this.data=null,this._url=null},URLRequest}();net.URLRequest=URLRequest}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLLoaderDataFormat=function(){function URLLoaderDataFormat(){}return URLLoaderDataFormat.TEXT="text",URLLoaderDataFormat.VARIABLES="variables",URLLoaderDataFormat.BLOB="blob",URLLoaderDataFormat.ARRAY_BUFFER="arraybuffer",URLLoaderDataFormat.BINARY="binary",URLLoaderDataFormat}();net.URLLoaderDataFormat=URLLoaderDataFormat}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLRequestMethod=function(){function URLRequestMethod(){}return URLRequestMethod.POST="POST",URLRequestMethod.GET="GET",URLRequestMethod}();net.URLRequestMethod=URLRequestMethod}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLLoader=function(_super){function URLLoader(){_super.call(this),this._bytesLoaded=0,this._bytesTotal=0,this._dataFormat=away.net.URLLoaderDataFormat.TEXT,this._loadError=!1}return __extends(URLLoader,_super),Object.defineProperty(URLLoader.prototype,"url",{get:function(){return this._request?this._request.url:""},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"data",{get:function(){return this._data},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"dataFormat",{get:function(){return this._dataFormat},set:function(format){this._dataFormat=format},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"bytesLoaded",{get:function(){return this._bytesLoaded},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"bytesTotal",{get:function(){return this._bytesTotal},enumerable:!0,configurable:!0}),URLLoader.prototype.load=function(request){this._request=request,this.initXHR(),request.method===away.net.URLRequestMethod.POST?this.postRequest(request):this.getRequest(request)},URLLoader.prototype.close=function(){this._XHR.abort(),this.disposeXHR()},URLLoader.prototype.dispose=function(){this._XHR&&this._XHR.abort(),this.disposeXHR(),this._data=null,this._dataFormat=null,this._bytesLoaded=null,this._bytesTotal=null},URLLoader.prototype.setResponseType=function(xhr,responseType){switch(responseType){case away.net.URLLoaderDataFormat.ARRAY_BUFFER:case away.net.URLLoaderDataFormat.BLOB:case away.net.URLLoaderDataFormat.TEXT:xhr.responseType=responseType;break;case away.net.URLLoaderDataFormat.VARIABLES:xhr.responseType=away.net.URLLoaderDataFormat.TEXT;break;case away.net.URLLoaderDataFormat.BINARY:xhr.responseType=""}},URLLoader.prototype.getRequest=function(request){try{this._XHR.open(request.method,request.url,request.async),this.setResponseType(this._XHR,this._dataFormat),this._XHR.send()}catch(e){this.handleXmlHttpRequestException(e)}},URLLoader.prototype.postRequest=function(request){if(this._loadError=!1,this._XHR.open(request.method,request.url,request.async),null!=request.data)if(request.data instanceof away.net.URLVariables){var urlVars=request.data;try{this._XHR.responseType="text",this._XHR.send(urlVars.formData)}catch(e){this.handleXmlHttpRequestException(e)}}else this.setResponseType(this._XHR,this._dataFormat),request.data?this._XHR.send(request.data):this._XHR.send();else this._XHR.send()},URLLoader.prototype.handleXmlHttpRequestException=function(error){switch(error.code){case 101:}},URLLoader.prototype.initXHR=function(){var _this=this;this._XHR||(this._XHR=new XMLHttpRequest,this._XHR.onloadstart=function(event){return _this.onLoadStart(event)},this._XHR.onprogress=function(event){return _this.onProgress(event)},this._XHR.onabort=function(event){return _this.onAbort(event)},this._XHR.onerror=function(event){return _this.onLoadError(event)},this._XHR.onload=function(event){return _this.onLoadComplete(event)},this._XHR.ontimeout=function(event){return _this.onTimeOut(event)},this._XHR.onloadend=function(event){return _this.onLoadEnd(event)},this._XHR.onreadystatechange=function(event){return _this.onReadyStateChange(event)})},URLLoader.prototype.disposeXHR=function(){null!==this._XHR&&(this._XHR.onloadstart=null,this._XHR.onprogress=null,this._XHR.onabort=null,this._XHR.onerror=null,this._XHR.onload=null,this._XHR.ontimeout=null,this._XHR.onloadend=null,this._XHR=null)},URLLoader.prototype.decodeURLVariables=function(source){var result=new Object;source=source.split("+").join(" ");for(var tokens,re=/[?&]?([^=]+)=([^&]*)/g;tokens=re.exec(source);)result[decodeURIComponent(tokens[1])]=decodeURIComponent(tokens[2]);return result},URLLoader.prototype.onReadyStateChange=function(){4==this._XHR.readyState&&(404==this._XHR.status&&(this._loadError=!0,this._loadErrorEvent||(this._loadErrorEvent=new away.events.IOErrorEvent(away.events.IOErrorEvent.IO_ERROR)),this.dispatchEvent(this._loadErrorEvent)),this.dispatchEvent(new away.events.HTTPStatusEvent(away.events.HTTPStatusEvent.HTTP_STATUS,this._XHR.status)))},URLLoader.prototype.onLoadEnd=function(){this._loadError===!0},URLLoader.prototype.onTimeOut=function(){},URLLoader.prototype.onAbort=function(){},URLLoader.prototype.onProgress=function(event){this._progressEvent||(this._progressEvent=new away.events.ProgressEvent(away.events.ProgressEvent.PROGRESS)),this._progressEvent.bytesTotal=event.total,this._progressEvent.bytesLoaded=event.loaded,this.dispatchEvent(this._progressEvent)},URLLoader.prototype.onLoadStart=function(){this._loadStartEvent||(this._loadStartEvent=new away.events.Event(away.events.Event.OPEN)),this.dispatchEvent(this._loadStartEvent)},URLLoader.prototype.onLoadComplete=function(){if(this._loadError!==!0){switch(this._dataFormat){case away.net.URLLoaderDataFormat.TEXT:this._data=this._XHR.responseText;break;case away.net.URLLoaderDataFormat.VARIABLES:this._data=this.decodeURLVariables(this._XHR.responseText);break;case away.net.URLLoaderDataFormat.BLOB:case away.net.URLLoaderDataFormat.ARRAY_BUFFER:case away.net.URLLoaderDataFormat.BINARY:this._data=this._XHR.response;break;default:this._data=this._XHR.responseText}this._loadCompleteEvent||(this._loadCompleteEvent=new away.events.Event(away.events.Event.COMPLETE)),this.dispatchEvent(this._loadCompleteEvent)}},URLLoader.prototype.onLoadError=function(){this._loadError=!0,this._loadErrorEvent||(this._loadErrorEvent=new away.events.IOErrorEvent(away.events.IOErrorEvent.IO_ERROR)),this.dispatchEvent(this._loadErrorEvent)},URLLoader}(away.events.EventDispatcher);net.URLLoader=URLLoader}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLVariables=function(){function URLVariables(source){"undefined"==typeof source&&(source=null),this._variables=new Object,null!==source&&this.decode(source)}return URLVariables.prototype.decode=function(source){source=source.split("+").join(" ");for(var tokens,re=/[?&]?([^=]+)=([^&]*)/g;tokens=re.exec(source);)this._variables[decodeURIComponent(tokens[1])]=decodeURIComponent(tokens[2])},URLVariables.prototype.toString=function(){return""},Object.defineProperty(URLVariables.prototype,"variables",{get:function(){return this._variables},set:function(obj){this._variables=obj},enumerable:!0,configurable:!0}),Object.defineProperty(URLVariables.prototype,"formData",{get:function(){var fd=new FormData;for(var s in this._variables)fd.append(s,this._variables[s]);return fd},enumerable:!0,configurable:!0}),URLVariables}();net.URLVariables=URLVariables}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(text){var AntiAliasType=function(){function AntiAliasType(){}return AntiAliasType.ADVANCED="advanced",AntiAliasType.NORMAL="normal",AntiAliasType}();text.AntiAliasType=AntiAliasType}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var GridFitType=function(){function GridFitType(){}return GridFitType.NONE="none",GridFitType.PIXEL="pixel",GridFitType.SUBPIXEL="subpixel",GridFitType}();text.GridFitType=GridFitType}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFieldAutoSize=function(){function TextFieldAutoSize(){}return TextFieldAutoSize.CENTER="center",TextFieldAutoSize.LEFT="left",TextFieldAutoSize.NONE="none",TextFieldAutoSize.RIGHT="right",TextFieldAutoSize}();text.TextFieldAutoSize=TextFieldAutoSize}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFieldType=function(){function TextFieldType(){}return TextFieldType.DYNAMIC="dynamic",TextFieldType.INPUT="input",TextFieldType}();text.TextFieldType=TextFieldType}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFormat=function(){function TextFormat(font,size,color,bold,italic,underline,url,target,align,leftMargin,rightMargin,indent,leading){"undefined"==typeof font&&(font="Times New Roman"),"undefined"==typeof size&&(size=12),"undefined"==typeof color&&(color=0),"undefined"==typeof bold&&(bold=!1),"undefined"==typeof italic&&(italic=!1),"undefined"==typeof underline&&(underline=!1),"undefined"==typeof url&&(url=""),"undefined"==typeof target&&(target=""),"undefined"==typeof align&&(align="left"),"undefined"==typeof leftMargin&&(leftMargin=0),"undefined"==typeof rightMargin&&(rightMargin=0),"undefined"==typeof indent&&(indent=0),"undefined"==typeof leading&&(leading=0),this.tabStops=new Array,this.font=font,this.size=size,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}return TextFormat}();text.TextFormat=TextFormat}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFormatAlign=function(){function TextFormatAlign(){this.CENTER="center",this.JUSTIFY="justify",this.LEFT="left",this.RIGHT="right"}return TextFormatAlign}();text.TextFormatAlign=TextFormatAlign}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextInteractionMode=function(){function TextInteractionMode(){}return TextInteractionMode.NORMAL="normal",TextInteractionMode.SELECTION="selection",TextInteractionMode}();text.TextInteractionMode=TextInteractionMode}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextLineMetrics=function(){function TextLineMetrics(x,width,height,ascent,descent,leading){"undefined"==typeof x&&(x=0/0),"undefined"==typeof width&&(width=0/0),"undefined"==typeof height&&(height=0/0),"undefined"==typeof ascent&&(ascent=0/0),"undefined"==typeof descent&&(descent=0/0),"undefined"==typeof leading&&(leading=0/0)}return TextLineMetrics}();text.TextLineMetrics=TextLineMetrics}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(ui){var Keyboard=function(){function Keyboard(){}return Keyboard.A=65,Keyboard.ALTERNATE=18,Keyboard.AUDIO=16777239,Keyboard.B=66,Keyboard.BACK=16777238,Keyboard.BACKQUOTE=192,Keyboard.BACKSLASH=220,Keyboard.BACKSPACE=8,Keyboard.BLUE=16777219,Keyboard.C=67,Keyboard.CAPS_LOCK=20,Keyboard.CHANNEL_DOWN=16777221,Keyboard.CHANNEL_UP=16777221,Keyboard.COMMA=188,Keyboard.COMMAND=15,Keyboard.CONTROL=17,Keyboard.D=68,Keyboard.DELETE=46,Keyboard.DOWN=40,Keyboard.DVR=16777241,Keyboard.E=69,Keyboard.END=35,Keyboard.ENTER=13,Keyboard.EQUAL=187,Keyboard.ESCAPE=27,Keyboard.EXIT=16777237,Keyboard.F=70,Keyboard.F1=112,Keyboard.F10=121,Keyboard.F11=122,Keyboard.F12=123,Keyboard.F13=124,Keyboard.F14=125,Keyboard.F15=126,Keyboard.F2=113,Keyboard.F3=114,Keyboard.F4=115,Keyboard.F5=116,Keyboard.F6=117,Keyboard.F7=118,Keyboard.F8=119,Keyboard.F9=120,Keyboard.FAST_FORWARD=16777226,Keyboard.G=71,Keyboard.GREEN=16777217,Keyboard.GUIDE=16777236,Keyboard.H=72,Keyboard.HELP=16777245,Keyboard.HOME=36,Keyboard.I=73,Keyboard.INFO=16777235,Keyboard.INPUT=16777243,Keyboard.INSERT=45,Keyboard.J=74,Keyboard.K=75,Keyboard.KEYNAME_BEGIN="Begin",Keyboard.KEYNAME_BREAK="Break",Keyboard.KEYNAME_CLEARDISPLAY="ClrDsp",Keyboard.KEYNAME_CLEARLINE="ClrLn",Keyboard.KEYNAME_DELETE="Delete",Keyboard.KEYNAME_DELETECHAR="DelChr",Keyboard.KEYNAME_DELETELINE="DelLn",Keyboard.KEYNAME_DOWNARROW="Down",Keyboard.KEYNAME_END="End",Keyboard.KEYNAME_EXECUTE="Exec",Keyboard.KEYNAME_F1="F1",Keyboard.KEYNAME_F10="F10",Keyboard.KEYNAME_F11="F11",Keyboard.KEYNAME_F12="F12",Keyboard.KEYNAME_F13="F13",Keyboard.KEYNAME_F14="F14",Keyboard.KEYNAME_F15="F15",Keyboard.KEYNAME_F16="F16",Keyboard.KEYNAME_F17="F17",Keyboard.KEYNAME_F18="F18",Keyboard.KEYNAME_F19="F19",Keyboard.KEYNAME_F2="F2",Keyboard.KEYNAME_F20="F20",Keyboard.KEYNAME_F21="F21",Keyboard.KEYNAME_F22="F22",Keyboard.KEYNAME_F23="F23",Keyboard.KEYNAME_F24="F24",Keyboard.KEYNAME_F25="F25",Keyboard.KEYNAME_F26="F26",Keyboard.KEYNAME_F27="F27",Keyboard.KEYNAME_F28="F28",Keyboard.KEYNAME_F29="F29",Keyboard.KEYNAME_F3="F3",Keyboard.KEYNAME_F30="F30",Keyboard.KEYNAME_F31="F31",Keyboard.KEYNAME_F32="F32",Keyboard.KEYNAME_F33="F33",Keyboard.KEYNAME_F34="F34",Keyboard.KEYNAME_F35="F35",Keyboard.KEYNAME_F4="F4",Keyboard.KEYNAME_F5="F5",Keyboard.KEYNAME_F6="F6",Keyboard.KEYNAME_F7="F7",Keyboard.KEYNAME_F8="F8",Keyboard.KEYNAME_F9="F9",Keyboard.KEYNAME_FIND="Find",Keyboard.KEYNAME_HELP="Help",Keyboard.KEYNAME_HOME="Home",Keyboard.KEYNAME_INSERT="Insert",Keyboard.KEYNAME_INSERTCHAR="InsChr",Keyboard.KEYNAME_INSERTLINE="LnsLn",Keyboard.KEYNAME_LEFTARROW="Left",Keyboard.KEYNAME_MENU="Menu",Keyboard.KEYNAME_MODESWITCH="ModeSw",Keyboard.KEYNAME_NEXT="Next",Keyboard.KEYNAME_PAGEDOWN="PgDn",Keyboard.KEYNAME_PAGEUP="PgUp",Keyboard.KEYNAME_PAUSE="Pause",Keyboard.KEYNAME_PREV="Prev",Keyboard.KEYNAME_PRINT="Print",Keyboard.KEYNAME_PRINTSCREEN="PrntScrn",Keyboard.KEYNAME_REDO="Redo",Keyboard.KEYNAME_RESET="Reset",Keyboard.KEYNAME_RIGHTARROW="Right",Keyboard.KEYNAME_SCROLLLOCK="ScrlLck",Keyboard.KEYNAME_SELECT="Select",Keyboard.KEYNAME_STOP="Stop",Keyboard.KEYNAME_SYSREQ="SysReq",Keyboard.KEYNAME_SYSTEM="Sys",Keyboard.KEYNAME_UNDO="Undo",Keyboard.KEYNAME_UPARROW="Up",Keyboard.KEYNAME_USER="User",Keyboard.L=76,Keyboard.LAST=16777233,Keyboard.LEFT=37,Keyboard.LEFTBRACKET=219,Keyboard.LIVE=16777232,Keyboard.M=77,Keyboard.MASTER_SHELL=16777246,Keyboard.MENU=16777234,Keyboard.MINUS=189,Keyboard.N=78,Keyboard.NEXT=16777230,Keyboard.NUMBER_0=48,Keyboard.NUMBER_1=49,Keyboard.NUMBER_2=50,Keyboard.NUMBER_3=51,Keyboard.NUMBER_4=52,Keyboard.NUMBER_5=53,Keyboard.NUMBER_6=54,Keyboard.NUMBER_7=55,Keyboard.NUMBER_8=56,Keyboard.NUMBER_9=57,Keyboard.NUMPAD=21,Keyboard.NUMPAD_0=96,Keyboard.NUMPAD_1=97,Keyboard.NUMPAD_2=98,Keyboard.NUMPAD_3=99,Keyboard.NUMPAD_4=100,Keyboard.NUMPAD_5=101,Keyboard.NUMPAD_6=102,Keyboard.NUMPAD_7=103,Keyboard.NUMPAD_8=104,Keyboard.NUMPAD_9=105,Keyboard.NUMPAD_ADD=107,Keyboard.NUMPAD_DECIMAL=110,Keyboard.NUMPAD_DIVIDE=111,Keyboard.NUMPAD_ENTER=108,Keyboard.NUMPAD_MULTIPLY=106,Keyboard.NUMPAD_SUBTRACT=109,Keyboard.O=79,Keyboard.P=80,Keyboard.PAGE_DOWN=34,Keyboard.PAGE_UP=33,Keyboard.PAUSE=16777224,Keyboard.PERIOD=190,Keyboard.PLAY=16777223,Keyboard.PREVIOUS=16777231,Keyboard.Q=81,Keyboard.QUOTE=222,Keyboard.R=82,Keyboard.RECORD=16777222,Keyboard.RED=16777216,Keyboard.REWIND=16777227,Keyboard.RIGHT=39,Keyboard.RIGHTBRACKET=221,Keyboard.S=83,Keyboard.SEARCH=16777247,Keyboard.SEMICOLON=186,Keyboard.SETUP=16777244,Keyboard.SHIFT=16,Keyboard.SKIP_BACKWARD=16777229,Keyboard.SKIP_FORWARD=16777228,Keyboard.SLASH=191,Keyboard.SPACE=32,Keyboard.STOP=16777225,Keyboard.SUBTITLE=16777240,Keyboard.T=84,Keyboard.TAB=9,Keyboard.U=85,Keyboard.UP=38,Keyboard.V=86,Keyboard.VOD=16777242,Keyboard.W=87,Keyboard.X=88,Keyboard.Y=89,Keyboard.YELLOW=16777218,Keyboard.Z=90,Keyboard}();ui.Keyboard=Keyboard}(away.ui||(away.ui={}));away.ui}(away||(away={}));var away;!function(away){!function(containers){var DisplayObjectContainer=function(_super){function DisplayObjectContainer(){_super.call(this),this._mouseChildren=!0,this._children=new Array}return __extends(DisplayObjectContainer,_super),Object.defineProperty(DisplayObjectContainer.prototype,"assetType",{get:function(){return away.library.AssetType.CONTAINER},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObjectContainer.prototype,"mouseChildren",{get:function(){return this._mouseChildren},set:function(value){this._mouseChildren!=value&&(this._mouseChildren=value,this._pUpdateImplicitMouseEnabled(this._pParent?this._pParent.mouseChildren:!0))},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObjectContainer.prototype,"numChildren",{get:function(){return this._children.length},enumerable:!0,configurable:!0}),DisplayObjectContainer.prototype.addChild=function(child){if(null==child)throw new away.errors.Error("Parameter child cannot be null.");return child._pParent&&child._pParent.removeChildInternal(child),child.iSetParent(this),this._children.push(child),child},DisplayObjectContainer.prototype.addChildAt=function(child){return child},DisplayObjectContainer.prototype.addChildren=function(){for(var childarray=[],_i=0;_ii;i++)this.addChild(childarray[i])},DisplayObjectContainer.prototype.clone=function(){var clone=new away.containers.DisplayObjectContainer;clone.pivot=this.pivot,clone._iMatrix3D=this._iMatrix3D,clone.partition=this.partition,clone.name=name;for(var len=this._children.length,i=0;len>i;++i)clone.addChild(this._children[i].clone());return clone},DisplayObjectContainer.prototype.contains=function(child){return this._children.indexOf(child)>=0},DisplayObjectContainer.prototype.disposeWithChildren=function(){for(this.dispose();this.numChildren>0;)this.getChildAt(0).dispose()},DisplayObjectContainer.prototype.getChildAt=function(index){var child=this._children[index];if(null==child)throw new away.errors.RangeError("Index does not exist in the child list of the caller");return child},DisplayObjectContainer.prototype.getChildByName=function(name){for(var len=this._children.length,i=0;len>i;++i)if(this._children[i].name==name)return this._children[i];return null},DisplayObjectContainer.prototype.getChildIndex=function(child){var childIndex=this._children.indexOf(child);if(-1==childIndex)throw new away.errors.ArgumentError("Child parameter is not a child of the caller");return childIndex},DisplayObjectContainer.prototype.getObjectsUnderPoint=function(){return new Array},DisplayObjectContainer.prototype.removeChild=function(child){if(null==child)throw new away.errors.Error("Parameter child cannot be null");return this.removeChildInternal(child),child.iSetParent(null),child},DisplayObjectContainer.prototype.removeChildAt=function(index){return this.removeChild(this._children[index])},DisplayObjectContainer.prototype.removeChildren=function(beginIndex,endIndex){if("undefined"==typeof beginIndex&&(beginIndex=0),"undefined"==typeof endIndex&&(endIndex=2147483647),0>beginIndex)throw new away.errors.RangeError("beginIndex is out of range of the child list");if(endIndex>this._children.length)throw new away.errors.RangeError("endIndex is out of range of the child list");for(var i=beginIndex;endIndex>i;i++)this.removeChild(this._children[i])},DisplayObjectContainer.prototype.setChildIndex=function(){},DisplayObjectContainer.prototype.swapChildren=function(){},DisplayObjectContainer.prototype.swapChildrenAt=function(){},DisplayObjectContainer.prototype.pInvalidateSceneTransform=function(){_super.prototype.pInvalidateSceneTransform.call(this);for(var len=this._children.length,i=0;len>i;++i)this._children[i++].pInvalidateSceneTransform()},DisplayObjectContainer.prototype._pUpdateScene=function(value){_super.prototype._pUpdateScene.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateScene(value)},DisplayObjectContainer.prototype._pUpdateImplicitMouseEnabled=function(value){_super.prototype._pUpdateImplicitMouseEnabled.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateImplicitMouseEnabled(this._mouseChildren)},DisplayObjectContainer.prototype._pUpdateImplicitVisibility=function(value){_super.prototype._pUpdateImplicitVisibility.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateImplicitVisibility(this._pImplicitVisibility)},DisplayObjectContainer.prototype._pUpdateImplicitPartition=function(value){_super.prototype._pUpdateImplicitPartition.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateImplicitPartition(this._pImplicitPartition)},DisplayObjectContainer.prototype.removeChildInternal=function(child){return this._children.splice(this.getChildIndex(child),1),child},DisplayObjectContainer}(away.base.DisplayObject);containers.DisplayObjectContainer=DisplayObjectContainer}(away.containers||(away.containers={}));away.containers}(away||(away={}));var away;!function(away){!function(entities){var MaterialEvent=away.events.MaterialEvent,UVTransform=(away.geom.Matrix3D,away.geom.UVTransform),Billboard=function(_super){function Billboard(material,pixelSnapping,smoothing){"undefined"==typeof pixelSnapping&&(pixelSnapping="auto"),"undefined"==typeof smoothing&&(smoothing=!1);var _this=this;_super.call(this),this._pIsEntity=!0,this.onSizeChangedDelegate=function(event){return _this.onSizeChanged(event)},this.material=material,this._billboardWidth=material.width,this._billboardHeight=material.height,this._uvTransform=new UVTransform(this)}return __extends(Billboard,_super),Object.defineProperty(Billboard.prototype,"animator",{get:function(){return this._animator},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"assetType",{get:function(){return away.library.AssetType.BILLBOARD},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"billboardHeight",{get:function(){return this._billboardHeight},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"billboardWidth",{get:function(){return this._billboardWidth},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"material",{get:function(){return this._material},set:function(value){value!=this._material&&(this._material&&(this._material.iRemoveOwner(this),this._material.removeEventListener(MaterialEvent.SIZE_CHANGED,this.onSizeChangedDelegate)),this._material=value,this._material&&(this._material.iAddOwner(this),this._material.addEventListener(MaterialEvent.SIZE_CHANGED,this.onSizeChangedDelegate)))},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"sourceEntity",{get:function(){return this},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"uvTransform",{get:function(){return this._uvTransform},enumerable:!0,configurable:!0}),Billboard.prototype.pCreateEntityPartitionNode=function(){return new away.partition.EntityNode(this)},Billboard.prototype.pUpdateBounds=function(){this._pBounds.fromExtremes(0,0,0,this._billboardWidth,this._billboardHeight,0),_super.prototype.pUpdateBounds.call(this)},Billboard.prototype._iSetUVMatrixComponents=function(){},Billboard.prototype._iTestCollision=function(shortestCollisionDistance){return this._pPickingCollider.testBillboardCollision(this,this._pPickingCollisionVO,shortestCollisionDistance)},Billboard.prototype.onSizeChanged=function(){this._billboardWidth=this._material.width,this._billboardHeight=this._material.height;for(var len=this._pRenderables.length,i=0;len>i;i++)this._pRenderables[i]._iUpdate()},Billboard}(away.base.DisplayObject);entities.Billboard=Billboard}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var Camera=function(_super){function Camera(projection){"undefined"==typeof projection&&(projection=null),_super.call(this),this._viewProjection=new away.geom.Matrix3D,this._viewProjectionDirty=!0,this._frustumPlanesDirty=!0,this._pIsEntity=!0,this._onProjectionMatrixChangedDelegate=away.utils.Delegate.create(this,this.onProjectionMatrixChanged),this._projection=projection||new away.projections.PerspectiveProjection,this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this._frustumPlanes=[];for(var i=0;6>i;++i)this._frustumPlanes[i]=new away.geom.Plane3D;this.z=-1e3}return __extends(Camera,_super),Camera.prototype.pCreateDefaultBoundingVolume=function(){return new away.bounds.NullBounds},Camera.prototype.pCreateEntityPartitionNode=function(){return new away.partition.CameraNode(this)},Object.defineProperty(Camera.prototype,"assetType",{get:function(){return away.library.AssetType.CAMERA},enumerable:!0,configurable:!0}),Camera.prototype.onProjectionMatrixChanged=function(event){this._viewProjectionDirty=!0,this._frustumPlanesDirty=!0,this.dispatchEvent(event)},Object.defineProperty(Camera.prototype,"frustumPlanes",{get:function(){return this._frustumPlanesDirty&&this.updateFrustum(),this._frustumPlanes},enumerable:!0,configurable:!0}),Camera.prototype.updateFrustum=function(){var a,b,c,c11,c12,c13,c14,c21,c22,c23,c24,c31,c32,c33,c34,c41,c42,c43,c44,p,invLen,raw=new Array(16);this.viewProjection.copyRawDataTo(raw),c11=raw[0],c12=raw[4],c13=raw[8],c14=raw[12],c21=raw[1],c22=raw[5],c23=raw[9],c24=raw[13],c31=raw[2],c32=raw[6],c33=raw[10],c34=raw[14],c41=raw[3],c42=raw[7],c43=raw[11],c44=raw[15],p=this._frustumPlanes[0],a=c41+c11,b=c42+c12,c=c43+c13,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=-(c44+c14)*invLen,p=this._frustumPlanes[1],a=c41-c11,b=c42-c12,c=c43-c13,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=(c14-c44)*invLen,p=this._frustumPlanes[2],a=c41+c21,b=c42+c22,c=c43+c23,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=-(c44+c24)*invLen,p=this._frustumPlanes[3],a=c41-c21,b=c42-c22,c=c43-c23,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=(c24-c44)*invLen,p=this._frustumPlanes[4],a=c31,b=c32,c=c33,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=-c34*invLen,p=this._frustumPlanes[5],a=c41-c31,b=c42-c32,c=c43-c33,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=(c34-c44)*invLen,this._frustumPlanesDirty=!1},Camera.prototype.pInvalidateSceneTransform=function(){_super.prototype.pInvalidateSceneTransform.call(this),this._viewProjectionDirty=!0,this._frustumPlanesDirty=!0},Camera.prototype.pUpdateBounds=function(){this._pBoundsInvalid=!1,this._pBounds.nullify()},Object.defineProperty(Camera.prototype,"projection",{get:function(){return this._projection},set:function(value){if(this._projection!=value){if(!value)throw new Error("Projection cannot be null!");this._projection.removeEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this._projection=value,this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this.dispatchEvent(new away.events.CameraEvent(away.events.CameraEvent.PROJECTION_CHANGED,this))}},enumerable:!0,configurable:!0}),Object.defineProperty(Camera.prototype,"viewProjection",{get:function(){return this._viewProjectionDirty&&(this._viewProjection.copyFrom(this.inverseSceneTransform),this._viewProjection.append(this._projection.matrix),this._viewProjectionDirty=!1),this._viewProjection},enumerable:!0,configurable:!0}),Camera.prototype.getRay=function(nX,nY,sZ){return this.sceneTransform.deltaTransformVector(this._projection.unproject(nX,nY,sZ))},Camera.prototype.project=function(point3d){return this._projection.project(this.inverseSceneTransform.transformVector(point3d))},Camera.prototype.unproject=function(nX,nY,sZ){return this.sceneTransform.transformVector(this._projection.unproject(nX,nY,sZ))},Camera}(away.containers.DisplayObjectContainer);entities.Camera=Camera}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var Shape=function(_super){function Shape(){_super.call(this)}return __extends(Shape,_super),Object.defineProperty(Shape.prototype,"graphics",{get:function(){return this._graphics},enumerable:!0,configurable:!0}),Shape}(away.base.DisplayObject);entities.Shape=Shape}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var TextField=function(_super){function TextField(){_super.call(this),this._text=""}return __extends(TextField,_super),Object.defineProperty(TextField.prototype,"bottomScrollV",{get:function(){return this._bottomScrollV},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"caretIndex",{get:function(){return this._caretIndex},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"length",{get:function(){return this._length},enumerable:!0,configurable:!0}),TextField.prototype.maxScrollH=function(){return this._maxScrollH},TextField.prototype.maxScrollV=function(){return this._maxScrollV},Object.defineProperty(TextField.prototype,"numLines",{get:function(){return this._numLines},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"selectionBeginIndex",{get:function(){return this._selectionBeginIndex},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"selectionEndIndex",{get:function(){return this._selectionEndIndex},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"text",{get:function(){return this._text},set:function(value){this._text!=value&&(this._text=value)},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"textHeight",{get:function(){return this._textHeight},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"textInteractionMode",{get:function(){return this._textInteractionMode},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"textWidth",{get:function(){return this._textWidth},enumerable:!0,configurable:!0}),TextField.prototype.appendText=function(){},TextField.prototype.getCharBoundaries=function(){return this._charBoundaries},TextField.prototype.getCharIndexAtPoint=function(){return this._charIndexAtPoint},TextField.prototype.getFirstCharInParagraph=function(){return this._firstCharInParagraph},TextField.prototype.getImageReference=function(){return this._imageReference},TextField.prototype.getLineIndexAtPoint=function(){return this._lineIndexAtPoint},TextField.prototype.getLineIndexOfChar=function(){return this._lineIndexOfChar},TextField.prototype.getLineLength=function(){return this._lineLength},TextField.prototype.getLineMetrics=function(){return this._lineMetrics},TextField.prototype.getLineOffset=function(){return this._lineOffset},TextField.prototype.getLineText=function(){return this._lineText},TextField.prototype.getParagraphLength=function(){return this._paragraphLength},TextField.prototype.getTextFormat=function(beginIndex,endIndex){return"undefined"==typeof beginIndex&&(beginIndex=-1),"undefined"==typeof endIndex&&(endIndex=-1),this._textFormat},TextField.prototype.replaceSelectedText=function(){},TextField.prototype.replaceText=function(){},TextField.prototype.setSelection=function(){},TextField.prototype.setTextFormat=function(format,beginIndex,endIndex){"undefined"==typeof beginIndex&&(beginIndex=-1),"undefined"==typeof endIndex&&(endIndex=-1)},TextField.isFontCompatible=function(){return!1},TextField}(away.base.DisplayObject);entities.TextField=TextField}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(projections){var CoordinateSystem=function(){function CoordinateSystem(){}return CoordinateSystem.LEFT_HANDED="leftHanded",CoordinateSystem.RIGHT_HANDED="rightHanded",CoordinateSystem}();projections.CoordinateSystem=CoordinateSystem}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var ProjectionBase=function(_super){function ProjectionBase(coordinateSystem){"undefined"==typeof coordinateSystem&&(coordinateSystem="leftHanded"),_super.call(this),this._pMatrix=new away.geom.Matrix3D,this._pScissorRect=new away.geom.Rectangle,this._pViewPort=new away.geom.Rectangle,this._pNear=20,this._pFar=3e3,this._pAspectRatio=1,this._pMatrixInvalid=!0,this._pFrustumCorners=[],this._pOriginX=.5,this._pOriginY=.5,this._unprojectionInvalid=!0,this.coordinateSystem=coordinateSystem}return __extends(ProjectionBase,_super),Object.defineProperty(ProjectionBase.prototype,"coordinateSystem",{get:function(){return this._pCoordinateSystem},set:function(value){this._pCoordinateSystem!=value&&(this._pCoordinateSystem=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"frustumCorners",{get:function(){return this._pFrustumCorners},set:function(frustumCorners){this._pFrustumCorners=frustumCorners},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"matrix",{get:function(){return this._pMatrixInvalid&&(this.pUpdateMatrix(),this._pMatrixInvalid=!1),this._pMatrix},set:function(value){this._pMatrix=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"near",{get:function(){return this._pNear},set:function(value){value!=this._pNear&&(this._pNear=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"originX",{get:function(){return this._pOriginX},set:function(value){this._pOriginX!=value&&(this._pOriginX=value)},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"originY",{get:function(){return this._pOriginY},set:function(value){this._pOriginY!=value&&(this._pOriginY=value)},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"far",{get:function(){return this._pFar},set:function(value){value!=this._pFar&&(this._pFar=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),ProjectionBase.prototype.project=function(point3d){var v=this.matrix.transformVector(point3d);return v.x=v.x/v.w,v.y=-v.y/v.w,v.z=point3d.z,v},Object.defineProperty(ProjectionBase.prototype,"unprojectionMatrix",{get:function(){return this._unprojectionInvalid&&(this._unprojection||(this._unprojection=new away.geom.Matrix3D),this._unprojection.copyFrom(this.matrix),this._unprojection.invert(),this._unprojectionInvalid=!1),this._unprojection},enumerable:!0,configurable:!0}),ProjectionBase.prototype.unproject=function(){throw new away.errors.AbstractMethodError},ProjectionBase.prototype.clone=function(){throw new away.errors.AbstractMethodError},Object.defineProperty(ProjectionBase.prototype,"_iAspectRatio",{get:function(){return this._pAspectRatio},set:function(value){this._pAspectRatio!=value&&(this._pAspectRatio=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),ProjectionBase.prototype.pInvalidateMatrix=function(){this._pMatrixInvalid=!0,this._unprojectionInvalid=!0,this.dispatchEvent(new away.events.ProjectionEvent(away.events.ProjectionEvent.MATRIX_CHANGED,this))},ProjectionBase.prototype.pUpdateMatrix=function(){throw new away.errors.AbstractMethodError},ProjectionBase.prototype._iUpdateScissorRect=function(x,y,width,height){this._pScissorRect.x=x,this._pScissorRect.y=y,this._pScissorRect.width=width,this._pScissorRect.height=height,this.pInvalidateMatrix()},ProjectionBase.prototype._iUpdateViewport=function(x,y,width,height){this._pViewPort.x=x,this._pViewPort.y=y,this._pViewPort.width=width,this._pViewPort.height=height,this.pInvalidateMatrix()},ProjectionBase}(away.events.EventDispatcher);projections.ProjectionBase=ProjectionBase}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var PerspectiveProjection=function(_super){function PerspectiveProjection(fieldOfView,coordinateSystem){"undefined"==typeof fieldOfView&&(fieldOfView=60),"undefined"==typeof coordinateSystem&&(coordinateSystem="leftHanded"),_super.call(this,coordinateSystem),this._fieldOfView=60,this._focalLength=1e3,this._hFieldOfView=60,this._hFocalLength=1e3,this._preserveAspectRatio=!0,this._preserveFocalLength=!1,this.fieldOfView=fieldOfView}return __extends(PerspectiveProjection,_super),Object.defineProperty(PerspectiveProjection.prototype,"preserveAspectRatio",{get:function(){return this._preserveAspectRatio},set:function(value){this._preserveAspectRatio!=value&&(this._preserveAspectRatio=value,this._preserveAspectRatio&&this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"preserveFocalLength",{get:function(){return this._preserveFocalLength},set:function(value){this._preserveFocalLength!=value&&(this._preserveFocalLength=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"fieldOfView",{get:function(){return this._fieldOfView},set:function(value){this._fieldOfView!=value&&(this._fieldOfView=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"focalLength",{get:function(){return this._focalLength},set:function(value){this._focalLength!=value&&(this._focalLength=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"hFieldOfView",{get:function(){return this._hFieldOfView},set:function(value){this._hFieldOfView!=value&&(this._hFieldOfView=value,this._hFocalLength=1/Math.tan(this._hFieldOfView*Math.PI/360),this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"hFocalLength",{get:function(){return this._hFocalLength},set:function(value){this._hFocalLength!=value&&(this._hFocalLength=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),PerspectiveProjection.prototype.unproject=function(nX,nY,sZ){var v=new away.geom.Vector3D(nX,-nY,sZ,1);return v.x*=sZ,v.y*=sZ,v=this.unprojectionMatrix.transformVector(v),v.z=sZ,v},PerspectiveProjection.prototype.clone=function(){var clone=new PerspectiveProjection(this._fieldOfView);return clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone._pCoordinateSystem=this._pCoordinateSystem,clone},PerspectiveProjection.prototype.pUpdateMatrix=function(){var raw=[];this._preserveFocalLength?(this._preserveAspectRatio&&(this._hFocalLength=this._focalLength),this._fieldOfView=360*Math.atan(.5*this._pScissorRect.height/this._focalLength)/Math.PI,this._hFieldOfView=360*Math.atan(.5*this._pScissorRect.width/this._hFocalLength)/Math.PI):(this._focalLength=.5*this._pScissorRect.height/Math.tan(this._fieldOfView*Math.PI/360),this._hFocalLength=this._preserveAspectRatio?this._focalLength:.5*this._pScissorRect.width/Math.tan(this._hFieldOfView*Math.PI/360));var left,right,top,bottom,tanMinX=-this._pOriginX/this._hFocalLength,tanMaxX=(1-this._pOriginX)/this._hFocalLength,tanMinY=-this._pOriginY/this._focalLength,tanMaxY=(1-this._pOriginY)/this._focalLength,center=-((tanMinX-tanMaxX)*this._pScissorRect.x+tanMinX*this._pScissorRect.width),middle=(tanMinY-tanMaxY)*this._pScissorRect.y+tanMinY*this._pScissorRect.height;left=center-(tanMaxX-tanMinX)*this._pViewPort.width,right=center,top=middle,bottom=middle+(tanMaxY-tanMinY)*this._pViewPort.height,raw[0]=2/(right-left),raw[5]=2/(bottom-top),raw[8]=(right+left)/(right-left),raw[9]=(bottom+top)/(bottom-top),raw[10]=(this._pFar+this._pNear)/(this._pFar-this._pNear),raw[11]=1,raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[12]=raw[13]=raw[15]=0,raw[14]=-2*this._pFar*this._pNear/(this._pFar-this._pNear),this._pCoordinateSystem==away.projections.CoordinateSystem.RIGHT_HANDED&&(raw[5]=-raw[5]),this._pMatrix.copyRawDataFrom(raw),this._pFrustumCorners[0]=this._pFrustumCorners[9]=this._pNear*left,this._pFrustumCorners[3]=this._pFrustumCorners[6]=this._pNear*right,this._pFrustumCorners[1]=this._pFrustumCorners[4]=this._pNear*top,this._pFrustumCorners[7]=this._pFrustumCorners[10]=this._pNear*bottom,this._pFrustumCorners[12]=this._pFrustumCorners[21]=this._pFar*left,this._pFrustumCorners[15]=this._pFrustumCorners[18]=this._pFar*right,this._pFrustumCorners[13]=this._pFrustumCorners[16]=this._pFar*top,this._pFrustumCorners[19]=this._pFrustumCorners[22]=this._pFar*bottom,this._pFrustumCorners[2]=this._pFrustumCorners[5]=this._pFrustumCorners[8]=this._pFrustumCorners[11]=this._pNear,this._pFrustumCorners[14]=this._pFrustumCorners[17]=this._pFrustumCorners[20]=this._pFrustumCorners[23]=this._pFar,this._pMatrixInvalid=!1},PerspectiveProjection}(away.projections.ProjectionBase);projections.PerspectiveProjection=PerspectiveProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var FreeMatrixProjection=function(_super){function FreeMatrixProjection(){_super.call(this),this._pMatrix.copyFrom((new away.projections.PerspectiveProjection).matrix)}return __extends(FreeMatrixProjection,_super),Object.defineProperty(FreeMatrixProjection.prototype,"near",{set:function(value){this._pNear=value},enumerable:!0,configurable:!0}),Object.defineProperty(FreeMatrixProjection.prototype,"far",{set:function(value){this._pFar=value},enumerable:!0,configurable:!0}),Object.defineProperty(FreeMatrixProjection.prototype,"iAspectRatio",{set:function(value){this._pAspectRatio=value},enumerable:!0,configurable:!0}),FreeMatrixProjection.prototype.clone=function(){var clone=new FreeMatrixProjection;return clone._pMatrix.copyFrom(this._pMatrix),clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone.pInvalidateMatrix(),clone},FreeMatrixProjection.prototype.pUpdateMatrix=function(){this._pMatrixInvalid=!1},FreeMatrixProjection}(away.projections.ProjectionBase);projections.FreeMatrixProjection=FreeMatrixProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var OrthographicProjection=function(_super){function OrthographicProjection(projectionHeight){"undefined"==typeof projectionHeight&&(projectionHeight=500),_super.call(this),this._projectionHeight=projectionHeight}return __extends(OrthographicProjection,_super),Object.defineProperty(OrthographicProjection.prototype,"projectionHeight",{get:function(){return this._projectionHeight},set:function(value){value!=this._projectionHeight&&(this._projectionHeight=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),OrthographicProjection.prototype.unproject=function(nX,nY,sZ){var v=new away.geom.Vector3D(nX+this.matrix.rawData[12],-nY+this.matrix.rawData[13],sZ,1);return v=this.unprojectionMatrix.transformVector(v),v.z=sZ,v},OrthographicProjection.prototype.clone=function(){var clone=new OrthographicProjection;return clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone.projectionHeight=this._projectionHeight,clone},OrthographicProjection.prototype.pUpdateMatrix=function(){var raw=[];this._yMax=.5*this._projectionHeight,this._xMax=this._yMax*this._pAspectRatio;var left,right,top,bottom;if(0==this._pScissorRect.x&&0==this._pScissorRect.y&&this._pScissorRect.width==this._pViewPort.width&&this._pScissorRect.height==this._pViewPort.height)left=-this._xMax,right=this._xMax,top=-this._yMax,bottom=this._yMax,raw[0]=2/(this._projectionHeight*this._pAspectRatio),raw[5]=2/this._projectionHeight,raw[10]=1/(this._pFar-this._pNear),raw[14]=this._pNear/(this._pNear-this._pFar),raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[8]=raw[9]=raw[11]=raw[12]=raw[13]=0,raw[15]=1;else{var xWidth=this._xMax*(this._pViewPort.width/this._pScissorRect.width),yHgt=this._yMax*(this._pViewPort.height/this._pScissorRect.height),center=this._xMax*(2*this._pScissorRect.x-this._pViewPort.width)/this._pScissorRect.width+this._xMax,middle=-this._yMax*(2*this._pScissorRect.y-this._pViewPort.height)/this._pScissorRect.height-this._yMax;left=center-xWidth,right=center+xWidth,top=middle-yHgt,bottom=middle+yHgt,raw[0]=2/(right-left),raw[5]=-2/(top-bottom),raw[10]=1/(this._pFar-this._pNear),raw[12]=(right+left)/(right-left),raw[13]=(bottom+top)/(bottom-top),raw[14]=this._pNear/(this.near-this.far),raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[8]=raw[9]=raw[11]=0,raw[15]=1}this._pFrustumCorners[0]=this._pFrustumCorners[9]=this._pFrustumCorners[12]=this._pFrustumCorners[21]=left,this._pFrustumCorners[3]=this._pFrustumCorners[6]=this._pFrustumCorners[15]=this._pFrustumCorners[18]=right,this._pFrustumCorners[1]=this._pFrustumCorners[4]=this._pFrustumCorners[13]=this._pFrustumCorners[16]=top,this._pFrustumCorners[7]=this._pFrustumCorners[10]=this._pFrustumCorners[19]=this._pFrustumCorners[22]=bottom,this._pFrustumCorners[2]=this._pFrustumCorners[5]=this._pFrustumCorners[8]=this._pFrustumCorners[11]=this._pNear,this._pFrustumCorners[14]=this._pFrustumCorners[17]=this._pFrustumCorners[20]=this._pFrustumCorners[23]=this._pFar,this._pMatrix.copyRawDataFrom(raw),this._pMatrixInvalid=!1},OrthographicProjection}(away.projections.ProjectionBase);projections.OrthographicProjection=OrthographicProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var OrthographicOffCenterProjection=function(_super){function OrthographicOffCenterProjection(minX,maxX,minY,maxY){_super.call(this),this._minX=minX,this._maxX=maxX,this._minY=minY,this._maxY=maxY}return __extends(OrthographicOffCenterProjection,_super),Object.defineProperty(OrthographicOffCenterProjection.prototype,"minX",{get:function(){return this._minX},set:function(value){this._minX=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(OrthographicOffCenterProjection.prototype,"maxX",{get:function(){return this._maxX},set:function(value){this._maxX=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(OrthographicOffCenterProjection.prototype,"minY",{get:function(){return this._minY},set:function(value){this._minY=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(OrthographicOffCenterProjection.prototype,"maxY",{get:function(){return this._maxY},set:function(value){this._maxY=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),OrthographicOffCenterProjection.prototype.unproject=function(nX,nY,sZ){var v=new away.geom.Vector3D(nX,-nY,sZ,1);return v=this.unprojectionMatrix.transformVector(v),v.z=sZ,v},OrthographicOffCenterProjection.prototype.clone=function(){var clone=new OrthographicOffCenterProjection(this._minX,this._maxX,this._minY,this._maxY);return clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone},OrthographicOffCenterProjection.prototype.pUpdateMatrix=function(){var raw=[],w=1/(this._maxX-this._minX),h=1/(this._maxY-this._minY),d=1/(this._pFar-this._pNear);raw[0]=2*w,raw[5]=2*h,raw[10]=d,raw[12]=-(this._maxX+this._minX)*w,raw[13]=-(this._maxY+this._minY)*h,raw[14]=-this._pNear*d,raw[15]=1,raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[8]=raw[9]=raw[11]=0,this._pMatrix.copyRawDataFrom(raw),this._pFrustumCorners[0]=this._pFrustumCorners[9]=this._pFrustumCorners[12]=this._pFrustumCorners[21]=this._minX,this._pFrustumCorners[3]=this._pFrustumCorners[6]=this._pFrustumCorners[15]=this._pFrustumCorners[18]=this._maxX,this._pFrustumCorners[1]=this._pFrustumCorners[4]=this._pFrustumCorners[13]=this._pFrustumCorners[16]=this._minY,this._pFrustumCorners[7]=this._pFrustumCorners[10]=this._pFrustumCorners[19]=this._pFrustumCorners[22]=this._maxY,this._pFrustumCorners[2]=this._pFrustumCorners[5]=this._pFrustumCorners[8]=this._pFrustumCorners[11]=this._pNear,this._pFrustumCorners[14]=this._pFrustumCorners[17]=this._pFrustumCorners[20]=this._pFrustumCorners[23]=this._pFar,this._pMatrixInvalid=!1},OrthographicOffCenterProjection}(away.projections.ProjectionBase);projections.OrthographicOffCenterProjection=OrthographicOffCenterProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var ObliqueNearPlaneProjection=function(_super){function ObliqueNearPlaneProjection(baseProjection,plane){_super.call(this),this.baseProjection=baseProjection,this.plane=plane,this._onProjectionMatrixChangedDelegate=away.utils.Delegate.create(this,this.onProjectionMatrixChanged)}return __extends(ObliqueNearPlaneProjection,_super),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"frustumCorners",{get:function(){return this._baseProjection.frustumCorners},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"near",{get:function(){return this._baseProjection.near},set:function(value){this._baseProjection.near=value},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"far",{get:function(){return this._baseProjection.far},set:function(value){this._baseProjection.far=value},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"iAspectRatio",{get:function(){return this._baseProjection._iAspectRatio
-},set:function(value){this._baseProjection._iAspectRatio=value},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"plane",{get:function(){return this._plane},set:function(value){this._plane=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"baseProjection",{set:function(value){this._baseProjection&&this._baseProjection.removeEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this._baseProjection=value,this._baseProjection&&this._baseProjection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),ObliqueNearPlaneProjection.prototype.onProjectionMatrixChanged=function(){this.pInvalidateMatrix()},ObliqueNearPlaneProjection.prototype.pUpdateMatrix=function(){this._pMatrix.copyFrom(this._baseProjection.matrix);var cx=this._plane.a,cy=this._plane.b,cz=this._plane.c,cw=-this._plane.d+.05,signX=cx>=0?1:-1,signY=cy>=0?1:-1,p=new away.geom.Vector3D(signX,signY,1,1),inverse=this._pMatrix.clone();inverse.invert();var q=inverse.transformVector(p);this._pMatrix.copyRowTo(3,p);var a=(q.x*p.x+q.y*p.y+q.z*p.z+q.w*p.w)/(cx*q.x+cy*q.y+cz*q.z+cw*q.w);this._pMatrix.copyRowFrom(2,new away.geom.Vector3D(cx*a,cy*a,cz*a,cw*a))},ObliqueNearPlaneProjection}(away.projections.ProjectionBase);projections.ObliqueNearPlaneProjection=ObliqueNearPlaneProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(managers){var MouseManager=function(){function MouseManager(){var _this=this;this._viewLookup=new Array,this._nullVector=new away.geom.Vector3D,this._queuedEvents=new Array,this._mouseUp=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_UP),this._mouseClick=new away.events.MouseEvent(away.events.MouseEvent.CLICK),this._mouseOut=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_OUT),this._mouseDown=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_DOWN),this._mouseMove=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_MOVE),this._mouseOver=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_OVER),this._mouseWheel=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_WHEEL),this._mouseDoubleClick=new away.events.MouseEvent(away.events.MouseEvent.DOUBLE_CLICK),this.onClickDelegate=function(event){return _this.onClick(event)},this.onDoubleClickDelegate=function(event){return _this.onDoubleClick(event)},this.onMouseDownDelegate=function(event){return _this.onMouseDown(event)},this.onMouseMoveDelegate=function(event){return _this.onMouseMove(event)},this.onMouseUpDelegate=function(event){return _this.onMouseUp(event)},this.onMouseWheelDelegate=function(event){return _this.onMouseWheel(event)},this.onMouseOverDelegate=function(event){return _this.onMouseOver(event)},this.onMouseOutDelegate=function(event){return _this.onMouseOut(event)}}return MouseManager.getInstance=function(){return this._instance?this._instance:this._instance=new MouseManager},MouseManager.prototype.fireMouseEvents=function(forceMouseMove){this._iCollidingObject!=this._previousCollidingObject&&(this._previousCollidingObject&&this.queueDispatch(this._mouseOut,this._mouseMoveEvent,this._previousCollidingObject),this._iCollidingObject&&this.queueDispatch(this._mouseOver,this._mouseMoveEvent)),forceMouseMove&&this._iCollidingObject&&this.queueDispatch(this._mouseMove,this._mouseMoveEvent);for(var event,dispatcher,len=this._queuedEvents.length,i=0;len>i;++i){for(event=this._queuedEvents[i],dispatcher=event.object;dispatcher&&!dispatcher._iIsMouseEnabled();)dispatcher=dispatcher.parent;dispatcher&&dispatcher.dispatchEvent(event)}this._queuedEvents.length=0,this._previousCollidingObject=this._iCollidingObject,this._iUpdateDirty=!1},MouseManager.prototype.registerView=function(view){view.htmlElement.addEventListener("click",this.onClickDelegate),view.htmlElement.addEventListener("dblclick",this.onDoubleClickDelegate),view.htmlElement.addEventListener("mousedown",this.onMouseDownDelegate),view.htmlElement.addEventListener("mousemove",this.onMouseMoveDelegate),view.htmlElement.addEventListener("mouseup",this.onMouseUpDelegate),view.htmlElement.addEventListener("mousewheel",this.onMouseWheelDelegate),view.htmlElement.addEventListener("mouseover",this.onMouseOverDelegate),view.htmlElement.addEventListener("mouseout",this.onMouseOutDelegate),this._viewLookup.push(view)},MouseManager.prototype.unregisterView=function(view){view.htmlElement.removeEventListener("click",this.onClickDelegate),view.htmlElement.removeEventListener("dblclick",this.onDoubleClickDelegate),view.htmlElement.removeEventListener("mousedown",this.onMouseDownDelegate),view.htmlElement.removeEventListener("mousemove",this.onMouseMoveDelegate),view.htmlElement.removeEventListener("mouseup",this.onMouseUpDelegate),view.htmlElement.removeEventListener("mousewheel",this.onMouseWheelDelegate),view.htmlElement.removeEventListener("mouseover",this.onMouseOverDelegate),view.htmlElement.removeEventListener("mouseout",this.onMouseOutDelegate),this._viewLookup.slice(this._viewLookup.indexOf(view),1)},MouseManager.prototype.queueDispatch=function(event,sourceEvent,collider){"undefined"==typeof collider&&(collider=null),sourceEvent&&(event.ctrlKey=sourceEvent.ctrlKey,event.altKey=sourceEvent.altKey,event.shiftKey=sourceEvent.shiftKey,event.screenX=sourceEvent.clientX,event.screenY=sourceEvent.clientY),null==collider&&(collider=this._iCollidingObject),collider?(event.object=collider.displayObject,event.materialOwner=collider.materialOwner,event.uv=collider.uv,event.localPosition=collider.localPosition?collider.localPosition.clone():null,event.localNormal=collider.localNormal?collider.localNormal.clone():null,event.index=collider.index):(event.uv=null,event.object=null,event.localPosition=this._nullVector,event.localNormal=this._nullVector,event.index=0,event.subGeometryIndex=0),this._queuedEvents.push(event)},MouseManager.prototype.onMouseMove=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseMove,this._mouseMoveEvent=event)},MouseManager.prototype.onMouseOut=function(event){this._iActiveDiv=null,this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseOut,event)},MouseManager.prototype.onMouseOver=function(event){this._iActiveDiv=event.target,this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseOver,event)},MouseManager.prototype.onClick=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseClick,event)},MouseManager.prototype.onDoubleClick=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseDoubleClick,event)},MouseManager.prototype.onMouseDown=function(event){this._iActiveDiv=event.target,this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseDown,event)},MouseManager.prototype.onMouseUp=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseUp,event)},MouseManager.prototype.onMouseWheel=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseWheel,event)},MouseManager.prototype.updateColliders=function(event){if(!this._iUpdateDirty){for(var view,bounds,mouseX=event.clientX,mouseY=event.clientY,len=this._viewLookup.length,i=0;len>i;i++)if(view=this._viewLookup[i],bounds=view.htmlElement.getBoundingClientRect(),mouseXbounds.right||mouseYbounds.bottom)view._pMouseX=null,view._pMouseY=null;else if(view._pMouseX=mouseX+bounds.left,view._pMouseY=mouseY+bounds.top,view.updateCollider(),view.layeredView&&this._iCollidingObject)break;this._iUpdateDirty=!0}},MouseManager}();managers.MouseManager=MouseManager}(away.managers||(away.managers={}));away.managers}(away||(away={}));var away;!function(away){!function(managers){var RTTBufferManager=function(_super){function RTTBufferManager(se,stageGL){if(_super.call(this),this._viewWidth=-1,this._viewHeight=-1,this._textureWidth=-1,this._textureHeight=-1,this._buffersInvalid=!0,!se)throw new Error("No cheating the multiton!");this._renderToTextureRect=new away.geom.Rectangle,this._stageGL=stageGL}return __extends(RTTBufferManager,_super),RTTBufferManager.getInstance=function(stageGL){if(!stageGL)throw new Error("stageGL key cannot be null!");null==RTTBufferManager._instances&&(RTTBufferManager._instances=new Array);var rttBufferManager=RTTBufferManager.getRTTBufferManagerFromStageGL(stageGL);if(null==rttBufferManager){rttBufferManager=new away.managers.RTTBufferManager(new SingletonEnforcer,stageGL);var vo=new RTTBufferManagerVO;vo.stage3d=stageGL,vo.rttbfm=rttBufferManager,RTTBufferManager._instances.push(vo)}return rttBufferManager},RTTBufferManager.getRTTBufferManagerFromStageGL=function(stageGL){for(var r,l=RTTBufferManager._instances.length,c=0;l>c;c++)if(r=RTTBufferManager._instances[c],r.stage3d===stageGL)return r.rttbfm;return null},RTTBufferManager.deleteRTTBufferManager=function(stageGL){for(var r,l=RTTBufferManager._instances.length,c=0;l>c;c++)if(r=RTTBufferManager._instances[c],r.stage3d===stageGL)return RTTBufferManager._instances.splice(c,1),void 0},Object.defineProperty(RTTBufferManager.prototype,"textureRatioX",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._textureRatioX},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"textureRatioY",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._textureRatioY},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"viewWidth",{get:function(){return this._viewWidth},set:function(value){value!=this._viewWidth&&(this._viewWidth=value,this._buffersInvalid=!0,this._textureWidth=away.utils.TextureUtils.getBestPowerOf2(this._viewWidth),this._textureWidth>this._viewWidth?(this._renderToTextureRect.x=Math.floor(.5*(this._textureWidth-this._viewWidth)),this._renderToTextureRect.width=this._viewWidth):(this._renderToTextureRect.x=0,this._renderToTextureRect.width=this._textureWidth),this.dispatchEvent(new away.events.Event(away.events.Event.RESIZE)))},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"viewHeight",{get:function(){return this._viewHeight},set:function(value){value!=this._viewHeight&&(this._viewHeight=value,this._buffersInvalid=!0,this._textureHeight=away.utils.TextureUtils.getBestPowerOf2(this._viewHeight),this._textureHeight>this._viewHeight?(this._renderToTextureRect.y=Math.floor(.5*(this._textureHeight-this._viewHeight)),this._renderToTextureRect.height=this._viewHeight):(this._renderToTextureRect.y=0,this._renderToTextureRect.height=this._textureHeight),this.dispatchEvent(new away.events.Event(away.events.Event.RESIZE)))},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"renderToTextureVertexBuffer",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._renderToTextureVertexBuffer},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"renderToScreenVertexBuffer",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._renderToScreenVertexBuffer},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"indexBuffer",{get:function(){return this._indexBuffer},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"renderToTextureRect",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._renderToTextureRect},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"textureWidth",{get:function(){return this._textureWidth},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"textureHeight",{get:function(){return this._textureHeight},enumerable:!0,configurable:!0}),RTTBufferManager.prototype.dispose=function(){RTTBufferManager.deleteRTTBufferManager(this._stageGL),this._indexBuffer&&(this._indexBuffer.dispose(),this._renderToScreenVertexBuffer.dispose(),this._renderToTextureVertexBuffer.dispose(),this._renderToScreenVertexBuffer=null,this._renderToTextureVertexBuffer=null,this._indexBuffer=null)},RTTBufferManager.prototype.updateRTTBuffers=function(){var textureVerts,screenVerts,x,y,context=this._stageGL.contextGL;null==this._renderToTextureVertexBuffer&&(this._renderToTextureVertexBuffer=context.createVertexBuffer(4,5)),null==this._renderToScreenVertexBuffer&&(this._renderToScreenVertexBuffer=context.createVertexBuffer(4,5)),this._indexBuffer||(this._indexBuffer=context.createIndexBuffer(6),this._indexBuffer.uploadFromArray([2,1,0,3,2,0],0,6)),this._textureRatioX=x=Math.min(this._viewWidth/this._textureWidth,1),this._textureRatioY=y=Math.min(this._viewHeight/this._textureHeight,1);var u1=.5*(1-x),u2=.5*(x+1),v1=.5*(y+1),v2=.5*(1-y);textureVerts=[-x,-y,u1,v1,0,x,-y,u2,v1,1,x,y,u2,v2,2,-x,y,u1,v2,3],screenVerts=[-1,-1,u1,v1,0,1,-1,u2,v1,1,1,1,u2,v2,2,-1,1,u1,v2,3],this._renderToTextureVertexBuffer.uploadFromArray(textureVerts,0,4),this._renderToScreenVertexBuffer.uploadFromArray(screenVerts,0,4),this._buffersInvalid=!1},RTTBufferManager}(away.events.EventDispatcher);managers.RTTBufferManager=RTTBufferManager}(away.managers||(away.managers={}));away.managers}(away||(away={}));var RTTBufferManagerVO=function(){function RTTBufferManagerVO(){}return RTTBufferManagerVO}(),SingletonEnforcer=function(){function SingletonEnforcer(){}return SingletonEnforcer}(),away;!function(away){!function(managers){var StageGLManager=function(_super){function StageGLManager(StageGLManagerSingletonEnforcer){if(_super.call(this),!StageGLManagerSingletonEnforcer)throw new Error("This class is a multiton and cannot be instantiated manually. Use StageGLManager.getInstance instead.");this._stageGLs=new Array(StageGLManager.STAGEGL_MAX_QUANTITY),this._onContextCreatedDelegate=away.utils.Delegate.create(this,this.onContextCreated)}return __extends(StageGLManager,_super),StageGLManager.getInstance=function(){return null==this._instance&&(this._instance=new StageGLManager(new StageGLManagerSingletonEnforcer)),this._instance},StageGLManager.prototype.getStageGLAt=function(index,forceSoftware,profile){if("undefined"==typeof forceSoftware&&(forceSoftware=!1),"undefined"==typeof profile&&(profile="baseline"),0>index||index>=StageGLManager.STAGEGL_MAX_QUANTITY)throw new away.errors.ArgumentError("Index is out of bounds [0.."+StageGLManager.STAGEGL_MAX_QUANTITY+"]");if(!this._stageGLs[index]){StageGLManager._numStageGLs++;var canvas=document.createElement("canvas"),stageGL=this._stageGLs[index]=new away.base.StageGL(canvas,index,this,forceSoftware,profile);stageGL.addEventListener(away.events.StageGLEvent.CONTEXTGL_CREATED,this._onContextCreatedDelegate),stageGL.requestContext(!0,forceSoftware,profile)}return stageGL},StageGLManager.prototype.iRemoveStageGL=function(stageGL){StageGLManager._numStageGLs--,stageGL.removeEventListener(away.events.StageGLEvent.CONTEXTGL_CREATED,this._onContextCreatedDelegate),this._stageGLs[stageGL._iStageGLIndex]=null},StageGLManager.prototype.getFreeStageGL=function(forceSoftware,profile){"undefined"==typeof forceSoftware&&(forceSoftware=!1),"undefined"==typeof profile&&(profile="baseline");for(var i=0,len=this._stageGLs.length;len>i;){if(!this._stageGLs[i])return this.getStageGLAt(i,forceSoftware,profile);++i}return null},Object.defineProperty(StageGLManager.prototype,"hasFreeStageGL",{get:function(){return StageGLManager._numStageGLsi;i++)this.removeListeners(this._loadingSessions[i]),this._loadingSessions[i].stop(),this._loadingSessions[i]=null;this._loadingSessions=null},Loader.prototype.load=function(request,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var token;if(this._useAssetLib){var lib;lib=away.library.AssetLibraryBundle.getInstance(this._assetLibId),token=lib.load(request,context,ns,parser)}else{var loader=new away.net.AssetLoader;this._loadingSessions.push(loader),token=loader.load(request,context,ns,parser)}return token.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),token.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),token._iLoader._iAddErrorHandler(this.onLoadError),token._iLoader._iAddParseErrorHandler(this.onParseError),token},Loader.prototype.loadData=function(data,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var token;if(this._useAssetLib){var lib;lib=away.library.AssetLibraryBundle.getInstance(this._assetLibId),token=lib.loadData(data,context,ns,parser)}else{var loader=new away.net.AssetLoader;this._loadingSessions.push(loader),token=loader.loadData(data,"",context,ns,parser)}return token.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),token.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),token._iLoader._iAddErrorHandler(this.onLoadError),token._iLoader._iAddParseErrorHandler(this.onParseError),token},Loader.prototype.unload=function(){},Loader.enableParser=function(parserClass){away.net.AssetLoader.enableParser(parserClass)},Loader.enableParsers=function(parserClasses){away.net.AssetLoader.enableParsers(parserClasses)},Loader.prototype.removeListeners=function(dispatcher){dispatcher.removeEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),dispatcher.removeEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate)},Loader.prototype.onAssetComplete=function(event){this.dispatchEvent(event)},Loader.prototype.onLoadError=function(event){return this.hasEventListener(away.events.IOErrorEvent.IO_ERROR)?(this.dispatchEvent(event),!0):!1},Loader.prototype.onParseError=function(event){return this.hasEventListener(away.events.ParserEvent.PARSE_ERROR)?(this.dispatchEvent(event),!0):!1},Loader.prototype.onResourceComplete=function(event){var content=event.content;this._content=content,content&&this.addChild(content),this.dispatchEvent(event)},Loader}(away.containers.DisplayObjectContainer);containers.Loader=Loader}(away.containers||(away.containers={}));away.containers}(away||(away={}));var away;!function(away){!function(containers){var Scene=function(_super){function Scene(){_super.call(this),this._expandedPartitions=new Array,this._partitions=new Array,this._iCollectionMark=0,this._iSceneGraphRoot=new away.containers.DisplayObjectContainer,this._iSceneGraphRoot._iSetScene(this),this._iSceneGraphRoot._iIsRoot=!0,this._iSceneGraphRoot.partition=new away.partition.Partition(new away.partition.NodeBase)}return __extends(Scene,_super),Scene.prototype.traversePartitions=function(traverser){var i=0,len=this._partitions.length;for(traverser.scene=this;len>i;)this._iCollectionMark++,this._partitions[i++].traverse(traverser)},Object.defineProperty(Scene.prototype,"partition",{get:function(){return this._iSceneGraphRoot.partition},set:function(value){this._iSceneGraphRoot.partition=value,this.dispatchEvent(new away.events.SceneEvent(away.events.SceneEvent.PARTITION_CHANGED,this._iSceneGraphRoot))},enumerable:!0,configurable:!0}),Scene.prototype.contains=function(child){return this._iSceneGraphRoot.contains(child)},Scene.prototype.addChild=function(child){return this._iSceneGraphRoot.addChild(child)},Scene.prototype.removeChild=function(child){this._iSceneGraphRoot.removeChild(child)},Scene.prototype.removeChildAt=function(index){this._iSceneGraphRoot.removeChildAt(index)},Scene.prototype.getChildAt=function(index){return this._iSceneGraphRoot.getChildAt(index)},Object.defineProperty(Scene.prototype,"numChildren",{get:function(){return this._iSceneGraphRoot.numChildren},enumerable:!0,configurable:!0}),Scene.prototype.iRegisterEntity=function(displayObject){displayObject.partition&&this.iRegisterPartition(displayObject.partition),displayObject.isEntity&&displayObject._iAssignedPartition.iMarkForUpdate(displayObject)},Scene.prototype.iRegisterPartition=function(partition){this._expandedPartitions.push(partition),-1==this._partitions.indexOf(partition)&&this._partitions.push(partition)},Scene.prototype.iUnregisterEntity=function(displayObject){displayObject.partition&&this.iUnregisterPartition(displayObject.partition),displayObject.isEntity&&displayObject._iAssignedPartition.iRemoveEntity(displayObject)},Scene.prototype.iUnregisterPartition=function(partition){this._expandedPartitions.splice(this._expandedPartitions.indexOf(partition),1),-1==this._expandedPartitions.indexOf(partition)&&this._partitions.splice(this._partitions.indexOf(partition),1)},Scene}(away.events.EventDispatcher);containers.Scene=Scene}(away.containers||(away.containers={}));away.containers}(away||(away={}));var away;!function(away){!function(containers){var Scene=away.containers.Scene,Camera=away.entities.Camera,CameraEvent=away.events.CameraEvent,SceneEvent=away.events.SceneEvent,RendererEvent=away.events.RendererEvent,MouseManager=(away.geom.Matrix3D,away.geom.Point,away.geom.Rectangle,away.geom.Vector3D,away.gl.ContextGL,away.gl.ContextGLTextureFormat,away.gl.Texture,away.managers.MouseManager),Delegate=(away.render.CSSRendererBase,away.utils.Delegate),View=function(){function View(renderer,scene,camera){"undefined"==typeof scene&&(scene=null),"undefined"==typeof camera&&(camera=null),this._width=0,this._height=0,this._time=0,this._deltaTime=0,this._backgroundColor=0,this._backgroundAlpha=1,this._viewportDirty=!0,this._scissorDirty=!0,this._mousePicker=new away.pick.RaycastPicker,this._onScenePartitionChangedDelegate=Delegate.create(this,this.onScenePartitionChanged),this._onProjectionChangedDelegate=Delegate.create(this,this.onProjectionChanged),this._onViewportUpdatedDelegate=Delegate.create(this,this.onViewportUpdated),this._onScissorUpdatedDelegate=Delegate.create(this,this.onScissorUpdated),this.scene=scene||new Scene,this.camera=camera||new Camera,this.renderer=renderer,document.body.style.margin="0px",this._htmlElement=document.createElement("div"),this._htmlElement.style.position="absolute",document.body.appendChild(this._htmlElement),this._mouseManager=MouseManager.getInstance(),this._mouseManager.registerView(this)}return View.prototype.onScenePartitionChanged=function(){this._pCamera&&(this._pCamera.partition=this.scene.partition)},Object.defineProperty(View.prototype,"mouseX",{get:function(){return this._pMouseX},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"mouseY",{get:function(){return this._pMouseY},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"htmlElement",{get:function(){return this._htmlElement},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"renderer",{get:function(){return this._pRenderer},set:function(value){this._pRenderer!=value&&(this._pRenderer&&(this._pRenderer.dispose(),this._pRenderer.removeEventListener(RendererEvent.VIEWPORT_UPDATED,this._onViewportUpdatedDelegate),this._pRenderer.removeEventListener(RendererEvent.SCISSOR_UPDATED,this._onScissorUpdatedDelegate)),this._pRenderer=value,this._pRenderer.addEventListener(RendererEvent.VIEWPORT_UPDATED,this._onViewportUpdatedDelegate),this._pRenderer.addEventListener(RendererEvent.SCISSOR_UPDATED,this._onScissorUpdatedDelegate),this._pEntityCollector=this._pRenderer._iCreateEntityCollector(),this._pCamera&&(this._pEntityCollector.camera=this._pCamera),this._pRenderer._iBackgroundR=(this._backgroundColor>>16&255)/255,this._pRenderer._iBackgroundG=(this._backgroundColor>>8&255)/255,this._pRenderer._iBackgroundB=(255&this._backgroundColor)/255,this._pRenderer._iBackgroundAlpha=this._backgroundAlpha,this._pRenderer.width=this._width,this._pRenderer.height=this._height,this._pRenderer.shareContext=this._shareContext)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"shareContext",{get:function(){return this._shareContext},set:function(value){this._shareContext!=value&&(this._shareContext=value,this._pRenderer&&(this._pRenderer.shareContext=this._shareContext))},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"backgroundColor",{get:function(){return this._backgroundColor},set:function(value){this._backgroundColor!=value&&(this._backgroundColor=value,this._pRenderer._iBackgroundR=(value>>16&255)/255,this._pRenderer._iBackgroundG=(value>>8&255)/255,this._pRenderer._iBackgroundB=(255&value)/255)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"backgroundAlpha",{get:function(){return this._backgroundAlpha},set:function(value){value>1?value=1:0>value&&(value=0),this._backgroundAlpha!=value&&(this._pRenderer._iBackgroundAlpha=this._backgroundAlpha=value)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"camera",{get:function(){return this._pCamera},set:function(value){this._pCamera!=value&&(this._pCamera&&this._pCamera.removeEventListener(CameraEvent.PROJECTION_CHANGED,this._onProjectionChangedDelegate),this._pCamera=value,this._pEntityCollector&&(this._pEntityCollector.camera=this._pCamera),this._pScene&&(this._pCamera.partition=this._pScene.partition),this._pCamera.addEventListener(CameraEvent.PROJECTION_CHANGED,this._onProjectionChangedDelegate),this._scissorDirty=!0,this._viewportDirty=!0)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"scene",{get:function(){return this._pScene},set:function(value){this._pScene!=value&&(this._pScene&&this._pScene.removeEventListener(SceneEvent.PARTITION_CHANGED,this._onScenePartitionChangedDelegate),this._pScene=value,this._pScene.addEventListener(SceneEvent.PARTITION_CHANGED,this._onScenePartitionChangedDelegate),this._pCamera&&(this._pCamera.partition=this._pScene.partition))},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"deltaTime",{get:function(){return this._deltaTime},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"width",{get:function(){return this._width},set:function(value){this._width!=value&&(this._width=value,this._aspectRatio=this._width/this._height,this._pCamera.projection._iAspectRatio=this._aspectRatio,this._pRenderer.width=value,this._htmlElement.style.width=value+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"height",{get:function(){return this._height},set:function(value){this._height!=value&&(this._height=value,this._aspectRatio=this._width/this._height,this._pCamera.projection._iAspectRatio=this._aspectRatio,this._pRenderer.height=value,this._htmlElement.style.height=value+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"mousePicker",{get:function(){return this._mousePicker},set:function(value){this._mousePicker!=value&&(this._mousePicker=null==value?new away.pick.RaycastPicker:value)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"x",{get:function(){return this._pRenderer.x},set:function(value){this._pRenderer.x!=value&&(this._pRenderer.x==value,this._htmlElement.style.left=value+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"y",{get:function(){return this._pRenderer.y},set:function(value){this._pRenderer.y!=value&&(this._pRenderer.y==value,this._htmlElement.style.top=value+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"visible",{get:function(){return"visible"==this._htmlElement.style.visibility},set:function(value){this._htmlElement.style.visibility=value?"visible":"hidden"},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"renderedFacesCount",{get:function(){return 0},enumerable:!0,configurable:!0}),View.prototype.render=function(){this.pUpdateTime(),this._pCamera.projection._iAspectRatio=this._aspectRatio,this._scissorDirty&&(this._scissorDirty=!1,this._pCamera.projection._iUpdateScissorRect(this._pRenderer.scissorRect.x,this._pRenderer.scissorRect.y,this._pRenderer.scissorRect.width,this._pRenderer.scissorRect.height)),this._viewportDirty&&(this._viewportDirty=!1,this._pCamera.projection._iUpdateViewport(this._pRenderer.viewPort.x,this._pRenderer.viewPort.y,this._pRenderer.viewPort.width,this._pRenderer.viewPort.height)),this._shareContext||(this.forceMouseMove&&this._htmlElement==this._mouseManager._iActiveDiv&&!this._mouseManager._iUpdateDirty&&(this._mouseManager._iCollidingObject=this.mousePicker.getViewCollision(this._pMouseX,this._pMouseY,this)),this._mouseManager.fireMouseEvents(this.forceMouseMove)),this._pEntityCollector.clear(),this._pScene.traversePartitions(this._pEntityCollector),this._pRenderer.render(this._pEntityCollector)},View.prototype.pUpdateTime=function(){var time=away.utils.getTimer();0==this._time&&(this._time=time),this._deltaTime=time-this._time,this._time=time},View.prototype.dispose=function(){this._pRenderer.dispose(),this._mouseManager.unregisterView(this),this._mouseManager=null,this._pRenderer=null,this._pEntityCollector=null},Object.defineProperty(View.prototype,"iEntityCollector",{get:function(){return this._pEntityCollector},enumerable:!0,configurable:!0}),View.prototype.onProjectionChanged=function(){this._scissorDirty=!0,this._viewportDirty=!0},View.prototype.onViewportUpdated=function(){this._viewportDirty=!0},View.prototype.onScissorUpdated=function(){this._scissorDirty=!0},View.prototype.project=function(point3d){var v=this._pCamera.project(point3d);return v.x=(v.x*this._pRenderer.viewPort.width+this._width*this._pCamera.projection.originX)/2,v.y=(v.y*this._pRenderer.viewPort.height+this._height*this._pCamera.projection.originY)/2,v},View.prototype.unproject=function(sX,sY,sZ){return this._pCamera.unproject(2*(sX-this._width*this._pCamera.projection.originX)/this._pRenderer.viewPort.width,2*(sY-this._height*this._pCamera.projection.originY)/this._pRenderer.viewPort.height,sZ)
-},View.prototype.getRay=function(sX,sY,sZ){return this._pCamera.getRay((2*sX-this._width)/this._width,(2*sY-this._height)/this._height,sZ)},View.prototype.updateCollider=function(){if(this._shareContext){var collidingObject=this.mousePicker.getViewCollision(this._pMouseX,this._pMouseY,this);(this.layeredView||null==this._mouseManager._iCollidingObject||collidingObject.rayEntryDistancei;)v=vertices[i++],minX>v?minX=v:v>maxX&&(maxX=v),v=vertices[i++],minY>v?minY=v:v>maxY&&(maxY=v),v=vertices[i++],minZ>v?minZ=v:v>maxZ&&(maxZ=v);this.fromExtremes(minX,minY,minZ,maxX,maxY,maxZ)},BoundingVolumeBase.prototype.fromSphere=function(center,radius){this.fromExtremes(center.x-radius,center.y-radius,center.z-radius,center.x+radius,center.y+radius,center.z+radius)},BoundingVolumeBase.prototype.fromExtremes=function(minX,minY,minZ,maxX,maxY,maxZ){this._aabb.x=minX,this._aabb.y=maxY,this._aabb.z=minZ,this._aabb.width=maxX-minX,this._aabb.height=maxY-minY,this._aabb.depth=maxZ-minZ,this._pAabbPointsDirty=!0,this._pBoundingEntity&&this.pUpdateBoundingEntity()},BoundingVolumeBase.prototype.isInFrustum=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.overlaps=function(bounds){return this._aabb.intersects(bounds.aabb)},BoundingVolumeBase.prototype.clone=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.rayIntersection=function(){return-1},BoundingVolumeBase.prototype.containsPoint=function(){return!1},BoundingVolumeBase.prototype.pUpdateAABBPoints=function(){var minX=this._aabb.x,minY=this._aabb.y-this._aabb.height,minZ=this._aabb.z,maxX=this._aabb.x+this._aabb.width,maxY=this._aabb.y,maxZ=this._aabb.z+this._aabb.depth;this._pAabbPoints[0]=minX,this._pAabbPoints[1]=minY,this._pAabbPoints[2]=minZ,this._pAabbPoints[3]=maxX,this._pAabbPoints[4]=minY,this._pAabbPoints[5]=minZ,this._pAabbPoints[6]=minX,this._pAabbPoints[7]=maxY,this._pAabbPoints[8]=minZ,this._pAabbPoints[9]=maxX,this._pAabbPoints[10]=maxY,this._pAabbPoints[11]=minZ,this._pAabbPoints[12]=minX,this._pAabbPoints[13]=minY,this._pAabbPoints[14]=maxZ,this._pAabbPoints[15]=maxX,this._pAabbPoints[16]=minY,this._pAabbPoints[17]=maxZ,this._pAabbPoints[18]=minX,this._pAabbPoints[19]=maxY,this._pAabbPoints[20]=maxZ,this._pAabbPoints[21]=maxX,this._pAabbPoints[22]=maxY,this._pAabbPoints[23]=maxZ,this._pAabbPointsDirty=!1},BoundingVolumeBase.prototype.pUpdateBoundingEntity=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.pCreateBoundingEntity=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.classifyToPlane=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.transformFrom=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase}();bounds.BoundingVolumeBase=BoundingVolumeBase}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(bounds){var NullBounds=function(_super){function NullBounds(alwaysIn){"undefined"==typeof alwaysIn&&(alwaysIn=!0),_super.call(this),this._alwaysIn=alwaysIn,this._aabb.width=this._aabb.height=this._aabb.depth=Number.POSITIVE_INFINITY,this._aabb.x=this._aabb.y=this._aabb.z=this._alwaysIn?Number.NEGATIVE_INFINITY/2:Number.POSITIVE_INFINITY}return __extends(NullBounds,_super),NullBounds.prototype.clone=function(){return new away.bounds.NullBounds(this._alwaysIn)},NullBounds.prototype.pCreateBoundingEntity=function(){return null},NullBounds.prototype.isInFrustum=function(){return this._alwaysIn},NullBounds.prototype.fromSphere=function(){},NullBounds.prototype.fromExtremes=function(){},NullBounds.prototype.classifyToPlane=function(){return away.geom.PlaneClassification.INTERSECT},NullBounds.prototype.transformFrom=function(bounds){this._alwaysIn=bounds._alwaysIn},NullBounds}(away.bounds.BoundingVolumeBase);bounds.NullBounds=NullBounds}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(bounds){var BoundingSphere=function(_super){function BoundingSphere(){_super.call(this),this._radius=0,this._centerX=0,this._centerY=0,this._centerZ=0}return __extends(BoundingSphere,_super),Object.defineProperty(BoundingSphere.prototype,"radius",{get:function(){return this._radius},enumerable:!0,configurable:!0}),BoundingSphere.prototype.nullify=function(){_super.prototype.nullify.call(this),this._centerX=this._centerY=this._centerZ=0,this._radius=0},BoundingSphere.prototype.isInFrustum=function(planes,numPlanes){for(var i=0;numPlanes>i;++i){var plane=planes[i],flippedExtentX=plane.a<0?-this._radius:this._radius,flippedExtentY=plane.b<0?-this._radius:this._radius,flippedExtentZ=plane.c<0?-this._radius:this._radius,projDist=plane.a*(this._centerX+flippedExtentX)+plane.b*(this._centerY+flippedExtentY)+plane.c*(this._centerZ+flippedExtentZ)-plane.d;if(0>projDist)return!1}return!0},BoundingSphere.prototype.fromSphere=function(center,radius){this._centerX=center.x,this._centerY=center.y,this._centerZ=center.z,this._radius=radius,this._aabb.width=this._aabb.height=this._aabb.depth=2*radius,this._aabb.x=this._centerX-radius,this._aabb.y=this._centerY+radius,this._aabb.z=this._centerZ-radius,this._pAabbPointsDirty=!0,this._pBoundingEntity&&this.pUpdateBoundingEntity()},BoundingSphere.prototype.fromExtremes=function(minX,minY,minZ,maxX,maxY,maxZ){this._centerX=.5*(maxX+minX),this._centerY=.5*(maxY+minY),this._centerZ=.5*(maxZ+minZ);var d=maxX-minX,y=maxY-minY,z=maxZ-minZ;y>d&&(d=y),z>d&&(d=z),this._radius=d*Math.sqrt(.5),_super.prototype.fromExtremes.call(this,minX,minY,minZ,maxX,maxY,maxZ)},BoundingSphere.prototype.clone=function(){var clone=new BoundingSphere;return clone.fromSphere(new away.geom.Vector3D(this._centerX,this._centerY,this._centerZ),this._radius),clone},BoundingSphere.prototype.rayIntersection=function(position,direction,targetNormal){if(this.containsPoint(position))return 0;var rayEntryDistance,px=position.x-this._centerX,py=position.y-this._centerY,pz=position.z-this._centerZ,vx=direction.x,vy=direction.y,vz=direction.z,a=vx*vx+vy*vy+vz*vz,b=2*(px*vx+py*vy+pz*vz),c=px*px+py*py+pz*pz-this._radius*this._radius,det=b*b-4*a*c;if(det>=0){var sqrtDet=Math.sqrt(det);if(rayEntryDistance=(-b-sqrtDet)/(2*a),rayEntryDistance>=0)return targetNormal.x=px+rayEntryDistance*vx,targetNormal.y=py+rayEntryDistance*vy,targetNormal.z=pz+rayEntryDistance*vz,targetNormal.normalize(),rayEntryDistance}return-1},BoundingSphere.prototype.containsPoint=function(position){var px=position.x-this._centerX,py=position.y-this._centerY,pz=position.z-this._centerZ,distance=Math.sqrt(px*px+py*py+pz*pz);return distance<=this._radius},BoundingSphere.prototype.pUpdateBoundingEntity=function(){var sc=this._radius;0==sc&&(sc=.001);var transform=this._pBoundingEntity.transform;transform.scale=new away.geom.Vector3D(sc,sc,sc),transform.position=new away.geom.Vector3D(this._centerX,this._centerY,this._centerZ)},BoundingSphere.prototype.pCreateBoundingEntity=function(){return null},BoundingSphere.prototype.classifyToPlane=function(plane){var a=plane.a,b=plane.b,c=plane.c,dd=a*this._centerX+b*this._centerY+c*this._centerZ-plane.d;0>a&&(a=-a),0>b&&(b=-b),0>c&&(c=-c);var rr=(a+b+c)*this._radius;return dd>rr?away.geom.PlaneClassification.FRONT:-rr>dd?away.geom.PlaneClassification.BACK:away.geom.PlaneClassification.INTERSECT},BoundingSphere.prototype.transformFrom=function(bounds,matrix){var sphere=bounds,cx=sphere._centerX,cy=sphere._centerY,cz=sphere._centerZ,raw=new Array(16);matrix.copyRawDataTo(raw);var m11=raw[0],m12=raw[4],m13=raw[8],m14=raw[12],m21=raw[1],m22=raw[5],m23=raw[9],m24=raw[13],m31=raw[2],m32=raw[6],m33=raw[10],m34=raw[14];this._centerX=cx*m11+cy*m12+cz*m13+m14,this._centerY=cx*m21+cy*m22+cz*m23+m24,this._centerZ=cx*m31+cy*m32+cz*m33+m34,0>m11&&(m11=-m11),0>m12&&(m12=-m12),0>m13&&(m13=-m13),0>m21&&(m21=-m21),0>m22&&(m22=-m22),0>m23&&(m23=-m23),0>m31&&(m31=-m31),0>m32&&(m32=-m32),0>m33&&(m33=-m33);var r=sphere._radius,rx=m11+m12+m13,ry=m21+m22+m23,rz=m31+m32+m33;this._radius=r*Math.sqrt(rx*rx+ry*ry+rz*rz),this._aabb.width=this._aabb.height=this._aabb.depth=2*this._radius,this._aabb.x=this._centerX-this._radius,this._aabb.y=this._centerY+this._radius,this._aabb.z=this._centerZ-this._radius},BoundingSphere}(away.bounds.BoundingVolumeBase);bounds.BoundingSphere=BoundingSphere}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(bounds){var AxisAlignedBoundingBox=function(_super){function AxisAlignedBoundingBox(){_super.call(this),this._centerX=0,this._centerY=0,this._centerZ=0,this._halfExtentsX=0,this._halfExtentsY=0,this._halfExtentsZ=0}return __extends(AxisAlignedBoundingBox,_super),AxisAlignedBoundingBox.prototype.nullify=function(){_super.prototype.nullify.call(this),this._centerX=this._centerY=this._centerZ=0,this._halfExtentsX=this._halfExtentsY=this._halfExtentsZ=0},AxisAlignedBoundingBox.prototype.isInFrustum=function(planes,numPlanes){for(var i=0;numPlanes>i;++i){var plane=planes[i],a=plane.a,b=plane.b,c=plane.c,flippedExtentX=0>a?-this._halfExtentsX:this._halfExtentsX,flippedExtentY=0>b?-this._halfExtentsY:this._halfExtentsY,flippedExtentZ=0>c?-this._halfExtentsZ:this._halfExtentsZ,projDist=a*(this._centerX+flippedExtentX)+b*(this._centerY+flippedExtentY)+c*(this._centerZ+flippedExtentZ)-plane.d;if(0>projDist)return!1}return!0},AxisAlignedBoundingBox.prototype.rayIntersection=function(position,direction,targetNormal){if(this.containsPoint(position))return 0;var ix,iy,iz,rayEntryDistance,intersects,px=position.x-this._centerX,py=position.y-this._centerY,pz=position.z-this._centerZ,vx=direction.x,vy=direction.y,vz=direction.z;return 0>vx&&(rayEntryDistance=(this._halfExtentsX-px)/vx,rayEntryDistance>0&&(iy=py+rayEntryDistance*vy,iz=pz+rayEntryDistance*vz,iy>-this._halfExtentsY&&iy-this._halfExtentsZ&&iz0&&(rayEntryDistance=(-this._halfExtentsX-px)/vx,rayEntryDistance>0&&(iy=py+rayEntryDistance*vy,iz=pz+rayEntryDistance*vz,iy>-this._halfExtentsY&&iy-this._halfExtentsZ&&izvy&&(rayEntryDistance=(this._halfExtentsY-py)/vy,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iz=pz+rayEntryDistance*vz,ix>-this._halfExtentsX&&ix-this._halfExtentsZ&&iz0&&(rayEntryDistance=(-this._halfExtentsY-py)/vy,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iz=pz+rayEntryDistance*vz,ix>-this._halfExtentsX&&ix-this._halfExtentsZ&&izvz&&(rayEntryDistance=(this._halfExtentsZ-pz)/vz,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iy=py+rayEntryDistance*vy,iy>-this._halfExtentsY&&iy-this._halfExtentsX&&ix0&&(rayEntryDistance=(-this._halfExtentsZ-pz)/vz,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iy=py+rayEntryDistance*vy,iy>-this._halfExtentsY&&iy-this._halfExtentsX&&ix=-this._halfExtentsX&&py<=this._halfExtentsY&&py>=-this._halfExtentsY&&pz<=this._halfExtentsZ&&pz>=-this._halfExtentsZ},AxisAlignedBoundingBox.prototype.fromExtremes=function(minX,minY,minZ,maxX,maxY,maxZ){this._centerX=.5*(maxX+minX),this._centerY=.5*(maxY+minY),this._centerZ=.5*(maxZ+minZ),this._halfExtentsX=.5*(maxX-minX),this._halfExtentsY=.5*(maxY-minY),this._halfExtentsZ=.5*(maxZ-minZ),_super.prototype.fromExtremes.call(this,minX,minY,minZ,maxX,maxY,maxZ)},AxisAlignedBoundingBox.prototype.clone=function(){var clone=new AxisAlignedBoundingBox;return clone.fromExtremes(this._aabb.x,this._aabb.y+this._aabb.height,this._aabb.z,this._aabb.x+this._aabb.width,this._aabb.y,this._aabb.z+this._aabb.depth),clone},Object.defineProperty(AxisAlignedBoundingBox.prototype,"halfExtentsX",{get:function(){return this._halfExtentsX},enumerable:!0,configurable:!0}),Object.defineProperty(AxisAlignedBoundingBox.prototype,"halfExtentsY",{get:function(){return this._halfExtentsY},enumerable:!0,configurable:!0}),Object.defineProperty(AxisAlignedBoundingBox.prototype,"halfExtentsZ",{get:function(){return this._halfExtentsZ},enumerable:!0,configurable:!0}),AxisAlignedBoundingBox.prototype.closestPointToPoint=function(point,target){"undefined"==typeof target&&(target=null);var p;return null==target&&(target=new away.geom.Vector3D),p=point.x,pthis._aabb.x+this._aabb.width&&(p=this._aabb.x+this._aabb.width),target.x=p,p=point.y,pthis._aabb.y&&(p=this._aabb.y),target.y=p,p=point.z,pthis._aabb.z+this._aabb.depth&&(p=this._aabb.z+this._aabb.depth),target.z=p,target},AxisAlignedBoundingBox.prototype.pUpdateBoundingRenderable=function(){this._pBoundingEntity.transform.scale.x=Math.max(2*this._halfExtentsX,.001),this._pBoundingEntity.transform.scale.y=Math.max(2*this._halfExtentsY,.001),this._pBoundingEntity.transform.scale.z=Math.max(2*this._halfExtentsZ,.001),this._pBoundingEntity.transform.position.x=this._centerX,this._pBoundingEntity.transform.position.y=this._centerY,this._pBoundingEntity.transform.position.z=this._centerZ},AxisAlignedBoundingBox.prototype.pCreateBoundingEntity=function(){return null},AxisAlignedBoundingBox.prototype.classifyToPlane=function(plane){var a=plane.a,b=plane.b,c=plane.c,centerDistance=a*this._centerX+b*this._centerY+c*this._centerZ-plane.d;0>a&&(a=-a),0>b&&(b=-b),0>c&&(c=-c);var boundOffset=a*this._halfExtentsX+b*this._halfExtentsY+c*this._halfExtentsZ;return centerDistance>boundOffset?away.geom.PlaneClassification.FRONT:-boundOffset>centerDistance?away.geom.PlaneClassification.BACK:away.geom.PlaneClassification.INTERSECT},AxisAlignedBoundingBox.prototype.transformFrom=function(bounds,matrix){var aabb=bounds,cx=aabb._centerX,cy=aabb._centerY,cz=aabb._centerZ,raw=away.geom.Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);var m11=raw[0],m12=raw[4],m13=raw[8],m14=raw[12],m21=raw[1],m22=raw[5],m23=raw[9],m24=raw[13],m31=raw[2],m32=raw[6],m33=raw[10],m34=raw[14];this._centerX=cx*m11+cy*m12+cz*m13+m14,this._centerY=cx*m21+cy*m22+cz*m23+m24,this._centerZ=cx*m31+cy*m32+cz*m33+m34,0>m11&&(m11=-m11),0>m12&&(m12=-m12),0>m13&&(m13=-m13),0>m21&&(m21=-m21),0>m22&&(m22=-m22),0>m23&&(m23=-m23),0>m31&&(m31=-m31),0>m32&&(m32=-m32),0>m33&&(m33=-m33);var hx=aabb._halfExtentsX,hy=aabb._halfExtentsY,hz=aabb._halfExtentsZ;this._halfExtentsX=hx*m11+hy*m12+hz*m13,this._halfExtentsY=hx*m21+hy*m22+hz*m23,this._halfExtentsZ=hx*m31+hy*m32+hz*m33,this._aabb.width=this._aabb.height=this._aabb.depth=2*this._halfExtentsX,this._aabb.x=this._centerX-this._halfExtentsX,this._aabb.y=this._centerY+this._halfExtentsY,this._aabb.z=this._centerZ-this._halfExtentsZ},AxisAlignedBoundingBox}(away.bounds.BoundingVolumeBase);bounds.AxisAlignedBoundingBox=AxisAlignedBoundingBox}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(controllers){var ControllerBase=function(){function ControllerBase(targetObject){"undefined"==typeof targetObject&&(targetObject=null),this._pAutoUpdate=!0,this.targetObject=targetObject}return ControllerBase.prototype.pNotifyUpdate=function(){this._pTargetObject&&this._pTargetObject._iAssignedPartition&&this._pAutoUpdate&&this._pTargetObject._iAssignedPartition.iMarkForUpdate(this._pTargetObject)},Object.defineProperty(ControllerBase.prototype,"targetObject",{get:function(){return this._pTargetObject},set:function(val){this._pTargetObject!=val&&(this._pTargetObject&&this._pAutoUpdate&&(this._pTargetObject._iController=null),this._pTargetObject=val,this._pTargetObject&&this._pAutoUpdate&&(this._pTargetObject._iController=this),this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(ControllerBase.prototype,"autoUpdate",{get:function(){return this._pAutoUpdate},set:function(val){this._pAutoUpdate!=val&&(this._pAutoUpdate=val,this._pTargetObject&&(this._pTargetObject._iController=this._pTargetObject?this:null))},enumerable:!0,configurable:!0}),ControllerBase.prototype.update=function(interpolate){throw"undefined"==typeof interpolate&&(interpolate=!0),new away.errors.AbstractMethodError},ControllerBase}();controllers.ControllerBase=ControllerBase}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var LookAtController=function(_super){function LookAtController(targetObject,lookAtObject){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),_super.call(this,targetObject),this._pOrigin=new away.geom.Vector3D(0,0,0),this._onLookAtObjectChangedDelegate=away.utils.Delegate.create(this,this.onLookAtObjectChanged),lookAtObject?this.lookAtObject=lookAtObject:this.lookAtPosition=new away.geom.Vector3D}return __extends(LookAtController,_super),Object.defineProperty(LookAtController.prototype,"lookAtPosition",{get:function(){return this._pLookAtPosition},set:function(val){this._pLookAtObject&&(this._pLookAtObject.removeEventListener(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this._onLookAtObjectChangedDelegate),this._pLookAtObject=null),this._pLookAtPosition=val,this.pNotifyUpdate()},enumerable:!0,configurable:!0}),Object.defineProperty(LookAtController.prototype,"lookAtObject",{get:function(){return this._pLookAtObject},set:function(val){this._pLookAtPosition&&(this._pLookAtPosition=null),this._pLookAtObject!=val&&(this._pLookAtObject&&this._pLookAtObject.removeEventListener(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this._onLookAtObjectChangedDelegate),this._pLookAtObject=val,this._pLookAtObject&&this._pLookAtObject.addEventListener(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this._onLookAtObjectChangedDelegate),this.pNotifyUpdate())},enumerable:!0,configurable:!0}),LookAtController.prototype.update=function(interpolate){"undefined"==typeof interpolate&&(interpolate=!0),this._pTargetObject&&(this._pLookAtPosition?this._pTargetObject.lookAt(this._pLookAtPosition):this._pLookAtObject&&this._pTargetObject.lookAt(this._pLookAtObject.scene?this._pLookAtObject.scenePosition:this._pLookAtObject.transform.position))},LookAtController.prototype.onLookAtObjectChanged=function(){this.pNotifyUpdate()},LookAtController}(away.controllers.ControllerBase);controllers.LookAtController=LookAtController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var HoverController=function(_super){function HoverController(targetObject,lookAtObject,panAngle,tiltAngle,distance,minTiltAngle,maxTiltAngle,minPanAngle,maxPanAngle,steps,yFactor,wrapPanAngle){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),"undefined"==typeof panAngle&&(panAngle=0),"undefined"==typeof tiltAngle&&(tiltAngle=90),"undefined"==typeof distance&&(distance=1e3),"undefined"==typeof minTiltAngle&&(minTiltAngle=-90),"undefined"==typeof maxTiltAngle&&(maxTiltAngle=90),"undefined"==typeof minPanAngle&&(minPanAngle=null),"undefined"==typeof maxPanAngle&&(maxPanAngle=null),"undefined"==typeof steps&&(steps=8),"undefined"==typeof yFactor&&(yFactor=2),"undefined"==typeof wrapPanAngle&&(wrapPanAngle=!1),_super.call(this,targetObject,lookAtObject),this._iCurrentPanAngle=0,this._iCurrentTiltAngle=90,this._panAngle=0,this._tiltAngle=90,this._distance=1e3,this._minPanAngle=-1/0,this._maxPanAngle=1/0,this._minTiltAngle=-90,this._maxTiltAngle=90,this._steps=8,this._yFactor=2,this._wrapPanAngle=!1,this.distance=distance,this.panAngle=panAngle,this.tiltAngle=tiltAngle,this.minPanAngle=null!=minPanAngle?minPanAngle:-1/0,this.maxPanAngle=null!=maxPanAngle?maxPanAngle:1/0,this.minTiltAngle=minTiltAngle,this.maxTiltAngle=maxTiltAngle,this.steps=steps,this.yFactor=yFactor,this.wrapPanAngle=wrapPanAngle,this._iCurrentPanAngle=this._panAngle,this._iCurrentTiltAngle=this._tiltAngle}return __extends(HoverController,_super),Object.defineProperty(HoverController.prototype,"steps",{get:function(){return this._steps},set:function(val){val=1>val?1:val,this._steps!=val&&(this._steps=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"panAngle",{get:function(){return this._panAngle},set:function(val){val=Math.max(this._minPanAngle,Math.min(this._maxPanAngle,val)),this._panAngle!=val&&(this._panAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"tiltAngle",{get:function(){return this._tiltAngle},set:function(val){val=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,val)),this._tiltAngle!=val&&(this._tiltAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"distance",{get:function(){return this._distance},set:function(val){this._distance!=val&&(this._distance=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"minPanAngle",{get:function(){return this._minPanAngle},set:function(val){this._minPanAngle!=val&&(this._minPanAngle=val,this.panAngle=Math.max(this._minPanAngle,Math.min(this._maxPanAngle,this._panAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"maxPanAngle",{get:function(){return this._maxPanAngle},set:function(val){this._maxPanAngle!=val&&(this._maxPanAngle=val,this.panAngle=Math.max(this._minPanAngle,Math.min(this._maxPanAngle,this._panAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"minTiltAngle",{get:function(){return this._minTiltAngle},set:function(val){this._minTiltAngle!=val&&(this._minTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"maxTiltAngle",{get:function(){return this._maxTiltAngle},set:function(val){this._maxTiltAngle!=val&&(this._maxTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"yFactor",{get:function(){return this._yFactor},set:function(val){this._yFactor!=val&&(this._yFactor=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"wrapPanAngle",{get:function(){return this._wrapPanAngle},set:function(val){this._wrapPanAngle!=val&&(this._wrapPanAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),HoverController.prototype.update=function(interpolate){if("undefined"==typeof interpolate&&(interpolate=!0),this._tiltAngle!=this._iCurrentTiltAngle||this._panAngle!=this._iCurrentPanAngle){if(this.pNotifyUpdate(),this._wrapPanAngle){for(this._panAngle<0?(this._iCurrentPanAngle+=this._panAngle%360+360-this._panAngle,this._panAngle=this._panAngle%360+360):(this._iCurrentPanAngle+=this._panAngle%360-this._panAngle,this._panAngle=this._panAngle%360);this._panAngle-this._iCurrentPanAngle<-180;)this._iCurrentPanAngle-=360;for(;this._panAngle-this._iCurrentPanAngle>180;)this._iCurrentPanAngle+=360}interpolate?(this._iCurrentTiltAngle+=(this._tiltAngle-this._iCurrentTiltAngle)/(this.steps+1),this._iCurrentPanAngle+=(this._panAngle-this._iCurrentPanAngle)/(this.steps+1)):(this._iCurrentPanAngle=this._panAngle,this._iCurrentTiltAngle=this._tiltAngle),Math.abs(this.tiltAngle-this._iCurrentTiltAngle)<.01&&Math.abs(this._panAngle-this._iCurrentPanAngle)<.01&&(this._iCurrentTiltAngle=this._tiltAngle,this._iCurrentPanAngle=this._panAngle)}var pos=this.lookAtObject?this.lookAtObject.transform.position:this.lookAtPosition?this.lookAtPosition:this._pOrigin;this.targetObject.x=pos.x+this.distance*Math.sin(this._iCurrentPanAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*away.geom.MathConsts.DEGREES_TO_RADIANS),this.targetObject.y=pos.y+this.distance*Math.sin(this._iCurrentTiltAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)*this.yFactor,this.targetObject.z=pos.z+this.distance*Math.cos(this._iCurrentPanAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*away.geom.MathConsts.DEGREES_TO_RADIANS),_super.prototype.update.call(this)},HoverController}(away.controllers.LookAtController);controllers.HoverController=HoverController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var FirstPersonController=function(_super){function FirstPersonController(targetObject,panAngle,tiltAngle,minTiltAngle,maxTiltAngle,steps,wrapPanAngle){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof panAngle&&(panAngle=0),"undefined"==typeof tiltAngle&&(tiltAngle=90),"undefined"==typeof minTiltAngle&&(minTiltAngle=-90),"undefined"==typeof maxTiltAngle&&(maxTiltAngle=90),"undefined"==typeof steps&&(steps=8),"undefined"==typeof wrapPanAngle&&(wrapPanAngle=!1),_super.call(this,targetObject),this._iCurrentPanAngle=0,this._iCurrentTiltAngle=90,this._panAngle=0,this._tiltAngle=90,this._minTiltAngle=-90,this._maxTiltAngle=90,this._steps=8,this._walkIncrement=0,this._strafeIncrement=0,this._wrapPanAngle=!1,this.fly=!1,this.panAngle=panAngle,this.tiltAngle=tiltAngle,this.minTiltAngle=minTiltAngle,this.maxTiltAngle=maxTiltAngle,this.steps=steps,this.wrapPanAngle=wrapPanAngle,this._iCurrentPanAngle=this._panAngle,this._iCurrentTiltAngle=this._tiltAngle}return __extends(FirstPersonController,_super),Object.defineProperty(FirstPersonController.prototype,"steps",{get:function(){return this._steps},set:function(val){val=1>val?1:val,this._steps!=val&&(this._steps=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"panAngle",{get:function(){return this._panAngle},set:function(val){this._panAngle!=val&&(this._panAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"tiltAngle",{get:function(){return this._tiltAngle},set:function(val){val=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,val)),this._tiltAngle!=val&&(this._tiltAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"minTiltAngle",{get:function(){return this._minTiltAngle},set:function(val){this._minTiltAngle!=val&&(this._minTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"maxTiltAngle",{get:function(){return this._maxTiltAngle},set:function(val){this._maxTiltAngle!=val&&(this._maxTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"wrapPanAngle",{get:function(){return this._wrapPanAngle},set:function(val){this._wrapPanAngle!=val&&(this._wrapPanAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),FirstPersonController.prototype.update=function(interpolate){if("undefined"==typeof interpolate&&(interpolate=!0),this._tiltAngle!=this._iCurrentTiltAngle||this._panAngle!=this._iCurrentPanAngle){if(this.pNotifyUpdate(),this._wrapPanAngle){for(this._panAngle<0?(this._iCurrentPanAngle+=this._panAngle%360+360-this._panAngle,this._panAngle=this._panAngle%360+360):(this._iCurrentPanAngle+=this._panAngle%360-this._panAngle,this._panAngle=this._panAngle%360);this._panAngle-this._iCurrentPanAngle<-180;)this._iCurrentPanAngle-=360;for(;this._panAngle-this._iCurrentPanAngle>180;)this._iCurrentPanAngle+=360}interpolate?(this._iCurrentTiltAngle+=(this._tiltAngle-this._iCurrentTiltAngle)/(this.steps+1),this._iCurrentPanAngle+=(this._panAngle-this._iCurrentPanAngle)/(this.steps+1)):(this._iCurrentTiltAngle=this._tiltAngle,this._iCurrentPanAngle=this._panAngle),Math.abs(this.tiltAngle-this._iCurrentTiltAngle)<.01&&Math.abs(this._panAngle-this._iCurrentPanAngle)<.01&&(this._iCurrentTiltAngle=this._tiltAngle,this._iCurrentPanAngle=this._panAngle)}this.targetObject.rotationX=this._iCurrentTiltAngle,this.targetObject.rotationY=this._iCurrentPanAngle,this._walkIncrement&&(this.fly?this.targetObject.transform.moveForward(this._walkIncrement):(this.targetObject.x+=this._walkIncrement*Math.sin(this._panAngle*away.geom.MathConsts.DEGREES_TO_RADIANS),this.targetObject.z+=this._walkIncrement*Math.cos(this._panAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)),this._walkIncrement=0),this._strafeIncrement&&(this.targetObject.transform.moveRight(this._strafeIncrement),this._strafeIncrement=0)},FirstPersonController.prototype.incrementWalk=function(val){0!=val&&(this._walkIncrement+=val,this.pNotifyUpdate())},FirstPersonController.prototype.incrementStrafe=function(val){0!=val&&(this._strafeIncrement+=val,this.pNotifyUpdate())},FirstPersonController}(away.controllers.ControllerBase);controllers.FirstPersonController=FirstPersonController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var FollowController=function(_super){function FollowController(targetObject,lookAtObject,tiltAngle,distance){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),"undefined"==typeof tiltAngle&&(tiltAngle=45),"undefined"==typeof distance&&(distance=700),_super.call(this,targetObject,lookAtObject,0,tiltAngle,distance)}return __extends(FollowController,_super),FollowController.prototype.update=function(interpolate){"undefined"==typeof interpolate&&(interpolate=!0),interpolate=interpolate,this.lookAtObject&&(this.panAngle=this._pLookAtObject.rotationY-180,_super.prototype.update.call(this))
-},FollowController}(away.controllers.HoverController);controllers.FollowController=FollowController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var SpringController=function(_super){function SpringController(targetObject,lookAtObject,stiffness,mass,damping){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),"undefined"==typeof stiffness&&(stiffness=1),"undefined"==typeof mass&&(mass=40),"undefined"==typeof damping&&(damping=4),_super.call(this,targetObject,lookAtObject),this.positionOffset=new away.geom.Vector3D(0,500,-1e3),this.stiffness=stiffness,this.damping=damping,this.mass=mass,this._velocity=new away.geom.Vector3D,this._dv=new away.geom.Vector3D,this._stretch=new away.geom.Vector3D,this._force=new away.geom.Vector3D,this._acceleration=new away.geom.Vector3D,this._desiredPosition=new away.geom.Vector3D}return __extends(SpringController,_super),SpringController.prototype.update=function(interpolate){"undefined"==typeof interpolate&&(interpolate=!0);var offs;this._pLookAtObject&&this._pTargetObject&&(offs=this._pLookAtObject.transform.matrix3D.deltaTransformVector(this.positionOffset),this._desiredPosition.x=this._pLookAtObject.x+offs.x,this._desiredPosition.y=this._pLookAtObject.y+offs.y,this._desiredPosition.z=this._pLookAtObject.z+offs.z,this._stretch=this._pTargetObject.transform.position.add(this._desiredPosition),this._stretch.scaleBy(-this.stiffness),this._dv.copyFrom(this._velocity),this._dv.scaleBy(this.damping),this._force.x=this._stretch.x-this._dv.x,this._force.y=this._stretch.y-this._dv.y,this._force.z=this._stretch.z-this._dv.z,this._acceleration.copyFrom(this._force),this._acceleration.scaleBy(1/this.mass),this._velocity.incrementBy(this._acceleration),this._pTargetObject.transform.position=this._pTargetObject.transform.position.add(this._velocity),_super.prototype.update.call(this))},SpringController}(away.controllers.LookAtController);controllers.SpringController=SpringController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(materials){var BlendMode=away.base.BlendMode,AssetType=(away.events.MaterialEvent,away.geom.Matrix3D,away.library.AssetType),CSSMaterialBase=(away.utils.Delegate,function(_super){function CSSMaterialBase(texture,smooth,repeat){"undefined"==typeof texture&&(texture=null),"undefined"==typeof smooth&&(smooth=!0),"undefined"==typeof repeat&&(repeat=!1),_super.call(this),this._iRenderOrderId=0,this._bothSides=!1,this._pBlendMode=BlendMode.NORMAL,this._repeat=!1,this._smooth=!0,this._iMaterialId=Number(this.id),this.texture=texture,this.smooth=smooth,this.repeat=repeat,this._owners=new Array}return __extends(CSSMaterialBase,_super),Object.defineProperty(CSSMaterialBase.prototype,"height",{get:function(){return this._height},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"imageElement",{get:function(){return this._imageElement},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"imageStyle",{get:function(){return this._imageStyle},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"repeat",{get:function(){return this._repeat},set:function(value){this._repeat=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"smooth",{get:function(){return this._smooth},set:function(value){this._smooth=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"texture",{get:function(){return this._texture},set:function(value){if(this._texture!=value&&(this._texture=value,value instanceof away.textures.ImageTexture)){this._imageElement=value.htmlImageElement;var node=document.createElement("style");node.type="text/css",document.getElementsByTagName("head")[0].appendChild(node);var sheet=document.styleSheets[document.styleSheets.length-1];sheet.insertRule(".material"+this.id+"{ }",0);var style=sheet.cssRules[0].style;style.backgroundImage="url("+this._imageElement.src+")",style.backgroundSize="100% 100%",style.position="absolute",style.width=this._imageElement.width+"px",style.height=this._imageElement.height+"px",style.transformOrigin=style["-webkit-transform-origin"]=style["-moz-transform-origin"]=style["-o-transform-origin"]=style["-ms-transform-origin"]="0% 0%",this._height=this._imageElement.height,this._width=this._imageElement.width,this.notifySizeChanged()}},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"width",{get:function(){return this._width},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"assetType",{get:function(){return AssetType.MATERIAL},enumerable:!0,configurable:!0}),CSSMaterialBase.prototype.dispose=function(){},Object.defineProperty(CSSMaterialBase.prototype,"bothSides",{get:function(){return this._bothSides},set:function(value){this._bothSides=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"blendMode",{get:function(){return this._pBlendMode},set:function(value){this._pBlendMode=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"requiresBlending",{get:function(){return this._pBlendMode!=away.base.BlendMode.NORMAL},enumerable:!0,configurable:!0}),CSSMaterialBase.prototype.iAddOwner=function(owner){var index=this._owners.indexOf(owner);-1==index&&this._owners.push(owner)},CSSMaterialBase.prototype.iRemoveOwner=function(owner){var index=this._owners.indexOf(owner);-1!=index&&this._owners.splice(index,1)},Object.defineProperty(CSSMaterialBase.prototype,"iOwners",{get:function(){return this._owners},enumerable:!0,configurable:!0}),CSSMaterialBase.prototype.notifySizeChanged=function(){this._sizeChanged||(this._sizeChanged=new away.events.MaterialEvent(away.events.MaterialEvent.SIZE_CHANGED)),this.dispatchEvent(this._sizeChanged)},CSSMaterialBase}(away.library.NamedAssetBase));materials.CSSMaterialBase=CSSMaterialBase}(away.materials||(away.materials={}));away.materials}(away||(away={}));var away;!function(away){!function(textures){var TextureProxyBase=function(_super){function TextureProxyBase(){_super.call(this),this._pFormat=away.gl.ContextGLTextureFormat.BGRA,this._pHasMipmaps=!1,this._textures=new Array(8),this._dirty=new Array(8)}return __extends(TextureProxyBase,_super),Object.defineProperty(TextureProxyBase.prototype,"hasMipMaps",{get:function(){return this._pHasMipmaps},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"format",{get:function(){return this._pFormat},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"assetType",{get:function(){return away.library.AssetType.TEXTURE},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"width",{get:function(){return this._pWidth},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"height",{get:function(){return this._pHeight},enumerable:!0,configurable:!0}),TextureProxyBase.prototype.getTextureForStageGL=function(stageGL){var contextIndex=stageGL._iStageGLIndex,tex=this._textures[contextIndex],context=stageGL.contextGL;return tex&&this._dirty[contextIndex]==context||(this._textures[contextIndex]=tex=this.pCreateTexture(context),this._dirty[contextIndex]=context,this.pUploadContent(tex)),tex},TextureProxyBase.prototype.pUploadContent=function(){throw new away.errors.AbstractMethodError},TextureProxyBase.prototype.pSetSize=function(width,height){(this._pWidth!=width||this._pHeight!=height)&&this.pInvalidateSize(),this._pWidth=width,this._pHeight=height},TextureProxyBase.prototype.invalidateContent=function(){for(var i=0;8>i;++i)this._dirty[i]=null},TextureProxyBase.prototype.pInvalidateSize=function(){for(var tex,i=0;8>i;++i)tex=this._textures[i],tex&&(tex.dispose(),this._textures[i]=null,this._dirty[i]=null)},TextureProxyBase.prototype.pCreateTexture=function(){throw new away.errors.AbstractMethodError},TextureProxyBase.prototype.dispose=function(){for(var i=0;8>i;++i)this._textures[i]&&this._textures[i].dispose()},TextureProxyBase}(away.library.NamedAssetBase);textures.TextureProxyBase=TextureProxyBase}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var Texture2DBase=function(_super){function Texture2DBase(){_super.call(this)}return __extends(Texture2DBase,_super),Texture2DBase.prototype.pCreateTexture=function(context){return context.createTexture(this.width,this.height,away.gl.ContextGLTextureFormat.BGRA,!1)},Texture2DBase}(away.textures.TextureProxyBase);textures.Texture2DBase=Texture2DBase}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var CubeTextureBase=function(_super){function CubeTextureBase(){_super.call(this)}return __extends(CubeTextureBase,_super),Object.defineProperty(CubeTextureBase.prototype,"size",{get:function(){return this.width},enumerable:!0,configurable:!0}),CubeTextureBase.prototype.pCreateTexture=function(context){return context.createCubeTexture(this.width,away.gl.ContextGLTextureFormat.BGRA,!1)},CubeTextureBase}(away.textures.TextureProxyBase);textures.CubeTextureBase=CubeTextureBase}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ContextGLTextureFormat=away.gl.ContextGLTextureFormat,ATFData=(away.utils.ByteArray,function(){function ATFData(data){var sign=data.readUTFBytes(3);if("ATF"!=sign)throw new Error("ATF parsing error, unknown format "+sign);data.position=255==data[6]?12:6;var tdata=data.readUnsignedByte(),_type=tdata>>7,_format=127&tdata;switch(_format){case 0:case 1:this.format=ContextGLTextureFormat.BGRA;break;case 2:case 3:this.format=ContextGLTextureFormat.COMPRESSED;break;case 4:case 5:this.format=ContextGLTextureFormat.COMPRESSED_ALPHA;break;default:throw new Error("Invalid ATF format")}switch(_type){case 0:this.type=ATFData.TYPE_NORMAL;break;case 1:this.type=ATFData.TYPE_CUBE;break;default:throw new Error("Invalid ATF type")}this.width=Math.pow(2,data.readUnsignedByte()),this.height=Math.pow(2,data.readUnsignedByte()),this.numTextures=data.readUnsignedByte(),this.data=data}return ATFData.TYPE_NORMAL=0,ATFData.TYPE_CUBE=1,ATFData}());textures.ATFData=ATFData}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ATFCubeTexture=(away.gl.ContextGL,away.gl.CubeTexture,away.gl.TextureBase,away.utils.ByteArray,function(_super){function ATFCubeTexture(byteArray){if(_super.call(this),this.atfData=new away.textures.ATFData(byteArray),this._atfData.type!=away.textures.ATFData.TYPE_CUBE)throw new Error("ATF isn't cubetexture");this._pFormat=this._atfData.format,this._pHasMipmaps=this._atfData.numTextures>1}return __extends(ATFCubeTexture,_super),Object.defineProperty(ATFCubeTexture.prototype,"atfData",{get:function(){return this._atfData},set:function(value){this._atfData=value,this.invalidateContent(),this.pSetSize(value.width,value.height)},enumerable:!0,configurable:!0}),ATFCubeTexture.prototype.pUploadContent=function(texture){texture.uploadCompressedTextureFromByteArray(this._atfData.data,0,!1)},ATFCubeTexture.prototype.pCreateTexture=function(context){return context.createCubeTexture(this._atfData.width,this._atfData.format,!1)},ATFCubeTexture}(away.textures.CubeTextureBase));textures.ATFCubeTexture=ATFCubeTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ATFTexture=(away.gl.ContextGL,away.gl.Texture,away.gl.TextureBase,away.utils.ByteArray,function(_super){function ATFTexture(byteArray){_super.call(this),this.atfData=new away.textures.ATFData(byteArray),this._pFormat=this._atfData.format,this._pHasMipmaps=this._atfData.numTextures>1}return __extends(ATFTexture,_super),Object.defineProperty(ATFTexture.prototype,"atfData",{get:function(){return this._atfData},set:function(value){this._atfData=value,this.invalidateContent(),this.pSetSize(value.width,value.height)},enumerable:!0,configurable:!0}),ATFTexture.prototype.pUploadContent=function(texture){texture.uploadCompressedTextureFromByteArray(this._atfData.data,0,!1)},ATFTexture.prototype.pCreateTexture=function(context){return context.createTexture(this._pWidth,this._pHeight,this.atfData.format,!1)},ATFTexture}(away.textures.Texture2DBase));textures.ATFTexture=ATFTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ImageTexture=function(_super){function ImageTexture(htmlImageElement,generateMipmaps){"undefined"==typeof generateMipmaps&&(generateMipmaps=!0),_super.call(this),this.htmlImageElement=htmlImageElement,this._generateMipmaps=generateMipmaps}return __extends(ImageTexture,_super),Object.defineProperty(ImageTexture.prototype,"htmlImageElement",{get:function(){return this._htmlImageElement},set:function(value){if(value!=this._htmlImageElement){if(!away.utils.TextureUtils.isHTMLImageElementValid(value))throw new away.errors.Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(value.width,value.height),this._htmlImageElement=value,this._generateMipmaps&&this.getMipMapHolder()}},enumerable:!0,configurable:!0}),ImageTexture.prototype.pUploadContent=function(texture){if(this._generateMipmaps)away.textures.MipmapGenerator.generateHTMLImageElementMipMaps(this._htmlImageElement,texture,this._mipMapHolder,!0);else{var tx=texture;tx.uploadFromHTMLImageElement(this._htmlImageElement,0)}},ImageTexture.prototype.getMipMapHolder=function(){var newW=this._htmlImageElement.width,newH=this._htmlImageElement.height;if(this._mipMapHolder){if(this._mipMapHolder.width==newW&&this._htmlImageElement.height==newH)return;this.freeMipMapHolder()}ImageTexture._mipMaps[newW]||(ImageTexture._mipMaps[newW]=[],ImageTexture._mipMapUses[newW]=[]),ImageTexture._mipMaps[newW][newH]?(ImageTexture._mipMapUses[newW][newH]=ImageTexture._mipMapUses[newW][newH]+1,this._mipMapHolder=ImageTexture._mipMaps[newW][newH]):(this._mipMapHolder=ImageTexture._mipMaps[newW][newH]=new away.base.BitmapData(newW,newH,!0),ImageTexture._mipMapUses[newW][newH]=1)},ImageTexture.prototype.freeMipMapHolder=function(){var holderWidth=this._mipMapHolder.width,holderHeight=this._mipMapHolder.height;0==--ImageTexture._mipMapUses[holderWidth][holderHeight]&&(ImageTexture._mipMaps[holderWidth][holderHeight].dispose(),ImageTexture._mipMaps[holderWidth][holderHeight]=null)},ImageTexture.prototype.dispose=function(){_super.prototype.dispose.call(this),this._mipMapHolder&&this.freeMipMapHolder()},ImageTexture._mipMaps=[],ImageTexture._mipMapUses=[],ImageTexture}(away.textures.Texture2DBase);textures.ImageTexture=ImageTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var BitmapTexture=function(_super){function BitmapTexture(bitmapData,generateMipmaps){"undefined"==typeof generateMipmaps&&(generateMipmaps=!0),_super.call(this),this.bitmapData=bitmapData,this._generateMipmaps=generateMipmaps}return __extends(BitmapTexture,_super),Object.defineProperty(BitmapTexture.prototype,"bitmapData",{get:function(){return this._bitmapData},set:function(value){if(value!=this._bitmapData){if(!away.utils.TextureUtils.isBitmapDataValid(value))throw new Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapData=value,this._generateMipmaps&&this.getMipMapHolder()}},enumerable:!0,configurable:!0}),BitmapTexture.prototype.pUploadContent=function(texture){if(this._generateMipmaps)away.textures.MipmapGenerator.generateMipMaps(this._bitmapData,texture,this._mipMapHolder,!0);else{var tx=texture;tx.uploadFromBitmapData(this._bitmapData,0)}},BitmapTexture.prototype.getMipMapHolder=function(){var newW,newH;if(newW=this._bitmapData.width,newH=this._bitmapData.height,this._mipMapHolder){if(this._mipMapHolder.width==newW&&this._bitmapData.height==newH)return;this.freeMipMapHolder()}BitmapTexture._mipMaps[newW]||(BitmapTexture._mipMaps[newW]=[],BitmapTexture._mipMapUses[newW]=[]),BitmapTexture._mipMaps[newW][newH]?(BitmapTexture._mipMapUses[newW][newH]=BitmapTexture._mipMapUses[newW][newH]+1,this._mipMapHolder=BitmapTexture._mipMaps[newW][newH]):(this._mipMapHolder=BitmapTexture._mipMaps[newW][newH]=new away.base.BitmapData(newW,newH,!0),BitmapTexture._mipMapUses[newW][newH]=1)},BitmapTexture.prototype.freeMipMapHolder=function(){var holderWidth=this._mipMapHolder.width,holderHeight=this._mipMapHolder.height;0==--BitmapTexture._mipMapUses[holderWidth][holderHeight]&&(BitmapTexture._mipMaps[holderWidth][holderHeight].dispose(),BitmapTexture._mipMaps[holderWidth][holderHeight]=null)},BitmapTexture.prototype.dispose=function(){_super.prototype.dispose.call(this),this._mipMapHolder&&this.freeMipMapHolder()},BitmapTexture._mipMaps=[],BitmapTexture._mipMapUses=[],BitmapTexture}(away.textures.Texture2DBase);textures.BitmapTexture=BitmapTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var RenderTexture=function(_super){function RenderTexture(width,height){_super.call(this),this.pSetSize(width,height)}return __extends(RenderTexture,_super),Object.defineProperty(RenderTexture.prototype,"width",{get:function(){return this._pWidth},set:function(value){if(value!=this._pWidth){if(!away.utils.TextureUtils.isDimensionValid(value))throw new Error("Invalid size: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(value,this._pHeight)}},enumerable:!0,configurable:!0}),Object.defineProperty(RenderTexture.prototype,"height",{get:function(){return this._pHeight},set:function(value){if(value!=this._pHeight){if(!away.utils.TextureUtils.isDimensionValid(value))throw new Error("Invalid size: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(this._pWidth,value)}},enumerable:!0,configurable:!0}),RenderTexture.prototype.pUploadContent=function(texture){var bmp=new away.base.BitmapData(this.width,this.height,!1,16711680);texture.generateFromRenderBuffer(bmp),bmp.dispose()},RenderTexture.prototype.pCreateTexture=function(context){return context.createTexture(this.width,this.height,away.gl.ContextGLTextureFormat.BGRA,!0)},RenderTexture}(away.textures.Texture2DBase);textures.RenderTexture=RenderTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ImageCubeTexture=function(_super){function ImageCubeTexture(posX,negX,posY,negY,posZ,negZ){_super.call(this),this._useMipMaps=!1,this._bitmapDatas=new Array(6),this.testSize(this._bitmapDatas[0]=posX),this.testSize(this._bitmapDatas[1]=negX),this.testSize(this._bitmapDatas[2]=posY),this.testSize(this._bitmapDatas[3]=negY),this.testSize(this._bitmapDatas[4]=posZ),this.testSize(this._bitmapDatas[5]=negZ),this.pSetSize(posX.width,posX.height)}return __extends(ImageCubeTexture,_super),Object.defineProperty(ImageCubeTexture.prototype,"positiveX",{get:function(){return this._bitmapDatas[0]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[0]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"negativeX",{get:function(){return this._bitmapDatas[1]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[1]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"positiveY",{get:function(){return this._bitmapDatas[2]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[2]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"negativeY",{get:function(){return this._bitmapDatas[3]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[3]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"positiveZ",{get:function(){return this._bitmapDatas[4]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[4]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"negativeZ",{get:function(){return this._bitmapDatas[5]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[5]=value},enumerable:!0,configurable:!0}),ImageCubeTexture.prototype.testSize=function(value){if(value.width!=value.height)throw new Error("BitmapData should have equal width and height!");if(!away.utils.TextureUtils.isHTMLImageElementValid(value))throw new Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048")},ImageCubeTexture.prototype.pUploadContent=function(texture){for(var i=0;6>i;++i)if(this._useMipMaps);else{var tx=texture;tx.uploadFromHTMLImageElement(this._bitmapDatas[i],i,0)}},ImageCubeTexture}(away.textures.CubeTextureBase);textures.ImageCubeTexture=ImageCubeTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var BitmapCubeTexture=function(_super){function BitmapCubeTexture(posX,negX,posY,negY,posZ,negZ){_super.call(this),this._useMipMaps=!1,this._bitmapDatas=new Array(6),this.testSize(this._bitmapDatas[0]=posX),this.testSize(this._bitmapDatas[1]=negX),this.testSize(this._bitmapDatas[2]=posY),this.testSize(this._bitmapDatas[3]=negY),this.testSize(this._bitmapDatas[4]=posZ),this.testSize(this._bitmapDatas[5]=negZ),this.pSetSize(posX.width,posX.height)}return __extends(BitmapCubeTexture,_super),Object.defineProperty(BitmapCubeTexture.prototype,"positiveX",{get:function(){return this._bitmapDatas[0]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[0]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"negativeX",{get:function(){return this._bitmapDatas[1]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[1]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"positiveY",{get:function(){return this._bitmapDatas[2]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[2]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"negativeY",{get:function(){return this._bitmapDatas[3]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[3]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"positiveZ",{get:function(){return this._bitmapDatas[4]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[4]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"negativeZ",{get:function(){return this._bitmapDatas[5]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[5]=value},enumerable:!0,configurable:!0}),BitmapCubeTexture.prototype.testSize=function(value){if(value.width!=value.height)throw new Error("BitmapData should have equal width and height!");if(!away.utils.TextureUtils.isBitmapDataValid(value))throw new Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048")},BitmapCubeTexture.prototype.pUploadContent=function(texture){for(var i=0;6>i;++i)if(this._useMipMaps);else{var tx=texture;tx.uploadFromBitmapData(this._bitmapDatas[i],i,0)}},BitmapCubeTexture}(away.textures.CubeTextureBase);textures.BitmapCubeTexture=BitmapCubeTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var MipmapGenerator=function(){function MipmapGenerator(){}return MipmapGenerator.generateHTMLImageElementMipMaps=function(source,target,mipmap,alpha,side){"undefined"==typeof mipmap&&(mipmap=null),"undefined"==typeof alpha&&(alpha=!1),"undefined"==typeof side&&(side=-1),MipmapGenerator._rect.width=source.width,MipmapGenerator._rect.height=source.height,MipmapGenerator._source=new away.base.BitmapData(source.width,source.height,alpha),MipmapGenerator._source.drawImage(source,MipmapGenerator._rect,MipmapGenerator._rect),MipmapGenerator.generateMipMaps(MipmapGenerator._source,target,mipmap),MipmapGenerator._source.dispose(),MipmapGenerator._source=null},MipmapGenerator.generateMipMaps=function(source,target,mipmap,alpha,side){"undefined"==typeof mipmap&&(mipmap=null),"undefined"==typeof alpha&&(alpha=!1),"undefined"==typeof side&&(side=-1);var w=source.width,h=source.height,regen=null!=mipmap,i=0;for(mipmap||(mipmap=new away.base.BitmapData(w,h,alpha)),MipmapGenerator._rect.width=w,MipmapGenerator._rect.height=h;w>=1||h>=1;)alpha&&mipmap.fillRect(MipmapGenerator._rect,0),MipmapGenerator._matrix.a=MipmapGenerator._rect.width/source.width,MipmapGenerator._matrix.d=MipmapGenerator._rect.height/source.height,mipmap.width=MipmapGenerator._rect.width,mipmap.height=MipmapGenerator._rect.height,mipmap.copyPixels(source,source.rect,MipmapGenerator._rect),target instanceof away.gl.Texture?target.uploadFromBitmapData(mipmap,i++):target.uploadFromBitmapData(mipmap,side,i++),w>>=1,h>>=1,MipmapGenerator._rect.width=w>1?w:1,MipmapGenerator._rect.height=h>1?h:1;regen||mipmap.dispose()},MipmapGenerator._matrix=new away.geom.Matrix,MipmapGenerator._rect=new away.geom.Rectangle,MipmapGenerator}();textures.MipmapGenerator=MipmapGenerator}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var BitmapData=away.base.BitmapData,BitmapDataChannel=away.base.BitmapDataChannel,Point=(away.gl.TextureBase,away.geom.Point),SpecularBitmapTexture=(away.geom.Rectangle,function(_super){function SpecularBitmapTexture(specularMap,glossMap){"undefined"==typeof specularMap&&(specularMap=null),"undefined"==typeof glossMap&&(glossMap=null);var bmd;bmd=specularMap?specularMap:glossMap,bmd=bmd?new BitmapData(bmd.width,bmd.height,!1,16777215):new BitmapData(1,1,!1,16777215),_super.call(this,bmd),this.specularMap=specularMap,this.glossMap=glossMap}return __extends(SpecularBitmapTexture,_super),Object.defineProperty(SpecularBitmapTexture.prototype,"specularMap",{get:function(){return this._specularMap},set:function(value){this._specularMap=value,this.invalidateContent(),this.testSize()},enumerable:!0,configurable:!0}),Object.defineProperty(SpecularBitmapTexture.prototype,"glossMap",{get:function(){return this._glossMap},set:function(value){this._glossMap=value,this.invalidateContent(),this.testSize()},enumerable:!0,configurable:!0}),SpecularBitmapTexture.prototype.testSize=function(){var w,h;if(this._specularMap?(w=this._specularMap.width,h=this._specularMap.height):this._glossMap?(w=this._glossMap.width,h=this._glossMap.height):(w=1,h=1),w!=this.bitmapData.width&&h!=this.bitmapData.height){var oldBitmap=this.bitmapData;this.bitmapData=new BitmapData(this._specularMap.width,this._specularMap.height,!1,16777215),oldBitmap.dispose()}},SpecularBitmapTexture.prototype.pUploadContent=function(texture){var rect=this._specularMap.rect,origin=new Point;this.bitmapData.fillRect(rect,16777215),this._glossMap&&this.bitmapData.copyChannel(this._glossMap,rect,origin,BitmapDataChannel.GREEN,BitmapDataChannel.GREEN),this._specularMap&&this.bitmapData.copyChannel(this._specularMap,rect,origin,BitmapDataChannel.RED,BitmapDataChannel.RED),_super.prototype.pUploadContent.call(this,texture)},SpecularBitmapTexture.prototype.dispose=function(){this.bitmapData.dispose(),this.bitmapData=null},SpecularBitmapTexture}(away.textures.BitmapTexture));textures.SpecularBitmapTexture=SpecularBitmapTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var aglsl;!function(aglsl){var Sampler=function(){function Sampler(){this.lodbias=0,this.dim=0,this.readmode=0,this.special=0,this.wrap=0,this.mipmap=0,this.filter=0}return Sampler}();aglsl.Sampler=Sampler}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Token=function(){function Token(){this.dest=new aglsl.Destination,this.opcode=0,this.a=new aglsl.Destination,this.b=new aglsl.Destination}return Token}();aglsl.Token=Token}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Header=function(){function Header(){this.progid=0,this.version=0,this.type=""}return Header}();aglsl.Header=Header}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var OpLUT=function(){function OpLUT(s,flags,dest,a,b,matrixwidth,matrixheight,ndwm,scaler,dm,lod){this.s=s,this.flags=flags,this.dest=dest,this.a=a,this.b=b,this.matrixwidth=matrixwidth,this.matrixheight=matrixheight,this.ndwm=ndwm,this.scalar=scaler,this.dm=dm,this.lod=lod}return OpLUT}();aglsl.OpLUT=OpLUT}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Description=function(){function Description(){this.regread=[[],[],[],[],[],[],[]],this.regwrite=[[],[],[],[],[],[],[]],this.hasindirect=!1,this.writedepth=!1,this.hasmatrix=!1,this.samplers=[],this.tokens=[],this.header=new aglsl.Header}return Description}();aglsl.Description=Description}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Destination=function(){function Destination(){this.mask=0,this.regnum=0,this.regtype=0,this.dim=0}return Destination}();aglsl.Destination=Destination}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var ContextGL=function(){function ContextGL(){this.enableErrorChecking=!1,this.resources=[],this.driverInfo="Call getter function instead"}return ContextGL.maxvertexconstants=128,ContextGL.maxfragconstants=28,ContextGL.maxtemp=8,ContextGL.maxstreams=8,ContextGL.maxtextures=8,ContextGL.defaultsampler=new aglsl.Sampler,ContextGL}();aglsl.ContextGL=ContextGL}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Mapping=function(){function Mapping(){}return Mapping.agal2glsllut=[new aglsl.OpLUT("%dest = %cast(%a);\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a + %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a - %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a * %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a / %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(1.0) / %a;\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(min(%a,%b));\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(max(%a,%b));\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(fract(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(sqrt(abs(%a)));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(inversesqrt(abs(%a)));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(pow(abs(%a),%b));\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(log2(abs(%a)));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(exp2(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(normalize(vec3( %a ) ));\n",0,!0,!0,!1,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(sin(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(cos(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(cross(vec3(%a),vec3(%b)));\n",0,!0,!0,!0,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec3(%a),vec3(%b)));\n",0,!0,!0,!0,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec4(%a),vec4(%b)));\n",0,!0,!0,!0,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(abs(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a * -1.0);\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(clamp(%a,0.0,1.0));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec3(%a),vec3(%b)));\n",null,!0,!0,!0,3,3,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec4(%a),vec4(%b)));\n",null,!0,!0,!0,4,4,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec4(%a),vec4(%b)));\n",null,!0,!0,!0,4,3,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dFdx(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(dFdx(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("if (float(%a)==float(%b)) {;\n",0,!1,!0,!0,null,null,null,!0,null,null),new aglsl.OpLUT("if (float(%a)!=float(%b)) {;\n",0,!1,!0,!0,null,null,null,!0,null,null),new aglsl.OpLUT("if (float(%a)>=float(%b)) {;\n",0,!1,!0,!0,null,null,null,!0,null,null),new aglsl.OpLUT("if (float(%a)0){var optsi=line.search(/<.*>/g),opts=null;-1!=optsi&&(opts=line.slice(optsi).match(/([\w\.\-\+]+)/gi),line=line.slice(0,optsi));var tokens=line.match(/([\w\.\+\[\]]+)/gi);if(!tokens||tokens.length<1)return line.length>=3&&console.log("Warning: bad line "+linenr+": "+line),void 0;switch(tokens[0]){case"part":this.addHeader(tokens[1],Number(tokens[2]));break;case"endpart":if(!this.cur)throw"Unexpected endpart";return this.cur.data.position=0,this.cur=null,void 0;default:if(!this.cur)return console.log("Warning: bad line "+linenr+": "+line+" (Outside of any part definition)"),void 0;if("comment"==this.cur.name)return;var op=aglsl.assembler.OpcodeMap.map[tokens[0]];if(!op)throw"Bad opcode "+tokens[0]+" "+linenr+": "+line;this.emitOpcode(this.cur,op.opcode);var ti=1;if(op.dest&&"none"!=op.dest){if(!this.emitDest(this.cur,tokens[ti++],op.dest))throw"Bad destination register "+tokens[ti-1]+" "+linenr+": "+line}else this.emitZeroDword(this.cur);if(op.a&&"none"!=op.a.format){if(!this.emitSource(this.cur,tokens[ti++],op.a))throw"Bad source register "+tokens[ti-1]+" "+linenr+": "+line}else this.emitZeroQword(this.cur);if(op.b&&"none"!=op.b.format){if("sampler"==op.b.format){if(!this.emitSampler(this.cur,tokens[ti++],op.b,opts))throw"Bad sampler register "+tokens[ti-1]+" "+linenr+": "+line}else if(!this.emitSource(this.cur,tokens[ti++],op.b))throw"Bad source register "+tokens[ti-1]+" "+linenr+": "+line}else this.emitZeroQword(this.cur)}}},AGALMiniAssembler.prototype.emitHeader=function(pr){switch(pr.data.writeUnsignedByte(160),pr.data.writeUnsignedInt(pr.version),pr.version>=16&&pr.data.writeUnsignedByte(0),pr.data.writeUnsignedByte(161),pr.name){case"fragment":pr.data.writeUnsignedByte(1);break;case"vertex":pr.data.writeUnsignedByte(0);break;case"cpu":pr.data.writeUnsignedByte(2);break;default:pr.data.writeUnsignedByte(255)}},AGALMiniAssembler.prototype.emitOpcode=function(pr,opcode){pr.data.writeUnsignedInt(opcode)},AGALMiniAssembler.prototype.emitZeroDword=function(pr){pr.data.writeUnsignedInt(0)},AGALMiniAssembler.prototype.emitZeroQword=function(pr){pr.data.writeUnsignedInt(0),pr.data.writeUnsignedInt(0)},AGALMiniAssembler.prototype.emitDest=function(pr,token){var reg=token.match(/([fov]?[tpocidavs])(\d*)(\.[xyzw]{1,4})?/i);if(!aglsl.assembler.RegMap.map[reg[1]])return!1;var em={num:reg[2]?reg[2]:0,code:aglsl.assembler.RegMap.map[reg[1]].code,mask:this.stringToMask(reg[3])};return pr.data.writeUnsignedShort(em.num),pr.data.writeUnsignedByte(em.mask),pr.data.writeUnsignedByte(em.code),!0},AGALMiniAssembler.prototype.stringToMask=function(s){if(!s)return 15;var r=0;return-1!=s.indexOf("x")&&(r|=1),-1!=s.indexOf("y")&&(r|=2),-1!=s.indexOf("z")&&(r|=4),-1!=s.indexOf("w")&&(r|=8),r},AGALMiniAssembler.prototype.stringToSwizzle=function(s){if(!s)return 228;var chartoindex={x:0,y:1,z:2,w:3},sw=0;if("."!=s.charAt(0))throw"Missing . for swizzle";return s.length>1&&(sw|=chartoindex[s.charAt(1)]),sw|=s.length>2?chartoindex[s.charAt(2)]<<2:(3&sw)<<2,sw|=s.length>3?chartoindex[s.charAt(3)]<<4:(12&sw)<<2,sw|=s.length>4?chartoindex[s.charAt(4)]<<6:(48&sw)<<2},AGALMiniAssembler.prototype.emitSampler=function(pr,token,opsrc,opts){var reg=token.match(/fs(\d*)/i);if(!reg||!reg[1])return!1;pr.data.writeUnsignedShort(parseInt(reg[1])),pr.data.writeUnsignedByte(0),pr.data.writeUnsignedByte(0);for(var samplerbits=5,sampleroptset=0,i=0;i>o.shift&o.mask)&&console.log("Warning, duplicate sampler option"),sampleroptset|=o.mask<=16&&(bytes.readUnsignedByte(),header.version>>=1),161!=bytes.readUnsignedByte())throw"Bad AGAL: Missing 0xa1 magic byte.";switch(header.progid=bytes.readUnsignedByte(),header.progid){case 1:header.type="fragment";break;case 0:header.type="vertex";break;case 2:header.type="cpu";break;default:header.type=""}for(var desc=new aglsl.Description,tokens=[];bytes.position>4,s.readmode&=15,s.special=bytes.readUnsignedByte(),s.wrap=s.special>>4,s.special&=15,s.mipmap=bytes.readUnsignedByte(),s.filter=s.mipmap>>4,s.mipmap&=15,desc.samplers[s.regnum]=s):(s.indexregtype=bytes.readUnsignedByte(),s.indexselect=bytes.readUnsignedByte(),s.indirectflag=bytes.readUnsignedByte()),s.indirectflag&&(desc.hasindirect=!0),!s.indirectflag&&mh)for(var mhi=0;mh>mhi;mhi++)desc.regread[s.regtype][s.regnum+mhi]=desc.regread[s.regtype][s.regnum]},AGALTokenizer}();aglsl.AGALTokenizer=AGALTokenizer}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var AGLSLParser=function(){function AGLSLParser(){}return AGLSLParser.prototype.parse=function(desc){var header="",body="";header+="precision highp float;\n";var tag=desc.header.type[0];if("vertex"==desc.header.type&&(header+="uniform float yflip;\n"),desc.hasindirect)header+="uniform vec4 "+tag+"carrr["+aglsl.ContextGL.maxvertexconstants+"];\n";else for(var i=0;isl;sl++){var line=" "+lutentry.s;if(desc.tokens[i].dest){if(lutentry.matrixheight){if(1!=(desc.tokens[i].dest.mask>>sl&1))continue;var destregstring=this.regtostring(desc.tokens[i].dest.regtype,desc.tokens[i].dest.regnum,desc,tag),destcaststring="float",destmaskstring=["x","y","z","w"][sl];destregstring+="."+destmaskstring}else{var destcaststring,destmaskstring,destregstring=this.regtostring(desc.tokens[i].dest.regtype,desc.tokens[i].dest.regnum,desc,tag);if(15!=desc.tokens[i].dest.mask){var ndest=0;switch(destmaskstring="",1&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="x"),2&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="y"),4&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="z"),8&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="w"),destregstring+="."+destmaskstring,ndest){case 1:destcaststring="float";break;case 2:destcaststring="vec2";break;case 3:destcaststring="vec3";break;default:throw"Unexpected destination mask"}}else destcaststring="vec4",destmaskstring="xyzw"}line=line.replace("%dest",destregstring),line=line.replace("%cast",destcaststring),line=line.replace("%dm",destmaskstring)}var dwm=15;if(!lutentry.ndwm&&lutentry.dest&&desc.tokens[i].dest&&(dwm=desc.tokens[i].dest.mask),desc.tokens[i].a&&(line=line.replace("%a",this.sourcetostring(desc.tokens[i].a,0,dwm,lutentry.scalar,desc,tag))),desc.tokens[i].b&&(line=line.replace("%b",this.sourcetostring(desc.tokens[i].b,sl,dwm,lutentry.scalar,desc,tag)),5==desc.tokens[i].b.regtype)){var texdim=["2D","Cube","3D"][desc.tokens[i].b.dim],texsize=["vec2","vec3","vec3"][desc.tokens[i].b.dim];line=line.replace("%texdim",texdim),line=line.replace("%texsize",texsize);var texlod="";line=line.replace("%lod",texlod)}body+=line}}return"vertex"==desc.header.type&&(body+=" gl_Position = vec4(outpos.x, outpos.y, outpos.z*2.0 - outpos.w, outpos.w);\n"),desc.writedepth&&(body+=" gl_FragDepth = clamp(tmp_FragDepth,0.0,1.0);\n"),body+="}\n",header+body},AGLSLParser.prototype.regtostring=function(regtype,regnum,desc,tag){switch(regtype){case 0:return"va"+regnum;case 1:return desc.hasindirect&&"vertex"==desc.header.type?"vcarrr["+regnum+"]":tag+"c"+regnum;case 2:return tag+"t"+regnum;case 3:return"vertex"==desc.header.type?"outpos":"gl_FragColor";case 4:return"vi"+regnum;case 5:return"fs"+regnum;case 6:return"tmp_FragDepth";default:throw"Unknown register type"}},AGLSLParser.prototype.sourcetostring=function(s,subline,dwm,isscalar,desc,tag){var r,swiz=["x","y","z","w"];if(s.indirectflag){r="vcarrr[int("+this.regtostring(s.indexregtype,s.regnum,desc,tag)+"."+swiz[s.indexselect]+")";var realofs=subline+s.indexoffset;0>realofs&&(r+=realofs.toString()),realofs>0&&(r+="+"+realofs.toString()),r+="]"}else r=this.regtostring(s.regtype,s.regnum+subline,desc,tag);return 5==s.regtype?r:isscalar?r+"."+swiz[s.swizzle>>0&3]:228==s.swizzle&&15==dwm?r:(r+=".",1&dwm&&(r+=swiz[s.swizzle>>0&3]),2&dwm&&(r+=swiz[s.swizzle>>2&3]),4&dwm&&(r+=swiz[s.swizzle>>4&3]),8&dwm&&(r+=swiz[s.swizzle>>6&3]),r)},AGLSLParser}();aglsl.AGLSLParser=AGLSLParser}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var AGLSLCompiler=function(){function AGLSLCompiler(){}return AGLSLCompiler.prototype.compile=function(programType,source){var data,concatSource,agalMiniAssembler=new aglsl.assembler.AGALMiniAssembler,tokenizer=new aglsl.AGALTokenizer;switch(programType){case"vertex":concatSource="part vertex 1\n"+source+"endpart",agalMiniAssembler.assemble(concatSource),data=agalMiniAssembler.r.vertex.data;break;case"fragment":concatSource="part fragment 1\n"+source+"endpart",agalMiniAssembler.assemble(concatSource),data=agalMiniAssembler.r.fragment.data;break;default:throw"Unknown ContextGLProgramType"}var description=tokenizer.decribeAGALByteArray(data),parser=new aglsl.AGLSLParser;return this.glsl=parser.parse(description),this.glsl},AGLSLCompiler}();aglsl.AGLSLCompiler=AGLSLCompiler}(aglsl||(aglsl={})),away.Debug.THROW_ERRORS=!1,away.Debug.LOG_PI_ERRORS=!1;var away;!function(away){var AwayJS=function(_super){function AwayJS(){_super.call(this)}return __extends(AwayJS,_super),AwayJS}(away.events.EventDispatcher);away.AwayJS=AwayJS}(away||(away={}));
\ No newline at end of file
+var away;!function(away){!function(errors){var Error=function(){function Error(message,id,_name){"undefined"==typeof message&&(message=""),"undefined"==typeof id&&(id=0),"undefined"==typeof _name&&(_name=""),this._errorID=0,this._messsage="",this._name="",this._messsage=message,this._name=name,this._errorID=id}return Object.defineProperty(Error.prototype,"message",{get:function(){return this._messsage},set:function(value){this._messsage=value},enumerable:!0,configurable:!0}),Object.defineProperty(Error.prototype,"name",{get:function(){return this._name},set:function(value){this._name=value},enumerable:!0,configurable:!0}),Object.defineProperty(Error.prototype,"errorID",{get:function(){return this._errorID},enumerable:!0,configurable:!0}),Error}();errors.Error=Error}(away.errors||(away.errors={}));away.errors}(away||(away={}));var __extends=this.__extends||function(d,b){function __(){this.constructor=d}for(var p in b)b.hasOwnProperty(p)&&(d[p]=b[p]);__.prototype=b.prototype,d.prototype=new __},away;!function(away){!function(errors){var ArgumentError=function(_super){function ArgumentError(message,id){"undefined"==typeof message&&(message=null),"undefined"==typeof id&&(id=0),_super.call(this,message||"ArgumentError",id)}return __extends(ArgumentError,_super),ArgumentError}(away.errors.Error);errors.ArgumentError=ArgumentError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var CastError=function(_super){function CastError(message){_super.call(this,message)}return __extends(CastError,_super),CastError}(away.errors.Error);errors.CastError=CastError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var PartialImplementationError=function(_super){function PartialImplementationError(dependency,id){"undefined"==typeof dependency&&(dependency=""),"undefined"==typeof id&&(id=0),_super.call(this,"PartialImplementationError - this function is in development. Required Dependency: "+dependency,id)}return __extends(PartialImplementationError,_super),PartialImplementationError}(away.errors.Error);errors.PartialImplementationError=PartialImplementationError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var AbstractMethodError=function(_super){function AbstractMethodError(message,id){"undefined"==typeof message&&(message=null),"undefined"==typeof id&&(id=0),_super.call(this,message||"An abstract method was called! Either an instance of an abstract class was created, or an abstract method was not overridden by the subclass.",id)}return __extends(AbstractMethodError,_super),AbstractMethodError}(away.errors.Error);errors.AbstractMethodError=AbstractMethodError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var DocumentError=function(_super){function DocumentError(message,id){"undefined"==typeof message&&(message="DocumentError"),"undefined"==typeof id&&(id=0),_super.call(this,message,id)}return __extends(DocumentError,_super),DocumentError.DOCUMENT_DOES_NOT_EXIST="documentDoesNotExist",DocumentError}(away.errors.Error);errors.DocumentError=DocumentError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(errors){var RangeError=function(_super){function RangeError(message,id){"undefined"==typeof message&&(message=null),"undefined"==typeof id&&(id=0),_super.call(this,message||"RangeError",id)}return __extends(RangeError,_super),RangeError}(away.errors.Error);errors.RangeError=RangeError}(away.errors||(away.errors={}));away.errors}(away||(away={}));var away;!function(away){!function(events){var Event=function(){function Event(type){this.type=void 0,this.target=void 0,this.type=type}return Event.prototype.clone=function(){return new Event(this.type)},Event.COMPLETE="complete",Event.OPEN="open",Event.ENTER_FRAME="enterFrame",Event.EXIT_FRAME="exitFrame",Event.RESIZE="resize",Event.ERROR="error",Event.CHANGE="change",Event}();events.Event=Event}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var AssetEvent=function(_super){function AssetEvent(type,asset,prevName){"undefined"==typeof asset&&(asset=null),"undefined"==typeof prevName&&(prevName=null),_super.call(this,type),this._asset=asset,this._prevName=prevName||(this._asset?this._asset.name:null)}return __extends(AssetEvent,_super),Object.defineProperty(AssetEvent.prototype,"asset",{get:function(){return this._asset},enumerable:!0,configurable:!0}),Object.defineProperty(AssetEvent.prototype,"assetPrevName",{get:function(){return this._prevName},enumerable:!0,configurable:!0}),AssetEvent.prototype.clone=function(){return new away.events.AssetEvent(this.type,this.asset,this.assetPrevName)},AssetEvent.ASSET_COMPLETE="assetComplete",AssetEvent.ASSET_RENAME="assetRename",AssetEvent.ASSET_CONFLICT_RESOLVED="assetConflictResolved",AssetEvent.TEXTURE_SIZE_ERROR="textureSizeError",AssetEvent}(away.events.Event);events.AssetEvent=AssetEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var CameraEvent=function(_super){function CameraEvent(type,camera){_super.call(this,type),this._camera=camera}return __extends(CameraEvent,_super),Object.defineProperty(CameraEvent.prototype,"camera",{get:function(){return this._camera},enumerable:!0,configurable:!0}),CameraEvent.PROJECTION_CHANGED="projectionChanged",CameraEvent}(away.events.Event);events.CameraEvent=CameraEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var DisplayObjectEvent=function(_super){function DisplayObjectEvent(type,object){_super.call(this,type),this.object=object}return __extends(DisplayObjectEvent,_super),DisplayObjectEvent.VISIBLITY_UPDATED="visiblityUpdated",DisplayObjectEvent.SCENETRANSFORM_CHANGED="scenetransformChanged",DisplayObjectEvent.SCENE_CHANGED="sceneChanged",DisplayObjectEvent.POSITION_CHANGED="positionChanged",DisplayObjectEvent.ROTATION_CHANGED="rotationChanged",DisplayObjectEvent.SCALE_CHANGED="scaleChanged",DisplayObjectEvent}(away.events.Event);events.DisplayObjectEvent=DisplayObjectEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var EventDispatcher=function(){function EventDispatcher(target){"undefined"==typeof target&&(target=null),this.listeners=new Array,this.target=target||this}return EventDispatcher.prototype.addEventListener=function(type,listener){void 0===this.listeners[type]&&(this.listeners[type]=new Array),-1===this.getEventListenerIndex(type,listener)&&this.listeners[type].push(listener)},EventDispatcher.prototype.removeEventListener=function(type,listener){var index=this.getEventListenerIndex(type,listener);-1!==index&&this.listeners[type].splice(index,1)},EventDispatcher.prototype.dispatchEvent=function(event){var listenerArray=this.listeners[event.type];if(void 0!==listenerArray){var l=listenerArray.length;event.target=this.target;for(var i=0;l>i;i++)listenerArray[i](event)}},EventDispatcher.prototype.getEventListenerIndex=function(type,listener){if(void 0!==this.listeners[type])for(var a=this.listeners[type],l=a.length,i=0;l>i;i++)if(listener==a[i])return i;return-1},EventDispatcher.prototype.hasEventListener=function(type,listener){return null!=listener?-1!==this.getEventListenerIndex(type,listener):void 0!==this.listeners[type]?this.listeners[type].length>0:!1},EventDispatcher}();events.EventDispatcher=EventDispatcher}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var GeometryEvent=function(_super){function GeometryEvent(type,subGeometry){"undefined"==typeof subGeometry&&(subGeometry=null),_super.call(this,type),this._subGeometry=subGeometry}return __extends(GeometryEvent,_super),Object.defineProperty(GeometryEvent.prototype,"subGeometry",{get:function(){return this._subGeometry},enumerable:!0,configurable:!0}),GeometryEvent.prototype.clone=function(){return new GeometryEvent(this.type,this._subGeometry)},GeometryEvent.SUB_GEOMETRY_ADDED="SubGeometryAdded",GeometryEvent.SUB_GEOMETRY_REMOVED="SubGeometryRemoved",GeometryEvent.BOUNDS_INVALID="BoundsInvalid",GeometryEvent}(away.events.Event);events.GeometryEvent=GeometryEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var HTTPStatusEvent=function(_super){function HTTPStatusEvent(type,status){"undefined"==typeof status&&(status=null),_super.call(this,type),this.status=status}return __extends(HTTPStatusEvent,_super),HTTPStatusEvent.HTTP_STATUS="HTTPStatusEvent_HTTP_STATUS",HTTPStatusEvent}(away.events.Event);events.HTTPStatusEvent=HTTPStatusEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var IOErrorEvent=function(_super){function IOErrorEvent(type){_super.call(this,type)}return __extends(IOErrorEvent,_super),IOErrorEvent.IO_ERROR="ioError",IOErrorEvent}(away.events.Event);events.IOErrorEvent=IOErrorEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var ProjectionEvent=function(_super){function ProjectionEvent(type,projection){_super.call(this,type),this._projection=projection}return __extends(ProjectionEvent,_super),Object.defineProperty(ProjectionEvent.prototype,"projection",{get:function(){return this._projection},enumerable:!0,configurable:!0}),ProjectionEvent.MATRIX_CHANGED="matrixChanged",ProjectionEvent}(away.events.Event);events.ProjectionEvent=ProjectionEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var LoaderEvent=function(_super){function LoaderEvent(type,url,content,assets){"undefined"==typeof url&&(url=null),"undefined"==typeof content&&(content=null),"undefined"==typeof assets&&(assets=null),_super.call(this,type),this._url=url,this._content=content,this._assets=assets}return __extends(LoaderEvent,_super),Object.defineProperty(LoaderEvent.prototype,"content",{get:function(){return this._content},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderEvent.prototype,"url",{get:function(){return this._url},enumerable:!0,configurable:!0}),Object.defineProperty(LoaderEvent.prototype,"assets",{get:function(){return this._assets},enumerable:!0,configurable:!0}),LoaderEvent.prototype.clone=function(){return new LoaderEvent(this.type,this._url,this._content,this._assets)},LoaderEvent.RESOURCE_COMPLETE="resourceComplete",LoaderEvent}(away.events.Event);events.LoaderEvent=LoaderEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var ParserEvent=function(_super){function ParserEvent(type,message){"undefined"==typeof message&&(message=""),_super.call(this,type),this._message=message}return __extends(ParserEvent,_super),Object.defineProperty(ParserEvent.prototype,"message",{get:function(){return this._message},enumerable:!0,configurable:!0}),ParserEvent.prototype.clone=function(){return new away.events.ParserEvent(this.type,this.message)},ParserEvent.PARSE_COMPLETE="parseComplete",ParserEvent.PARSE_ERROR="parseError",ParserEvent.READY_FOR_DEPENDENCIES="readyForDependencies",ParserEvent}(away.events.Event);events.ParserEvent=ParserEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var MouseEvent=function(_super){function MouseEvent(type){_super.call(this,type),this._iAllowedToPropagate=!0}return __extends(MouseEvent,_super),Object.defineProperty(MouseEvent.prototype,"bubbles",{get:function(){var doesBubble=this._iAllowedToPropagate;return this._iAllowedToPropagate=!0,doesBubble},enumerable:!0,configurable:!0}),MouseEvent.prototype.stopPropagation=function(){this._iAllowedToPropagate=!1,this._iParentEvent&&this._iParentEvent.stopPropagation()},MouseEvent.prototype.stopImmediatePropagation=function(){this._iAllowedToPropagate=!1,this._iParentEvent&&this._iParentEvent.stopImmediatePropagation()},MouseEvent.prototype.clone=function(){var result=new away.events.MouseEvent(this.type);return result.screenX=this.screenX,result.screenY=this.screenY,result.view=this.view,result.object=this.object,result.materialOwner=this.materialOwner,result.material=this.material,result.uv=this.uv,result.localPosition=this.localPosition,result.localNormal=this.localNormal,result.index=this.index,result.subGeometryIndex=this.subGeometryIndex,result.delta=this.delta,result.ctrlKey=this.ctrlKey,result.shiftKey=this.shiftKey,result._iParentEvent=this,result._iAllowedToPropagate=this._iAllowedToPropagate,result},Object.defineProperty(MouseEvent.prototype,"scenePosition",{get:function(){return this.object.sceneTransform.transformVector(this.localPosition)},enumerable:!0,configurable:!0}),Object.defineProperty(MouseEvent.prototype,"sceneNormal",{get:function(){var sceneNormal=this.object.sceneTransform.deltaTransformVector(this.localNormal);return sceneNormal.normalize(),sceneNormal},enumerable:!0,configurable:!0}),MouseEvent.MOUSE_OVER="mouseOver3d",MouseEvent.MOUSE_OUT="mouseOut3d",MouseEvent.MOUSE_UP="mouseUp3d",MouseEvent.MOUSE_DOWN="mouseDown3d",MouseEvent.MOUSE_MOVE="mouseMove3d",MouseEvent.CLICK="click3d",MouseEvent.DOUBLE_CLICK="doubleClick3d",MouseEvent.MOUSE_WHEEL="mouseWheel3d",MouseEvent}(away.events.Event);events.MouseEvent=MouseEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var MaterialEvent=function(_super){function MaterialEvent(type){_super.call(this,type)}return __extends(MaterialEvent,_super),MaterialEvent.SIZE_CHANGED="sizeChanged",MaterialEvent}(away.events.Event);events.MaterialEvent=MaterialEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var ProgressEvent=function(_super){function ProgressEvent(type){_super.call(this,type)}return __extends(ProgressEvent,_super),ProgressEvent.PROGRESS="progress",ProgressEvent}(away.events.Event);events.ProgressEvent=ProgressEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var RendererEvent=function(_super){function RendererEvent(type){_super.call(this,type)}return __extends(RendererEvent,_super),RendererEvent.VIEWPORT_UPDATED="viewportUpdated",RendererEvent.SCISSOR_UPDATED="scissorUpdated",RendererEvent}(away.events.Event);events.RendererEvent=RendererEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var SceneEvent=function(_super){function SceneEvent(type,displayObject){this.displayObject=displayObject,_super.call(this,type)}return __extends(SceneEvent,_super),SceneEvent.ADDED_TO_SCENE="addedToScene",SceneEvent.REMOVED_FROM_SCENE="removedFromScene",SceneEvent.PARTITION_CHANGED="partitionChanged",SceneEvent}(away.events.Event);events.SceneEvent=SceneEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var StageGLEvent=function(_super){function StageGLEvent(type){_super.call(this,type)}return __extends(StageGLEvent,_super),StageGLEvent.CONTEXTGL_CREATED="contextGLCreated",StageGLEvent.CONTEXTGL_DISPOSED="contextGLDisposed",StageGLEvent.CONTEXTGL_RECREATED="contextGLRecreated",StageGLEvent.VIEWPORT_UPDATED="viewportUpdated",StageGLEvent}(away.events.Event);events.StageGLEvent=StageGLEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var SubGeometryEvent=function(_super){function SubGeometryEvent(type,dataType){"undefined"==typeof dataType&&(dataType=""),_super.call(this,type),this._dataType=dataType}return __extends(SubGeometryEvent,_super),Object.defineProperty(SubGeometryEvent.prototype,"dataType",{get:function(){return this._dataType},enumerable:!0,configurable:!0}),SubGeometryEvent.prototype.clone=function(){return new SubGeometryEvent(this.type,this._dataType)},SubGeometryEvent.INDICES_UPDATED="indicesUpdated",SubGeometryEvent.VERTICES_UPDATED="verticesUpdated",SubGeometryEvent}(away.events.Event);events.SubGeometryEvent=SubGeometryEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(events){var TimerEvent=function(_super){function TimerEvent(type){_super.call(this,type)}return __extends(TimerEvent,_super),TimerEvent.TIMER="timer",TimerEvent.TIMER_COMPLETE="timerComplete",TimerEvent}(away.events.Event);events.TimerEvent=TimerEvent}(away.events||(away.events={}));away.events}(away||(away={}));var away;!function(away){!function(utils){var ByteArrayBase=function(){function ByteArrayBase(){this.position=0,this.length=0,this._mode="",this.Base64Key="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"}return ByteArrayBase.prototype.writeByte=function(){throw"Virtual method"},ByteArrayBase.prototype.readByte=function(){throw"Virtual method"},ByteArrayBase.prototype.writeUnsignedByte=function(){throw"Virtual method"},ByteArrayBase.prototype.readUnsignedByte=function(){throw"Virtual method"},ByteArrayBase.prototype.writeUnsignedShort=function(){throw"Virtual method"},ByteArrayBase.prototype.readUnsignedShort=function(){throw"Virtual method"},ByteArrayBase.prototype.writeUnsignedInt=function(){throw"Virtual method"},ByteArrayBase.prototype.readUnsignedInt=function(){throw"Virtual method"},ByteArrayBase.prototype.writeFloat=function(){throw"Virtual method"},ByteArrayBase.prototype.toFloatBits=function(){throw"Virtual method"},ByteArrayBase.prototype.readFloat=function(){throw"Virtual method"},ByteArrayBase.prototype.fromFloatBits=function(){throw"Virtual method"},ByteArrayBase.prototype.getBytesAvailable=function(){throw new away.errors.AbstractMethodError("ByteArrayBase, getBytesAvailable() not implemented ")},ByteArrayBase.prototype.toString=function(){return"[ByteArray] ( "+this._mode+" ) position="+this.position+" length="+this.length},ByteArrayBase.prototype.compareEqual=function(other,count){(void 0==count||count>this.length-this.position)&&(count=this.length-this.position),count>other.length-other.position&&(count=other.length-other.position);for(var r=!0;r&&count>=4;)count-=4,this.readUnsignedInt()!=other.readUnsignedInt()&&(r=!1);for(;r&&count>=1;)count--,this.readUnsignedByte()!=other.readUnsignedByte()&&(r=!1);var c0;return this.position-=c0-count,other.position-=c0-count,r},ByteArrayBase.prototype.writeBase64String=function(s){for(var i=0;id;d++)sh=lut[x>>(d<<2)&15]+sh;return sh}var oldpos=this.position;this.position=0;for(var nstep=8,i=0;ij&&i+j=3;)b0=getUnsignedByteFunc.apply(self),b1=getUnsignedByteFunc.apply(self),b2=getUnsignedByteFunc.apply(self),enc1=b0>>2,enc2=(3&b0)<<4|b1>>4,enc3=(15&b1)<<2|b2>>6,enc4=63&b2,r+=base64Key.charAt(enc1)+base64Key.charAt(enc2)+base64Key.charAt(enc3)+base64Key.charAt(enc4),count-=3;return 2==count?(b0=getUnsignedByteFunc.apply(self),b1=getUnsignedByteFunc.apply(self),enc1=b0>>2,enc2=(3&b0)<<4|b1>>4,enc3=(15&b1)<<2,r+=base64Key.charAt(enc1)+base64Key.charAt(enc2)+base64Key.charAt(enc3)+"="):1==count&&(b0=getUnsignedByteFunc.apply(self),enc1=b0>>2,enc2=(3&b0)<<4,r+=base64Key.charAt(enc1)+base64Key.charAt(enc2)+"=="),r},ByteArrayBase}();utils.ByteArrayBase=ByteArrayBase}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var ByteArray=function(_super){function ByteArray(){_super.call(this),this.maxlength=0,this._mode="Typed array",this.maxlength=4,this.arraybytes=new ArrayBuffer(this.maxlength),this.unalignedarraybytestemp=new ArrayBuffer(16)}return __extends(ByteArray,_super),ByteArray.prototype.ensureWriteableSpace=function(n){this.ensureSpace(n+this.position)},ByteArray.prototype.setArrayBuffer=function(aBuffer){this.ensureSpace(aBuffer.byteLength),this.length=aBuffer.byteLength;var inInt8AView=new Int8Array(aBuffer),localInt8View=new Int8Array(this.arraybytes,0,this.length);localInt8View.set(inInt8AView),this.position=0},ByteArray.prototype.getBytesAvailable=function(){return this.length-this.position},ByteArray.prototype.ensureSpace=function(n){if(n>this.maxlength){var newmaxlength=n+255&-256,newarraybuffer=new ArrayBuffer(newmaxlength),view=new Uint8Array(this.arraybytes,0,this.length),newview=new Uint8Array(newarraybuffer,0,this.length);newview.set(view),this.arraybytes=newarraybuffer,this.maxlength=newmaxlength}},ByteArray.prototype.writeByte=function(b){this.ensureWriteableSpace(1);var view=new Int8Array(this.arraybytes);view[this.position++]=~~b,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Positon="+this.position+", Length="+this.length;var view=new Int8Array(this.arraybytes);return view[this.position++]},ByteArray.prototype.readBytes=function(bytes,offset,length){"undefined"==typeof offset&&(offset=0),"undefined"==typeof length&&(length=0),null==length&&(length=bytes.length),bytes.ensureWriteableSpace(offset+length);var byteView=new Int8Array(bytes.arraybytes),localByteView=new Int8Array(this.arraybytes);byteView.set(localByteView.subarray(this.position,this.position+length),offset),this.position+=length,length+offset>bytes.length&&(bytes.length+=length+offset-bytes.length)},ByteArray.prototype.writeUnsignedByte=function(b){this.ensureWriteableSpace(1);var view=new Uint8Array(this.arraybytes);view[this.position++]=255&~~b,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readUnsignedByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Positon="+this.position+", Length="+this.length;var view=new Uint8Array(this.arraybytes);return view[this.position++]},ByteArray.prototype.writeUnsignedShort=function(b){if(this.ensureWriteableSpace(2),0==(1&this.position)){var view=new Uint16Array(this.arraybytes);view[this.position>>1]=65535&~~b}else{var view=new Uint16Array(this.unalignedarraybytestemp,0,1);view[0]=65535&~~b;var view2=new Uint8Array(this.arraybytes,this.position,2),view3=new Uint8Array(this.unalignedarraybytestemp,0,2);view2.set(view3)}this.position+=2,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readUTFBytes=function(len){for(var value="",max=this.position+len,data=new DataView(this.arraybytes);this.positionc){if(0==c)break;value+=String.fromCharCode(c)}else if(224>c)value+=String.fromCharCode((63&c)<<6|127&data.getUint8(this.position++));else if(240>c){var c2=data.getUint8(this.position++);value+=String.fromCharCode((31&c)<<12|(127&c2)<<6|127&data.getUint8(this.position++))}else{var c2=data.getUint8(this.position++),c3=data.getUint8(this.position++);value+=String.fromCharCode((15&c)<<18|(127&c2)<<12|c3<<6&127|127&data.getUint8(this.position++))}}return value},ByteArray.prototype.readInt=function(){var data=new DataView(this.arraybytes),int=data.getInt32(this.position,!0);return this.position+=4,int},ByteArray.prototype.readShort=function(){var data=new DataView(this.arraybytes),short=data.getInt16(this.position,!0);return this.position+=2,short},ByteArray.prototype.readDouble=function(){var data=new DataView(this.arraybytes),double=data.getFloat64(this.position,!0);return this.position+=8,double},ByteArray.prototype.readUnsignedShort=function(){if(this.position>this.length+2)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;if(0==(1&this.position)){var view=new Uint16Array(this.arraybytes),pa=this.position>>1;return this.position+=2,view[pa]}var view=new Uint16Array(this.unalignedarraybytestemp,0,1),view2=new Uint8Array(this.arraybytes,this.position,2),view3=new Uint8Array(this.unalignedarraybytestemp,0,2);return view3.set(view2),this.position+=2,view[0]},ByteArray.prototype.writeUnsignedInt=function(b){if(this.ensureWriteableSpace(4),0==(3&this.position)){var view=new Uint32Array(this.arraybytes);view[this.position>>2]=4294967295&~~b}else{var view=new Uint32Array(this.unalignedarraybytestemp,0,1);view[0]=4294967295&~~b;var view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);view2.set(view3)}this.position+=4,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readUnsignedInt=function(){if(this.position>this.length+4)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;if(0==(3&this.position)){var view=new Uint32Array(this.arraybytes),pa=this.position>>2;return this.position+=4,view[pa]}var view=new Uint32Array(this.unalignedarraybytestemp,0,1),view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);return view3.set(view2),this.position+=4,view[0]},ByteArray.prototype.writeFloat=function(b){if(this.ensureWriteableSpace(4),0==(3&this.position)){var view=new Float32Array(this.arraybytes);view[this.position>>2]=b}else{var view=new Float32Array(this.unalignedarraybytestemp,0,1);view[0]=b;var view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);view2.set(view3)}this.position+=4,this.position>this.length&&(this.length=this.position)},ByteArray.prototype.readFloat=function(){if(this.position>this.length+4)throw"ByteArray out of bounds read. Positon="+this.position+", Length="+this.length;if(0==(3&this.position)){var view=new Float32Array(this.arraybytes),pa=this.position>>2;return this.position+=4,view[pa]}var view=new Float32Array(this.unalignedarraybytestemp,0,1),view2=new Uint8Array(this.arraybytes,this.position,4),view3=new Uint8Array(this.unalignedarraybytestemp,0,4);return view3.set(view2),this.position+=4,view[0]},ByteArray}(away.utils.ByteArrayBase);utils.ByteArray=ByteArray}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var ByteArrayBuffer=function(_super){function ByteArrayBuffer(){_super.call(this),this._bytes=[],this._mode="Array"}return __extends(ByteArrayBuffer,_super),ByteArrayBuffer.prototype.writeByte=function(b){var bi=~~b;this._bytes[this.position++]=bi,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;return this._bytes[this.position++]},ByteArrayBuffer.prototype.writeUnsignedByte=function(b){var bi=~~b;this._bytes[this.position++]=255&bi,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readUnsignedByte=function(){if(this.position>=this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;return this._bytes[this.position++]},ByteArrayBuffer.prototype.writeUnsignedShort=function(b){var bi=~~b;this._bytes[this.position++]=255&bi,this._bytes[this.position++]=bi>>8&255,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readUnsignedShort=function(){if(this.position+2>this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;var r=this._bytes[this.position]|this._bytes[this.position+1]<<8;return this.position+=2,r},ByteArrayBuffer.prototype.writeUnsignedInt=function(b){var bi=~~b;this._bytes[this.position++]=255&bi,this._bytes[this.position++]=bi>>>8&255,this._bytes[this.position++]=bi>>>16&255,this._bytes[this.position++]=bi>>>24&255,this.position>this.length&&(this.length=this.position)},ByteArrayBuffer.prototype.readUnsignedInt=function(){if(this.position+4>this.length)throw"ByteArray out of bounds read. Position="+this.position+", Length="+this.length;var r=this._bytes[this.position]|this._bytes[this.position+1]<<8|this._bytes[this.position+2]<<16|this._bytes[this.position+3]<<24;return this.position+=4,r>>>0},ByteArrayBuffer.prototype.writeFloat=function(b){this.writeUnsignedInt(this.toFloatBits(Number(b)))},ByteArrayBuffer.prototype.toFloatBits=function(x){if(0==x)return 0;var sign=0;0>x?(x=-x,sign=1):sign=0;var exponent=Math.log(x)/Math.log(2);exponent=Math.floor(exponent),x*=Math.pow(2,23-exponent);var mantissa=Math.floor(x)-8388608;return exponent+=127,sign<<31>>>0|exponent<<23|mantissa},ByteArrayBuffer.prototype.readFloat=function(){return this.fromFloatBits(this.readUnsignedInt())},ByteArrayBuffer.prototype.fromFloatBits=function(x){if(0==x)return 0;var exponent=x>>>23&255,mantissa=8388607&x|8388608,y=Math.pow(2,exponent-127-23)*mantissa;return x>>>31!=0&&(y=-y),y},ByteArrayBuffer}(away.utils.ByteArrayBase);utils.ByteArrayBuffer=ByteArrayBuffer}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var ColorUtils=function(){function ColorUtils(){}return ColorUtils.float32ColorToARGB=function(float32Color){var a=(4278190080&float32Color)>>>24,r=(16711680&float32Color)>>>16,g=(65280&float32Color)>>>8,b=255&float32Color,result=[a,r,g,b];return result},ColorUtils.componentToHex=function(c){var hex=c.toString(16);return 1==hex.length?"0"+hex:hex},ColorUtils.RGBToHexString=function(argb){return"#"+ColorUtils.componentToHex(argb[1])+ColorUtils.componentToHex(argb[2])+ColorUtils.componentToHex(argb[3])},ColorUtils.ARGBToHexString=function(argb){return"#"+ColorUtils.componentToHex(argb[0])+ColorUtils.componentToHex(argb[1])+ColorUtils.componentToHex(argb[2])+ColorUtils.componentToHex(argb[3])},ColorUtils}();utils.ColorUtils=ColorUtils}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var Cast=function(){function Cast(){}return Cast.string=function(data){return"function"==typeof data&&(data=new data),"string"==typeof data?data:data},Cast.byteArray=function(data){return"function"==typeof data&&(data=new data),data instanceof away.utils.ByteArray?data:data},Cast.isHex=function(str){for(var length=str.length,i=0;length>i;++i)if(-1==this._hexChars.indexOf(str.charAt(i)))return!1;return!0},Cast.tryColor=function(data){if("number"==typeof data)return Math.floor(data);if("string"==typeof data){if("random"==data)return Math.floor(16777216*Math.random());if(null==this._colorNames&&(this._colorNames=new Object,this._colorNames.steelblue=4620980,this._colorNames.royalblue=267920,this._colorNames.cornflowerblue=6591981,this._colorNames.lightsteelblue=11584734,this._colorNames.mediumslateblue=8087790,this._colorNames.slateblue=6970061,this._colorNames.darkslateblue=4734347,this._colorNames.midnightblue=1644912,this._colorNames.navy=128,this._colorNames.darkblue=139,this._colorNames.mediumblue=205,this._colorNames.blue=255,this._colorNames.dodgerblue=2003199,this._colorNames.deepskyblue=49151,this._colorNames.lightskyblue=8900346,this._colorNames.skyblue=8900331,this._colorNames.lightblue=11393254,this._colorNames.powderblue=11591910,this._colorNames.azure=15794175,this._colorNames.lightcyan=14745599,this._colorNames.paleturquoise=11529966,this._colorNames.mediumturquoise=4772300,this._colorNames.lightseagreen=2142890,this._colorNames.darkcyan=35723,this._colorNames.teal=32896,this._colorNames.cadetblue=6266528,this._colorNames.darkturquoise=52945,this._colorNames.aqua=65535,this._colorNames.cyan=65535,this._colorNames.turquoise=4251856,this._colorNames.aquamarine=8388564,this._colorNames.mediumaquamarine=6737322,this._colorNames.darkseagreen=9419919,this._colorNames.mediumseagreen=3978097,this._colorNames.seagreen=3050327,this._colorNames.darkgreen=25600,this._colorNames.green=32768,this._colorNames.forestgreen=2263842,this._colorNames.limegreen=3329330,this._colorNames.lime=65280,this._colorNames.chartreuse=8388352,this._colorNames.lawngreen=8190976,this._colorNames.greenyellow=11403055,this._colorNames.yellowgreen=10145074,this._colorNames.palegreen=10025880,this._colorNames.lightgreen=9498256,this._colorNames.springgreen=65407,this._colorNames.mediumspringgreen=64154,this._colorNames.darkolivegreen=5597999,this._colorNames.olivedrab=7048739,this._colorNames.olive=8421376,this._colorNames.darkkhaki=12433259,this._colorNames.darkgoldenrod=12092939,this._colorNames.goldenrod=14329120,this._colorNames.gold=16766720,this._colorNames.yellow=16776960,this._colorNames.khaki=15787660,this._colorNames.palegoldenrod=15657130,this._colorNames.blanchedalmond=16772045,this._colorNames.moccasin=16770229,this._colorNames.wheat=16113331,this._colorNames.navajowhite=16768685,this._colorNames.burlywood=14596231,this._colorNames.tan=13808780,this._colorNames.rosybrown=12357519,this._colorNames.sienna=10506797,this._colorNames.saddlebrown=9127187,this._colorNames.chocolate=13789470,this._colorNames.peru=13468991,this._colorNames.sandybrown=16032864,this._colorNames.darkred=9109504,this._colorNames.maroon=8388608,this._colorNames.brown=10824234,this._colorNames.firebrick=11674146,this._colorNames.indianred=13458524,this._colorNames.lightcoral=15761536,this._colorNames.salmon=16416882,this._colorNames.darksalmon=15308410,this._colorNames.lightsalmon=16752762,this._colorNames.coral=16744272,this._colorNames.tomato=16737095,this._colorNames.darkorange=16747520,this._colorNames.orange=16753920,this._colorNames.orangered=16729344,this._colorNames.crimson=14423100,this._colorNames.red=16711680,this._colorNames.deeppink=16716947,this._colorNames.fuchsia=16711935,this._colorNames.magenta=16711935,this._colorNames.hotpink=16738740,this._colorNames.lightpink=16758465,this._colorNames.pink=16761035,this._colorNames.palevioletred=14381203,this._colorNames.mediumvioletred=13047173,this._colorNames.purple=8388736,this._colorNames.darkmagenta=9109643,this._colorNames.mediumpurple=9662683,this._colorNames.blueviolet=9055202,this._colorNames.indigo=4915330,this._colorNames.darkviolet=9699539,this._colorNames.darkorchid=10040012,this._colorNames.mediumorchid=12211667,this._colorNames.orchid=14315734,this._colorNames.violet=15631086,this._colorNames.plum=14524637,this._colorNames.thistle=14204888,this._colorNames.lavender=15132410,this._colorNames.ghostwhite=16316671,this._colorNames.aliceblue=15792383,this._colorNames.mintcream=16121850,this._colorNames.honeydew=15794160,this._colorNames.lightgoldenrodyellow=16448210,this._colorNames.lemonchiffon=16775885,this._colorNames.cornsilk=16775388,this._colorNames.lightyellow=16777184,this._colorNames.ivory=16777200,this._colorNames.floralwhite=16775920,this._colorNames.linen=16445670,this._colorNames.oldlace=16643558,this._colorNames.antiquewhite=16444375,this._colorNames.bisque=16770244,this._colorNames.peachpuff=16767673,this._colorNames.papayawhip=16773077,this._colorNames.beige=16119260,this._colorNames.seashell=16774638,this._colorNames.lavenderblush=16773365,this._colorNames.mistyrose=16770273,this._colorNames.snow=16775930,this._colorNames.white=16777215,this._colorNames.whitesmoke=16119285,this._colorNames.gainsboro=14474460,this._colorNames.lightgrey=13882323,this._colorNames.silver=12632256,this._colorNames.darkgrey=11119017,this._colorNames.grey=8421504,this._colorNames.lightslategrey=7833753,this._colorNames.slategrey=7372944,this._colorNames.dimgrey=6908265,this._colorNames.darkslategrey=3100495,this._colorNames.black=0,this._colorNames.transparent=4278190080),null!=this._colorNames[data])return this._colorNames[data];
+if(6==data.length&&this.isHex(data))return parseInt("0x"+data)}return null},Cast.color=function(data){var result=this.tryColor(data);if(null==result)throw new away.errors.CastError("Can't cast to color: "+data);return result},Cast.tryClass=function(name){if(this._notClasses[name])return name;var result=this._classes[name];if(null!=result)return result;try{return result=window[name],this._classes[name]=result,result}catch(e){}return this._notClasses[name]=!0,name},Cast.bitmapData=function(data){if(null==data)return null;if("string"==typeof data&&(data=this.tryClass(data)),"function"==typeof data)try{data=new data}catch(e){data=new data(0,0)}if(data instanceof away.base.BitmapData)return data;if(data instanceof away.textures.ImageTexture&&(data=data.htmlImageElement),data instanceof HTMLImageElement){var imageElement=data,bitmapData=new away.base.BitmapData(imageElement.width,imageElement.height,!0,0);return bitmapData.draw(imageElement),bitmapData}throw new away.errors.CastError("Can't cast to BitmapData: "+data)},Cast.bitmapTexture=function(data){if(null==data)return null;if("string"==typeof data&&(data=this.tryClass(data)),"function"==typeof data)try{data=new data}catch(e){data=new data(0,0)}if(data instanceof away.textures.BitmapTexture)return data;try{var bmd=Cast.bitmapData(data);return new away.textures.BitmapTexture(bmd)}catch(e){}throw new away.errors.CastError("Can't cast to BitmapTexture: "+data)},Cast._hexChars="0123456789abcdefABCDEF",Cast._notClasses=new Object,Cast._classes=new Object,Cast}();utils.Cast=Cast}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var CSS=function(){function CSS(){}return CSS.setCanvasSize=function(canvas,width,height){canvas.style.width=width+"px",canvas.style.height=height+"px",canvas.width=width,canvas.height=height},CSS.setCanvasWidth=function(canvas,width){canvas.style.width=width+"px",canvas.width=width},CSS.setCanvasHeight=function(canvas,height){canvas.style.height=height+"px",canvas.height=height},CSS.setCanvasX=function(canvas,x){canvas.style.position="absolute",canvas.style.left=x+"px"},CSS.setCanvasY=function(canvas,y){canvas.style.position="absolute",canvas.style.top=y+"px"},CSS.getCanvasVisibility=function(canvas){return"visible"==canvas.style.visibility},CSS.setCanvasVisibility=function(canvas,visible){canvas.style.visibility=visible?"visible":"hidden"},CSS.setCanvasAlpha=function(canvas,alpha){var context=canvas.getContext("2d");context.globalAlpha=alpha},CSS.setCanvasPosition=function(canvas,x,y,absolute){"undefined"==typeof absolute&&(absolute=!1),canvas.style.position=absolute?"absolute":"relative",canvas.style.left=x+"px",canvas.style.top=y+"px"},CSS}();utils.CSS=CSS}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){var Debug=function(){function Debug(){}return Debug.breakpoint=function(){away.Debug["break"]()},Debug.throwPIROnKeyWordOnly=function(str,enable){"undefined"==typeof enable&&(enable=!0),away.Debug.keyword=enable?str:null},Debug.throwPIR=function(clss,fnc,msg){if(Debug.logPIR("PartialImplementationError "+clss,fnc,msg),Debug.THROW_ERRORS){if(away.Debug.keyword){var e=clss+fnc+msg;if(-1==e.indexOf(away.Debug.keyword))return}throw new away.errors.PartialImplementationError(clss+"."+fnc+": "+msg)}},Debug.logPIR=function(clss,fnc,msg){"undefined"==typeof msg&&(msg=""),Debug.LOG_PI_ERRORS&&console.log(clss+"."+fnc+": "+msg)},Debug.log=function(){for(var args=[],_i=0;_i=1&&d<=TextureUtils.MAX_SIZE&&TextureUtils.isPowerOfTwo(d)},TextureUtils.isPowerOfTwo=function(value){return value?(value&-value)==value:!1},TextureUtils.getBestPowerOf2=function(value){for(var p=1;value>p;)p<<=1;return p>TextureUtils.MAX_SIZE&&(p=TextureUtils.MAX_SIZE),p},TextureUtils.MAX_SIZE=2048,TextureUtils}();utils.TextureUtils=TextureUtils}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(utils){var Timer=function(_super){function Timer(delay,repeatCount){if("undefined"==typeof repeatCount&&(repeatCount=0),_super.call(this),this._repeatCount=0,this._currentCount=0,this._running=!1,this._delay=delay,this._repeatCount=repeatCount,isNaN(delay)||0>delay)throw new away.errors.Error("Delay is negative or not a number")}return __extends(Timer,_super),Object.defineProperty(Timer.prototype,"currentCount",{get:function(){return this._currentCount},enumerable:!0,configurable:!0}),Object.defineProperty(Timer.prototype,"delay",{get:function(){return this._delay},set:function(value){this._delay=value,this._running&&(this.stop(),this.start())},enumerable:!0,configurable:!0}),Object.defineProperty(Timer.prototype,"repeatCount",{get:function(){return this._repeatCount},set:function(value){this._repeatCount=value},enumerable:!0,configurable:!0}),Timer.prototype.reset=function(){this._running&&this.stop(),this._currentCount=0},Object.defineProperty(Timer.prototype,"running",{get:function(){return this._running},enumerable:!0,configurable:!0}),Timer.prototype.start=function(){var _this=this;this._running=!0,clearInterval(this._iid),this._iid=setInterval(function(){return _this.tick()},this._delay)},Timer.prototype.stop=function(){this._running=!1,clearInterval(this._iid)},Timer.prototype.tick=function(){this._currentCount++,this._repeatCount>0&&this._currentCount>=this._repeatCount?(this.stop(),this.dispatchEvent(new away.events.TimerEvent(away.events.TimerEvent.TIMER)),this.dispatchEvent(new away.events.TimerEvent(away.events.TimerEvent.TIMER_COMPLETE))):this.dispatchEvent(new away.events.TimerEvent(away.events.TimerEvent.TIMER))},Timer}(away.events.EventDispatcher);utils.Timer=Timer}(away.utils||(away.utils={}));away.utils}(away||(away={}));var away;!function(away){!function(parsers){var ParserBase=function(_super){function ParserBase(format){_super.call(this),this._materialMode=0,this._dataFormat=format,this._dependencies=new Array,this._pOnIntervalDelegate=away.utils.Delegate.create(this,this._pOnInterval)}return __extends(ParserBase,_super),ParserBase.supportsType=function(){throw new away.errors.AbstractMethodError},Object.defineProperty(ParserBase.prototype,"content",{get:function(){return this._pContent},enumerable:!0,configurable:!0}),ParserBase.prototype.isBitmapDataValid=function(bitmapData){var isValid=away.utils.TextureUtils.isBitmapDataValid(bitmapData);return isValid||console.log(">> Bitmap loaded is not having power of 2 dimensions or is higher than 2048"),isValid},Object.defineProperty(ParserBase.prototype,"parsingFailure",{get:function(){return this._parsingFailure},set:function(b){this._parsingFailure=b},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"parsingPaused",{get:function(){return this._parsingPaused},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"parsingComplete",{get:function(){return this._parsingComplete},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"materialMode",{get:function(){return this._materialMode},set:function(newMaterialMode){this._materialMode=newMaterialMode},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"data",{get:function(){return this._data},enumerable:!0,configurable:!0}),Object.defineProperty(ParserBase.prototype,"dataFormat",{get:function(){return this._dataFormat},enumerable:!0,configurable:!0}),ParserBase.prototype.parseAsync=function(data,frameLimit){"undefined"==typeof frameLimit&&(frameLimit=30),this._data=data,this._pStartParsing(frameLimit)},Object.defineProperty(ParserBase.prototype,"dependencies",{get:function(){return this._dependencies},enumerable:!0,configurable:!0}),ParserBase.prototype._iResolveDependency=function(){throw new away.errors.AbstractMethodError},ParserBase.prototype._iResolveDependencyFailure=function(){throw new away.errors.AbstractMethodError},ParserBase.prototype._iResolveDependencyName=function(resourceDependency,asset){return asset.name},ParserBase.prototype._iResumeParsingAfterDependencies=function(){this._parsingPaused=!1,this._timer&&this._timer.start()},ParserBase.prototype._pFinalizeAsset=function(asset,name){"undefined"==typeof name&&(name=null);null!=name&&(asset.name=name),asset.name||(asset.name=asset.assetType),this.dispatchEvent(new away.events.AssetEvent(away.events.AssetEvent.ASSET_COMPLETE,asset))},ParserBase.prototype._pProceedParsing=function(){throw new away.errors.AbstractMethodError},ParserBase.prototype._pDieWithError=function(message){"undefined"==typeof message&&(message="Unknown parsing error"),this._timer&&(this._timer.removeEventListener(away.events.TimerEvent.TIMER,this._pOnIntervalDelegate),this._timer.stop(),this._timer=null),this.dispatchEvent(new away.events.ParserEvent(away.events.ParserEvent.PARSE_ERROR,message))},ParserBase.prototype._pAddDependency=function(id,req,retrieveAsRawData,data,suppressErrorEvents){"undefined"==typeof retrieveAsRawData&&(retrieveAsRawData=!1),"undefined"==typeof data&&(data=null),"undefined"==typeof suppressErrorEvents&&(suppressErrorEvents=!1);var dependency=new away.parsers.ResourceDependency(id,req,data,null,this,retrieveAsRawData,suppressErrorEvents);return this._dependencies.push(dependency),dependency},ParserBase.prototype._pPauseAndRetrieveDependencies=function(){this._timer&&this._timer.stop(),this._parsingPaused=!0,this.dispatchEvent(new away.events.ParserEvent(away.events.ParserEvent.READY_FOR_DEPENDENCIES))},ParserBase.prototype._pHasTime=function(){return away.utils.getTimer()-this._lastFrameTimei;i++)byteStr+=String.fromCharCode(bytes[i]);var base64Image=window.btoa(byteStr),str="data:image/png;base64,"+base64Image,img=new Image;return img.src=str,img},ParserUtils.byteArrayToImage=function(data){for(var byteStr="",bytes=new Uint8Array(data.arraybytes),len=bytes.byteLength,i=0;len>i;i++)byteStr+=String.fromCharCode(bytes[i]);var base64Image=window.btoa(byteStr),str="data:image/png;base64,"+base64Image,img=new Image;return img.src=str,img},ParserUtils.blobToImage=function(data){var URLObj=window.URL||window.webkitURL,src=URLObj.createObjectURL(data),img=new Image;return img.src=src,img},ParserUtils.toByteArray=function(data){var b=new away.utils.ByteArray;return b.setArrayBuffer(data),b},ParserUtils.toString=function(data,length){"undefined"==typeof length&&(length=0);var s=data;if(null!=s.substr)return s.substr(0,s.length);if(data instanceof away.utils.ByteArray){var ba=data;return ba.position=0,ba.readUTFBytes(Math.min(ba.getBytesAvailable(),length))}return null},ParserUtils}();parsers.ParserUtils=ParserUtils}(away.parsers||(away.parsers={}));away.parsers}(away||(away={}));var away;!function(away){!function(parsers){var ResourceDependency=function(){function ResourceDependency(id,request,data,parser,parentParser,retrieveAsRawData,suppressAssetEvents){"undefined"==typeof retrieveAsRawData&&(retrieveAsRawData=!1),"undefined"==typeof suppressAssetEvents&&(suppressAssetEvents=!1),this._id=id,this._request=request,this._data=data,this._parser=parser,this._parentParser=parentParser,this._retrieveAsRawData=retrieveAsRawData,this._suppressAssetEvents=suppressAssetEvents,this._assets=new Array,this._dependencies=new Array}return Object.defineProperty(ResourceDependency.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"request",{get:function(){return this._request},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"data",{get:function(){return this._data},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"parser",{get:function(){return this._parser},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"parentParser",{get:function(){return this._parentParser},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"retrieveAsRawData",{get:function(){return this._retrieveAsRawData},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"suppresAssetEvents",{get:function(){return this._suppressAssetEvents},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"assets",{get:function(){return this._assets},enumerable:!0,configurable:!0}),Object.defineProperty(ResourceDependency.prototype,"dependencies",{get:function(){return this._dependencies},enumerable:!0,configurable:!0}),ResourceDependency.prototype._iSetData=function(data){this._data=data},ResourceDependency.prototype._iSetParser=function(parser){this._parser=parser},ResourceDependency.prototype.resolve=function(){this._parentParser&&this._parentParser._iResolveDependency(this)},ResourceDependency.prototype.resolveFailure=function(){this._parentParser&&this._parentParser._iResolveDependencyFailure(this)},ResourceDependency.prototype.resolveName=function(asset){return this._parentParser?this._parentParser._iResolveDependencyName(this,asset):asset.name},ResourceDependency}();parsers.ResourceDependency=ResourceDependency}(away.parsers||(away.parsers={}));away.parsers}(away||(away={}));var away;!function(away){!function(library){var IDUtil=function(){function IDUtil(){}return IDUtil.createUID=function(){var i,j,uid=new Array(36),index=0;for(i=0;8>i;i++)uid[index++]=IDUtil.ALPHA_CHAR_CODES[Math.floor(16*Math.random())];for(i=0;3>i;i++)for(uid[index++]=45,j=0;4>j;j++)uid[index++]=IDUtil.ALPHA_CHAR_CODES[Math.floor(16*Math.random())];uid[index++]=45;var time=(new Date).getTime(),timeString=("0000000"+time.toString(16).toUpperCase()).substr(-8);for(i=0;8>i;i++)uid[index++]=timeString.charCodeAt(i);for(i=0;4>i;i++)uid[index++]=IDUtil.ALPHA_CHAR_CODES[Math.floor(16*Math.random())];return String.fromCharCode.apply(null,uid)},IDUtil.ALPHA_CHAR_CODES=[48,49,50,51,52,53,54,55,56,57,65,66,67,68,69,70],IDUtil}();library.IDUtil=IDUtil}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var NamedAssetBase=function(_super){function NamedAssetBase(name){"undefined"==typeof name&&(name=null),_super.call(this),this._id=(NamedAssetBase.ID_COUNT++).toString(),null==name&&(name="null"),this._name=name,this._originalName=name,this.updateFullPath()}return __extends(NamedAssetBase,_super),Object.defineProperty(NamedAssetBase.prototype,"assetType",{get:function(){throw new away.errors.AbstractMethodError},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"originalName",{get:function(){return this._originalName},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"id",{get:function(){return this._id},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"name",{get:function(){return this._name},set:function(val){var prev;prev=this._name,this._name=val,null==this._name&&(this._name="null"),this.updateFullPath(),this.dispatchEvent(new away.events.AssetEvent(away.events.AssetEvent.ASSET_RENAME,this,prev))},enumerable:!0,configurable:!0}),NamedAssetBase.prototype.dispose=function(){throw new away.errors.AbstractMethodError},Object.defineProperty(NamedAssetBase.prototype,"assetNamespace",{get:function(){return this._namespace},enumerable:!0,configurable:!0}),Object.defineProperty(NamedAssetBase.prototype,"assetFullPath",{get:function(){return this._full_path},enumerable:!0,configurable:!0}),NamedAssetBase.prototype.assetPathEquals=function(name,ns){return this._name==name&&(!ns||this._namespace==ns)},NamedAssetBase.prototype.resetAssetPath=function(name,ns,overrideOriginal){"undefined"==typeof ns&&(ns=null),"undefined"==typeof overrideOriginal&&(overrideOriginal=!0),this._name=name?name:"null",this._namespace=ns?ns:NamedAssetBase.DEFAULT_NAMESPACE,overrideOriginal&&(this._originalName=this._name),this.updateFullPath()},NamedAssetBase.prototype.updateFullPath=function(){this._full_path=[this._namespace,this._name]},NamedAssetBase.ID_COUNT=0,NamedAssetBase.DEFAULT_NAMESPACE="default",NamedAssetBase}(away.events.EventDispatcher);library.NamedAssetBase=NamedAssetBase}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var AssetType=function(){function AssetType(){}return AssetType.ANIMATION_NODE="animationNode",AssetType.ANIMATION_SET="animationSet",AssetType.ANIMATION_STATE="animationState",AssetType.ANIMATOR="animator",AssetType.BILLBOARD="billboard",AssetType.CAMERA="camera",AssetType.CONTAINER="container",AssetType.EFFECTS_METHOD="effectsMethod",AssetType.GEOMETRY="geometry",AssetType.LINE_SEGMENT="lineSegment",AssetType.LIGHT="light",AssetType.LIGHT_PICKER="lightPicker",AssetType.MATERIAL="material",AssetType.MESH="mesh",AssetType.TRIANGLE_SUB_MESH="triangleSubMesh",AssetType.LINE_SUB_MESH="lineSubMesh",AssetType.PRIMITIVE_PREFAB="primitivePrefab",AssetType.SHADOW_MAP_METHOD="shadowMapMethod",AssetType.SKELETON="skeleton",AssetType.SKELETON_POSE="skeletonPose",AssetType.SKYBOX="skybox",AssetType.STATE_TRANSITION="stateTransition",AssetType.TEXTURE="texture",AssetType.TEXTURE_PROJECTOR="textureProjector",AssetType}();library.AssetType=AssetType}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var AssetLibraryIterator=function(){function AssetLibraryIterator(assets,assetTypeFilter,namespaceFilter,filterFunc){this._assets=assets,this.filter(assetTypeFilter,namespaceFilter,filterFunc)}return Object.defineProperty(AssetLibraryIterator.prototype,"currentAsset",{get:function(){return this._idxc;c++)asset=this._assets[c],assetTypeFilter&&asset.assetType!=assetTypeFilter||namespaceFilter&&asset.assetNamespace!=namespaceFilter||(null==filterFunc||filterFunc(asset))&&(this._filtered[idx++]=asset)}else this._filtered=this._assets},AssetLibraryIterator}();library.AssetLibraryIterator=AssetLibraryIterator}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ConflictStrategyBase=function(){function ConflictStrategyBase(){}return ConflictStrategyBase.prototype.resolveConflict=function(){throw new away.errors.AbstractMethodError},ConflictStrategyBase.prototype.create=function(){throw new away.errors.AbstractMethodError},ConflictStrategyBase.prototype._pUpdateNames=function(ns,nonConflictingName,oldAsset,newAsset,assetsDictionary,precedence){var loser_prev_name,winner,loser;winner=precedence===away.library.ConflictPrecedence.FAVOR_NEW?newAsset:oldAsset,loser=precedence===away.library.ConflictPrecedence.FAVOR_NEW?oldAsset:newAsset,loser_prev_name=loser.name,assetsDictionary[winner.name]=winner,assetsDictionary[nonConflictingName]=loser,loser.resetAssetPath(nonConflictingName,ns,!1),loser.dispatchEvent(new away.events.AssetEvent(away.events.AssetEvent.ASSET_CONFLICT_RESOLVED,loser,loser_prev_name))},ConflictStrategyBase}();library.ConflictStrategyBase=ConflictStrategyBase}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var NumSuffixConflictStrategy=function(_super){function NumSuffixConflictStrategy(separator){"undefined"==typeof separator&&(separator="."),_super.call(this),this._separator=separator,this._next_suffix={}}return __extends(NumSuffixConflictStrategy,_super),NumSuffixConflictStrategy.prototype.resolveConflict=function(changedAsset,oldAsset,assetsDictionary,precedence){var orig,new_name,base,suffix;orig=changedAsset.name,orig.indexOf(this._separator)>=0?(base=orig.substring(0,orig.lastIndexOf(this._separator)),suffix=parseInt(orig.substring(base.length-1)),isNaN(suffix)&&(base=orig,suffix=0)):(base=orig,suffix=0),0==suffix&&this._next_suffix.hasOwnProperty(base)&&(suffix=this._next_suffix[base]);
+do suffix++,new_name=base.concat(this._separator,suffix.toString());while(assetsDictionary.hasOwnProperty(new_name));this._next_suffix[base]=suffix,this._pUpdateNames(oldAsset.assetNamespace,new_name,oldAsset,changedAsset,assetsDictionary,precedence)},NumSuffixConflictStrategy.prototype.create=function(){return new away.library.NumSuffixConflictStrategy(this._separator)},NumSuffixConflictStrategy}(away.library.ConflictStrategyBase);library.NumSuffixConflictStrategy=NumSuffixConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var IgnoreConflictStrategy=function(_super){function IgnoreConflictStrategy(){_super.call(this)}return __extends(IgnoreConflictStrategy,_super),IgnoreConflictStrategy.prototype.resolveConflict=function(){},IgnoreConflictStrategy.prototype.create=function(){return new away.library.IgnoreConflictStrategy},IgnoreConflictStrategy}(away.library.ConflictStrategyBase);library.IgnoreConflictStrategy=IgnoreConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ErrorConflictStrategy=function(_super){function ErrorConflictStrategy(){_super.call(this)}return __extends(ErrorConflictStrategy,_super),ErrorConflictStrategy.prototype.resolveConflict=function(changedAsset){throw new away.errors.Error("Asset name collision while AssetLibrary.namingStrategy set to AssetLibrary.THROW_ERROR. Asset path: "+changedAsset.assetFullPath)},ErrorConflictStrategy.prototype.create=function(){return new ErrorConflictStrategy},ErrorConflictStrategy}(away.library.ConflictStrategyBase);library.ErrorConflictStrategy=ErrorConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ConflictPrecedence=function(){function ConflictPrecedence(){}return ConflictPrecedence.FAVOR_OLD="favorOld",ConflictPrecedence.FAVOR_NEW="favorNew",ConflictPrecedence}();library.ConflictPrecedence=ConflictPrecedence}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var ConflictStrategy=function(){function ConflictStrategy(){}return ConflictStrategy.APPEND_NUM_SUFFIX=new away.library.NumSuffixConflictStrategy,ConflictStrategy.IGNORE=new away.library.IgnoreConflictStrategy,ConflictStrategy.THROW_ERROR=new away.library.ErrorConflictStrategy,ConflictStrategy}();library.ConflictStrategy=ConflictStrategy}(away.library||(away.library={}));away.library}(away||(away={}));var away;!function(away){!function(library){var AssetLibraryBundle=function(_super){function AssetLibraryBundle(){_super.call(this),this._loadingSessionsGarbage=new Array,this._assets=new Array,this._assetDictionary=new Object,this._loadingSessions=new Array,this.conflictStrategy=away.library.ConflictStrategy.IGNORE.create(),this.conflictPrecedence=away.library.ConflictPrecedence.FAVOR_NEW,this._onAssetRenameDelegate=away.utils.Delegate.create(this,this.onAssetRename),this._onAssetConflictResolvedDelegate=away.utils.Delegate.create(this,this.onAssetConflictResolved),this._onResourceCompleteDelegate=away.utils.Delegate.create(this,this.onResourceComplete),this._onTextureSizeErrorDelegate=away.utils.Delegate.create(this,this.onTextureSizeError),this._onAssetCompleteDelegate=away.utils.Delegate.create(this,this.onAssetComplete),this._onLoadErrorDelegate=away.utils.Delegate.create(this,this.onLoadError),this._onParseErrorDelegate=away.utils.Delegate.create(this,this.onParseError)}return __extends(AssetLibraryBundle,_super),AssetLibraryBundle.getInstance=function(key){return"undefined"==typeof key&&(key="default"),key||(key="default"),away.library.AssetLibrary._iInstances.hasOwnProperty(key)||(away.library.AssetLibrary._iInstances[key]=new AssetLibraryBundle(new AssetLibraryBundleSingletonEnforcer)),away.library.AssetLibrary._iInstances[key]},AssetLibraryBundle.prototype.enableParser=function(parserClass){away.net.AssetLoader.enableParser(parserClass)},AssetLibraryBundle.prototype.enableParsers=function(parserClasses){away.net.AssetLoader.enableParsers(parserClasses)},Object.defineProperty(AssetLibraryBundle.prototype,"conflictStrategy",{get:function(){return this._strategy},set:function(val){if(!val)throw new away.errors.Error("namingStrategy must not be null. To ignore naming, use AssetLibrary.IGNORE");this._strategy=val.create()},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLibraryBundle.prototype,"conflictPrecedence",{get:function(){return this._strategyPreference},set:function(val){this._strategyPreference=val},enumerable:!0,configurable:!0}),AssetLibraryBundle.prototype.createIterator=function(assetTypeFilter,namespaceFilter,filterFunc){return"undefined"==typeof assetTypeFilter&&(assetTypeFilter=null),"undefined"==typeof namespaceFilter&&(namespaceFilter=null),"undefined"==typeof filterFunc&&(filterFunc=null),new away.library.AssetLibraryIterator(this._assets,assetTypeFilter,namespaceFilter,filterFunc)},AssetLibraryBundle.prototype.load=function(req,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var loader=new away.net.AssetLoader;return this._loadingSessions||(this._loadingSessions=new Array),this._loadingSessions.push(loader),loader.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),loader.addEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),loader.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),loader._iAddErrorHandler(this._onLoadErrorDelegate),loader._iAddParseErrorHandler(this._onParseErrorDelegate),loader.load(req,context,ns,parser)},AssetLibraryBundle.prototype.loadData=function(data,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var loader=new away.net.AssetLoader;return this._loadingSessions||(this._loadingSessions=new Array),this._loadingSessions.push(loader),loader.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),loader.addEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),loader.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),loader._iAddErrorHandler(this._onLoadErrorDelegate),loader._iAddParseErrorHandler(this._onParseErrorDelegate),loader.loadData(data,"",context,ns,parser)},AssetLibraryBundle.prototype.getAsset=function(name,ns){return"undefined"==typeof ns&&(ns=null),this._assetDictDirty&&this.rehashAssetDict(),null==ns&&(ns=away.library.NamedAssetBase.DEFAULT_NAMESPACE),this._assetDictionary.hasOwnProperty(ns)?this._assetDictionary[ns][name]:null},AssetLibraryBundle.prototype.addAsset=function(asset){var ns,old;this._assets.indexOf(asset)>=0||(old=this.getAsset(asset.name,asset.assetNamespace),ns=asset.assetNamespace||away.library.NamedAssetBase.DEFAULT_NAMESPACE,null!=old&&this._strategy.resolveConflict(asset,old,this._assetDictionary[ns],this._strategyPreference),asset.id=away.library.IDUtil.createUID(),this._assets.push(asset),this._assetDictionary.hasOwnProperty(ns)||(this._assetDictionary[ns]=new Object),this._assetDictionary[ns][asset.name]=asset,asset.addEventListener(away.events.AssetEvent.ASSET_RENAME,this._onAssetRenameDelegate),asset.addEventListener(away.events.AssetEvent.ASSET_CONFLICT_RESOLVED,this._onAssetConflictResolvedDelegate))},AssetLibraryBundle.prototype.removeAsset=function(asset,dispose){"undefined"==typeof dispose&&(dispose=!0);var idx;this.removeAssetFromDict(asset),asset.removeEventListener(away.events.AssetEvent.ASSET_RENAME,this._onAssetRenameDelegate),asset.removeEventListener(away.events.AssetEvent.ASSET_CONFLICT_RESOLVED,this._onAssetConflictResolvedDelegate),idx=this._assets.indexOf(asset),idx>=0&&this._assets.splice(idx,1),dispose&&asset.dispose()},AssetLibraryBundle.prototype.removeAssetByName=function(name,ns,dispose){"undefined"==typeof ns&&(ns=null),"undefined"==typeof dispose&&(dispose=!0);var asset=this.getAsset(name,ns);return asset&&this.removeAsset(asset,dispose),asset},AssetLibraryBundle.prototype.removeAllAssets=function(dispose){if("undefined"==typeof dispose&&(dispose=!0),dispose)for(var asset,c=0;ci;i++)this.killLoadingSession(this._loadingSessions[i]);this._loadingSessions=null},AssetLibraryBundle.prototype.rehashAssetDict=function(){var asset;this._assetDictionary={};for(var l=this._assets.length,c=0;l>c;c++)asset=this._assets[c],this._assetDictionary.hasOwnProperty(asset.assetNamespace)||(this._assetDictionary[asset.assetNamespace]={}),this._assetDictionary[asset.assetNamespace][asset.name]=asset;this._assetDictDirty=!1},AssetLibraryBundle.prototype.onLoadError=function(event){return this.hasEventListener(away.events.IOErrorEvent.IO_ERROR)?(this.dispatchEvent(event),!0):!1},AssetLibraryBundle.prototype.onParseError=function(event){return this.hasEventListener(away.events.ParserEvent.PARSE_ERROR)?(this.dispatchEvent(event),!0):!1},AssetLibraryBundle.prototype.onAssetComplete=function(event){event.type==away.events.AssetEvent.ASSET_COMPLETE&&this.addAsset(event.asset),this.dispatchEvent(event)},AssetLibraryBundle.prototype.onTextureSizeError=function(event){this.dispatchEvent(event)},AssetLibraryBundle.prototype.onResourceComplete=function(event){var _this=this,loader=event.target;this.dispatchEvent(event);var index=this._loadingSessions.indexOf(loader);this._loadingSessions.splice(index,1),this._loadingSessionsGarbage.push(loader),this._gcTimeoutIID=setTimeout(function(){_this.loadingSessionGC()},100)},AssetLibraryBundle.prototype.loadingSessionGC=function(){for(var loader;this._loadingSessionsGarbage.length>0;)loader=this._loadingSessionsGarbage.pop(),this.killLoadingSession(loader);clearTimeout(this._gcTimeoutIID),this._gcTimeoutIID=null},AssetLibraryBundle.prototype.killLoadingSession=function(loader){loader.removeEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),loader.removeEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),loader.removeEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),loader.stop()},AssetLibraryBundle.prototype.onAssetRename=function(ev){var asset=ev.target,old=this.getAsset(asset.assetNamespace,asset.name);if(null!=old)this._strategy.resolveConflict(asset,old,this._assetDictionary[asset.assetNamespace],this._strategyPreference);else{var dict=this._assetDictionary[ev.asset.assetNamespace];if(null==dict)return;dict[ev.assetPrevName]=null,dict[ev.asset.name]=ev.asset}},AssetLibraryBundle.prototype.onAssetConflictResolved=function(ev){this.dispatchEvent(ev.clone())},AssetLibraryBundle}(away.events.EventDispatcher);library.AssetLibraryBundle=AssetLibraryBundle}(away.library||(away.library={}));away.library}(away||(away={}));var AssetLibraryBundleSingletonEnforcer=function(){function AssetLibraryBundleSingletonEnforcer(){}return AssetLibraryBundleSingletonEnforcer}(),away;!function(away){!function(library){var AssetLibrary=function(){function AssetLibrary(se){se=se}return AssetLibrary.getBundle=function(key){return"undefined"==typeof key&&(key="default"),away.library.AssetLibraryBundle.getInstance(key)},AssetLibrary.enableParser=function(parserClass){away.net.AssetLoader.enableParser(parserClass)},AssetLibrary.enableParsers=function(parserClasses){away.net.AssetLoader.enableParsers(parserClasses)},Object.defineProperty(AssetLibrary,"conflictStrategy",{get:function(){return away.library.AssetLibrary.getBundle().conflictStrategy},set:function(val){away.library.AssetLibrary.getBundle().conflictStrategy=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLibrary,"conflictPrecedence",{get:function(){return away.library.AssetLibrary.getBundle().conflictPrecedence},set:function(val){away.library.AssetLibrary.getBundle().conflictPrecedence=val},enumerable:!0,configurable:!0}),AssetLibrary.createIterator=function(assetTypeFilter,namespaceFilter,filterFunc){return"undefined"==typeof assetTypeFilter&&(assetTypeFilter=null),"undefined"==typeof namespaceFilter&&(namespaceFilter=null),"undefined"==typeof filterFunc&&(filterFunc=null),away.library.AssetLibrary.getBundle().createIterator(assetTypeFilter,namespaceFilter,filterFunc)},AssetLibrary.load=function(req,context,ns,parser){return"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null),away.library.AssetLibrary.getBundle().load(req,context,ns,parser)},AssetLibrary.loadData=function(data,context,ns,parser){return"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null),away.library.AssetLibrary.getBundle().loadData(data,context,ns,parser)},AssetLibrary.stopLoad=function(){away.library.AssetLibrary.getBundle().stopAllLoadingSessions()},AssetLibrary.getAsset=function(name,ns){return"undefined"==typeof ns&&(ns=null),away.library.AssetLibrary.getBundle().getAsset(name,ns)},AssetLibrary.addEventListener=function(type,listener){away.library.AssetLibrary.getBundle().addEventListener(type,listener)},AssetLibrary.removeEventListener=function(type,listener){away.library.AssetLibrary.getBundle().removeEventListener(type,listener)},AssetLibrary.addAsset=function(asset){away.library.AssetLibrary.getBundle().addAsset(asset)},AssetLibrary.removeAsset=function(asset,dispose){"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeAsset(asset,dispose)},AssetLibrary.removeAssetByName=function(name,ns,dispose){return"undefined"==typeof ns&&(ns=null),"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeAssetByName(name,ns,dispose)},AssetLibrary.removeAllAssets=function(dispose){"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeAllAssets(dispose)},AssetLibrary.removeNamespaceAssets=function(ns,dispose){"undefined"==typeof ns&&(ns=null),"undefined"==typeof dispose&&(dispose=!0),away.library.AssetLibrary.getBundle().removeNamespaceAssets(ns,dispose)},AssetLibrary._iInstances={},AssetLibrary}();library.AssetLibrary=AssetLibrary}(away.library||(away.library={}));away.library}(away||(away={}));var AssetLibrarySingletonEnforcer=function(){function AssetLibrarySingletonEnforcer(){}return AssetLibrarySingletonEnforcer}(),away;!function(away){!function(gl){var ContextGLClearMask=function(){function ContextGLClearMask(){}return ContextGLClearMask.COLOR=16384,ContextGLClearMask.DEPTH=256,ContextGLClearMask.STENCIL=1024,ContextGLClearMask.ALL=ContextGLClearMask.COLOR|ContextGLClearMask.DEPTH|ContextGLClearMask.STENCIL,ContextGLClearMask}();gl.ContextGLClearMask=ContextGLClearMask}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var VertexBuffer=function(){function VertexBuffer(gl,numVertices,data32PerVertex){this._gl=gl,this._buffer=this._gl.createBuffer(),this._numVertices=numVertices,this._data32PerVertex=data32PerVertex}return VertexBuffer.prototype.uploadFromArray=function(vertices){this._gl.bindBuffer(this._gl.ARRAY_BUFFER,this._buffer),this._gl.bufferData(this._gl.ARRAY_BUFFER,new Float32Array(vertices),this._gl.STATIC_DRAW)},Object.defineProperty(VertexBuffer.prototype,"numVertices",{get:function(){return this._numVertices},enumerable:!0,configurable:!0}),Object.defineProperty(VertexBuffer.prototype,"data32PerVertex",{get:function(){return this._data32PerVertex},enumerable:!0,configurable:!0}),Object.defineProperty(VertexBuffer.prototype,"glBuffer",{get:function(){return this._buffer},enumerable:!0,configurable:!0}),VertexBuffer.prototype.dispose=function(){this._gl.deleteBuffer(this._buffer)},VertexBuffer}();gl.VertexBuffer=VertexBuffer}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var VertexData=function(){function VertexData(){this._dataDirty=!0,this.invalid=new Array(8),this.buffers=new Array(8),this.stageGLs=new Array(8)}return VertexData.prototype.updateData=function(vertices,dataPerVertex,originalIndices,indexMappings){if("undefined"==typeof originalIndices&&(originalIndices=null),"undefined"==typeof indexMappings&&(indexMappings=null),this._dataDirty)if(this._dataDirty=!1,null==indexMappings)this.setData(vertices,dataPerVertex);else{for(var originalIndex,splitIndex,splitVerts=new Array(originalIndices.length*dataPerVertex),i=0,j=0;ij;j++)splitVerts[splitIndex+j]=vertices[originalIndex+j];i++}this.setData(splitVerts,dataPerVertex)}},VertexData.prototype.invalidateData=function(){this._dataDirty=!0},VertexData.prototype.dispose=function(){for(var i=0;8>i;++i)this.stageGLs[i]&&(this.stageGLs[i].disposeVertexData(this),this.stageGLs[i]=null)},VertexData.prototype.disposeBuffers=function(){for(var i=0;8>i;++i)this.buffers[i]&&(this.buffers[i].dispose(),this.buffers[i]=null)},VertexData.prototype.invalidateBuffers=function(){for(var i=0;8>i;++i)this.invalid[i]=!0},VertexData.prototype.setData=function(data,dataPerVertex){this.data&&this.data.length!=data.length?this.disposeBuffers():this.invalidateBuffers(),this.data=data,this.dataPerVertex=dataPerVertex},VertexData}();gl.VertexData=VertexData}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var VertexDataPool=function(){function VertexDataPool(){}return VertexDataPool.getItem=function(id,level,dataType){var subGeometryDictionary=VertexDataPool._pool[id]||(VertexDataPool._pool[id]=new Object),subGeometryData=subGeometryDictionary[dataType]||(subGeometryDictionary[dataType]=new Array);return subGeometryData[level]||(subGeometryData[level]=new away.gl.VertexData)},VertexDataPool.disposeItem=function(id,level,dataType){var subGeometryDictionary=VertexDataPool._pool[id],subGeometryData=subGeometryDictionary[dataType];subGeometryData[level].dispose(),subGeometryData[level]=null},VertexDataPool.prototype.disposeData=function(id){var subGeometryDictionary=VertexDataPool._pool[id];for(var key in subGeometryDictionary)for(var subGeometryData=subGeometryDictionary[key],len=subGeometryData.length,i=0;len>i;i++)subGeometryData[i].dispose(),subGeometryData[i]=null;VertexDataPool._pool[id]=null},VertexDataPool._pool=new Object,VertexDataPool}();gl.VertexDataPool=VertexDataPool}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var IndexBuffer=function(){function IndexBuffer(gl,numIndices){this._gl=gl,this._buffer=this._gl.createBuffer(),this._numIndices=numIndices}return IndexBuffer.prototype.uploadFromArray=function(data){this._gl.bindBuffer(this._gl.ELEMENT_ARRAY_BUFFER,this._buffer),this._gl.bufferData(this._gl.ELEMENT_ARRAY_BUFFER,new Uint16Array(data),this._gl.STATIC_DRAW)},IndexBuffer.prototype.dispose=function(){this._gl.deleteBuffer(this._buffer)},Object.defineProperty(IndexBuffer.prototype,"numIndices",{get:function(){return this._numIndices},enumerable:!0,configurable:!0}),Object.defineProperty(IndexBuffer.prototype,"glBuffer",{get:function(){return this._buffer},enumerable:!0,configurable:!0}),IndexBuffer}();gl.IndexBuffer=IndexBuffer}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var IndexData=function(){function IndexData(){this._dataDirty=!0,this.invalid=new Array(8),this.stageGLs=new Array(8),this.buffers=new Array(8)}return IndexData.prototype.updateData=function(offset,indices,numVertices){if(this._dataDirty)if(this._dataDirty=!1,indices.lengthi&&outIndex+3j;j++)originalIndex=indices[i+j],this.indexMappings[originalIndex]>=0?splitIndex=this.indexMappings[originalIndex]:(splitIndex=k++,this.indexMappings[originalIndex]=splitIndex,this.originalIndices.push(originalIndex)),splitIndices[outIndex+j]=splitIndex;outIndex+=3,i+=3}this.setData(splitIndices),this.offset=i}},IndexData.prototype.invalidateData=function(){this._dataDirty=!0},IndexData.prototype.dispose=function(){for(var i=0;8>i;++i)this.stageGLs[i]&&(this.stageGLs[i].disposeIndexData(this),this.stageGLs[i]=null)},IndexData.prototype.disposeBuffers=function(){for(var i=0;8>i;++i)this.buffers[i]&&(this.buffers[i].dispose(),this.buffers[i]=null)},IndexData.prototype.invalidateBuffers=function(){for(var i=0;8>i;++i)this.invalid[i]=!0},IndexData.prototype.setData=function(data){this.data&&this.data.length!=data.length?this.disposeBuffers():this.invalidateBuffers(),this.data=data},IndexData.LIMIT_VERTS=65535,IndexData.LIMIT_INDICES=16777215,IndexData}();gl.IndexData=IndexData}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var IndexDataPool=function(){function IndexDataPool(){}return IndexDataPool.getItem=function(id,level){var subGeometryData=IndexDataPool._pool[id]||(IndexDataPool._pool[id]=new Array);return subGeometryData[level]||(subGeometryData[level]=new away.gl.IndexData)},IndexDataPool.disposeItem=function(id,level){var subGeometryData=this._pool[id];subGeometryData[level].dispose(),subGeometryData[level]=null},IndexDataPool.prototype.disposeData=function(id){for(var subGeometryData=IndexDataPool._pool[id],len=subGeometryData.length,i=0;len>i;i++)subGeometryData[i].dispose(),subGeometryData[i]=null;IndexDataPool._pool[id]=null},IndexDataPool._pool=new Object,IndexDataPool}();gl.IndexDataPool=IndexDataPool}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var Program=function(){function Program(gl){this._gl=gl,this._program=this._gl.createProgram()}return Program.prototype.upload=function(vertexProgram,fragmentProgram){return this._vertexShader=this._gl.createShader(this._gl.VERTEX_SHADER),this._fragmentShader=this._gl.createShader(this._gl.FRAGMENT_SHADER),this._gl.shaderSource(this._vertexShader,vertexProgram),this._gl.compileShader(this._vertexShader),this._gl.getShaderParameter(this._vertexShader,this._gl.COMPILE_STATUS)?(this._gl.shaderSource(this._fragmentShader,fragmentProgram),this._gl.compileShader(this._fragmentShader),this._gl.getShaderParameter(this._fragmentShader,this._gl.COMPILE_STATUS)?(this._gl.attachShader(this._program,this._vertexShader),this._gl.attachShader(this._program,this._fragmentShader),this._gl.linkProgram(this._program),this._gl.getProgramParameter(this._program,this._gl.LINK_STATUS)||alert("Could not link the program."),void 0):(alert(this._gl.getShaderInfoLog(this._fragmentShader)),null)):(alert(this._gl.getShaderInfoLog(this._vertexShader)),null)},Program.prototype.dispose=function(){this._gl.deleteProgram(this._program)},Program.prototype.focusProgram=function(){this._gl.useProgram(this._program)},Object.defineProperty(Program.prototype,"glProgram",{get:function(){return this._program},enumerable:!0,configurable:!0}),Program}();gl.Program=Program}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var SamplerState=function(){function SamplerState(){this.wrap=0,this.filter=0,this.mipfilter=0}return SamplerState}();gl.SamplerState=SamplerState}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLTextureFormat=function(){function ContextGLTextureFormat(){}return ContextGLTextureFormat.BGRA="bgra",ContextGLTextureFormat.BGRA_PACKED="bgraPacked4444",ContextGLTextureFormat.BGR_PACKED="bgrPacked565",ContextGLTextureFormat.COMPRESSED="compressed",ContextGLTextureFormat.COMPRESSED_ALPHA="compressedAlpha",ContextGLTextureFormat}();gl.ContextGLTextureFormat=ContextGLTextureFormat}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var TextureBase=function(){function TextureBase(gl){this.textureType="",this._gl=gl}return TextureBase.prototype.dispose=function(){throw"Abstract method must be overridden."},TextureBase}();gl.TextureBase=TextureBase}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var Texture=function(_super){function Texture(gl,width,height){_super.call(this,gl),this.textureType="texture2d",this._width=width,this._height=height,this._glTexture=this._gl.createTexture()}return __extends(Texture,_super),Texture.prototype.dispose=function(){this._gl.deleteTexture(this._glTexture)},Object.defineProperty(Texture.prototype,"width",{get:function(){return this._width},enumerable:!0,configurable:!0}),Object.defineProperty(Texture.prototype,"height",{get:function(){return this._height},enumerable:!0,configurable:!0}),Object.defineProperty(Texture.prototype,"frameBuffer",{get:function(){return this._frameBuffer},enumerable:!0,configurable:!0}),Texture.prototype.uploadFromHTMLImageElement=function(image,miplevel){"undefined"==typeof miplevel&&(miplevel=0),this._gl.bindTexture(this._gl.TEXTURE_2D,this._glTexture),this._gl.texImage2D(this._gl.TEXTURE_2D,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image),this._gl.bindTexture(this._gl.TEXTURE_2D,null)},Texture.prototype.uploadFromBitmapData=function(data,miplevel){"undefined"==typeof miplevel&&(miplevel=0),this._gl.bindTexture(this._gl.TEXTURE_2D,this._glTexture),this._gl.texImage2D(this._gl.TEXTURE_2D,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_2D,null)},Texture.prototype.uploadCompressedTextureFromByteArray=function(data,byteArrayOffset,async){"undefined"==typeof async&&(async=!1);this._gl.getExtension("WEBKIT_WEBGL_compressed_texture_s3tc")},Object.defineProperty(Texture.prototype,"glTexture",{get:function(){return this._glTexture},enumerable:!0,configurable:!0}),Texture.prototype.generateFromRenderBuffer=function(){this._frameBuffer=this._gl.createFramebuffer(),this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,this._frameBuffer),this._frameBuffer.width=this._width,this._frameBuffer.height=this._height,this._gl.bindTexture(this._gl.TEXTURE_2D,this._glTexture),this._gl.texImage2D(this._gl.TEXTURE_2D,0,this._gl.RGBA,this._width,this._height,0,this._gl.RGBA,this._gl.UNSIGNED_BYTE,null);var renderBuffer=this._gl.createRenderbuffer();this._gl.bindRenderbuffer(this._gl.RENDERBUFFER,renderBuffer),this._gl.renderbufferStorage(this._gl.RENDERBUFFER,this._gl.DEPTH_COMPONENT16,this._width,this._height),this._gl.framebufferTexture2D(this._gl.FRAMEBUFFER,this._gl.COLOR_ATTACHMENT0,this._gl.TEXTURE_2D,this._glTexture,0),this._gl.framebufferRenderbuffer(this._gl.FRAMEBUFFER,this._gl.DEPTH_ATTACHMENT,this._gl.RENDERBUFFER,renderBuffer),this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._gl.bindRenderbuffer(this._gl.RENDERBUFFER,null),this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,null)},Texture.prototype.generateMipmaps=function(){},Texture}(away.gl.TextureBase);gl.Texture=Texture}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var CubeTexture=function(_super){function CubeTexture(gl,size){_super.call(this,gl),this.textureType="textureCube",this._size=size,this._texture=this._gl.createTexture()}return __extends(CubeTexture,_super),CubeTexture.prototype.dispose=function(){this._gl.deleteTexture(this._texture)},CubeTexture.prototype.uploadFromHTMLImageElement=function(image,side,miplevel){switch("undefined"==typeof miplevel&&(miplevel=0),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),side){case 0:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 1:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 2:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 3:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 4:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;case 5:this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,image);break;default:throw"unknown side type"}this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null)},CubeTexture.prototype.uploadFromBitmapData=function(data,side,miplevel){switch("undefined"==typeof miplevel&&(miplevel=0),side){case 0:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 1:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_X,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 2:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 3:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Y,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 4:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_POSITIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;case 5:this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,this._texture),this._gl.texImage2D(this._gl.TEXTURE_CUBE_MAP_NEGATIVE_Z,miplevel,this._gl.RGBA,this._gl.RGBA,this._gl.UNSIGNED_BYTE,data.imageData),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null);break;default:throw"unknown side type"}},CubeTexture.prototype.uploadCompressedTextureFromByteArray=function(data,byteArrayOffset,async){"undefined"==typeof async&&(async=!1)
+},Object.defineProperty(CubeTexture.prototype,"size",{get:function(){return this._size},enumerable:!0,configurable:!0}),Object.defineProperty(CubeTexture.prototype,"glTexture",{get:function(){return this._texture},enumerable:!0,configurable:!0}),CubeTexture}(away.gl.TextureBase);gl.CubeTexture=CubeTexture}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLTriangleFace=function(){function ContextGLTriangleFace(){}return ContextGLTriangleFace.BACK="back",ContextGLTriangleFace.FRONT="front",ContextGLTriangleFace.FRONT_AND_BACK="frontAndBack",ContextGLTriangleFace.NONE="none",ContextGLTriangleFace}();gl.ContextGLTriangleFace=ContextGLTriangleFace}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLVertexBufferFormat=function(){function ContextGLVertexBufferFormat(){}return ContextGLVertexBufferFormat.BYTES_4="bytes4",ContextGLVertexBufferFormat.FLOAT_1="float1",ContextGLVertexBufferFormat.FLOAT_2="float2",ContextGLVertexBufferFormat.FLOAT_3="float3",ContextGLVertexBufferFormat.FLOAT_4="float4",ContextGLVertexBufferFormat}();gl.ContextGLVertexBufferFormat=ContextGLVertexBufferFormat}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLProgramType=function(){function ContextGLProgramType(){}return ContextGLProgramType.FRAGMENT="fragment",ContextGLProgramType.VERTEX="vertex",ContextGLProgramType}();gl.ContextGLProgramType=ContextGLProgramType}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLBlendFactor=function(){function ContextGLBlendFactor(){}return ContextGLBlendFactor.DESTINATION_ALPHA="destinationAlpha",ContextGLBlendFactor.DESTINATION_COLOR="destinationColor",ContextGLBlendFactor.ONE="one",ContextGLBlendFactor.ONE_MINUS_DESTINATION_ALPHA="oneMinusDestinationAlpha",ContextGLBlendFactor.ONE_MINUS_DESTINATION_COLOR="oneMinusDestinationColor",ContextGLBlendFactor.ONE_MINUS_SOURCE_ALPHA="oneMinusSourceAlpha",ContextGLBlendFactor.ONE_MINUS_SOURCE_COLOR="oneMinusSourceColor",ContextGLBlendFactor.SOURCE_ALPHA="sourceAlpha",ContextGLBlendFactor.SOURCE_COLOR="sourceColor",ContextGLBlendFactor.ZERO="zero",ContextGLBlendFactor}();gl.ContextGLBlendFactor=ContextGLBlendFactor}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLCompareMode=function(){function ContextGLCompareMode(){}return ContextGLCompareMode.ALWAYS="always",ContextGLCompareMode.EQUAL="equal",ContextGLCompareMode.GREATER="greater",ContextGLCompareMode.GREATER_EQUAL="greaterEqual",ContextGLCompareMode.LESS="less",ContextGLCompareMode.LESS_EQUAL="lessEqual",ContextGLCompareMode.NEVER="never",ContextGLCompareMode.NOT_EQUAL="notEqual",ContextGLCompareMode}();gl.ContextGLCompareMode=ContextGLCompareMode}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLMipFilter=function(){function ContextGLMipFilter(){}return ContextGLMipFilter.MIPLINEAR="miplinear",ContextGLMipFilter.MIPNEAREST="mipnearest",ContextGLMipFilter.MIPNONE="mipnone",ContextGLMipFilter}();gl.ContextGLMipFilter=ContextGLMipFilter}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLProfile=function(){function ContextGLProfile(){}return ContextGLProfile.BASELINE="baseline",ContextGLProfile.BASELINE_CONSTRAINED="baselineConstrained",ContextGLProfile.BASELINE_EXTENDED="baselineExtended",ContextGLProfile}();gl.ContextGLProfile=ContextGLProfile}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLStencilAction=function(){function ContextGLStencilAction(){}return ContextGLStencilAction.DECREMENT_SATURATE="decrementSaturate",ContextGLStencilAction.DECREMENT_WRAP="decrementWrap",ContextGLStencilAction.INCREMENT_SATURATE="incrementSaturate",ContextGLStencilAction.INCREMENT_WRAP="incrementWrap",ContextGLStencilAction.INVERT="invert",ContextGLStencilAction.KEEP="keep",ContextGLStencilAction.SET="set",ContextGLStencilAction.ZERO="zero",ContextGLStencilAction}();gl.ContextGLStencilAction=ContextGLStencilAction}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLTextureFilter=function(){function ContextGLTextureFilter(){}return ContextGLTextureFilter.LINEAR="linear",ContextGLTextureFilter.NEAREST="nearest",ContextGLTextureFilter}();gl.ContextGLTextureFilter=ContextGLTextureFilter}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGLWrapMode=function(){function ContextGLWrapMode(){}return ContextGLWrapMode.CLAMP="clamp",ContextGLWrapMode.REPEAT="repeat",ContextGLWrapMode}();gl.ContextGLWrapMode=ContextGLWrapMode}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var ContextGL=function(){function ContextGL(canvas){this._currentWrap=0,this._currentFilter=0,this._currentMipFilter=0,this._indexBufferList=[],this._vertexBufferList=[],this._textureList=[],this._programList=[],this._samplerStates=[];try{this._gl=canvas.getContext("experimental-webgl",{premultipliedAlpha:!1,alpha:!1}),this._gl||(this._gl=canvas.getContext("webgl",{premultipliedAlpha:!1,alpha:!1}))}catch(e){}this._gl||alert("WebGL is not available.");for(var i=0;ii;++i){var currentIndex=4*i,locationName=this.getUniformLocationNameFromAgalRegisterIndex(programType,firstRegister+i)+(i+firstRegister);this.setGLSLProgramConstantsFromArray(locationName,data,currentIndex)}},ContextGL.prototype.setGLSLProgramConstantsFromMatrix=function(locationName,matrix,transposedMatrix){"undefined"==typeof transposedMatrix&&(transposedMatrix=!1);var location=this._gl.getUniformLocation(this._currentProgram.glProgram,locationName);this._gl.uniformMatrix4fv(location,!transposedMatrix,new Float32Array(matrix.rawData))},ContextGL.prototype.setGLSLProgramConstantsFromArray=function(locationName,data,startIndex){"undefined"==typeof startIndex&&(startIndex=0);var location=this._gl.getUniformLocation(this._currentProgram.glProgram,locationName);this._gl.uniform4f(location,data[startIndex],data[startIndex+1],data[startIndex+2],data[startIndex+3])},ContextGL.prototype.setScissorRectangle=function(rectangle){return rectangle?(this._gl.enable(this._gl.SCISSOR_TEST),this._gl.scissor(rectangle.x,rectangle.y,rectangle.width,rectangle.height),void 0):(this._gl.disable(this._gl.SCISSOR_TEST),void 0)},ContextGL.prototype.setTextureAt=function(sampler,texture){var locationName="fs"+sampler;this.setGLSLTextureAt(locationName,texture,sampler)},ContextGL.prototype.setGLSLTextureAt=function(locationName,texture,textureIndex){if(!texture)return this._gl.activeTexture(this._gl.TEXTURE0+textureIndex),this._gl.bindTexture(this._gl.TEXTURE_2D,null),this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,null),void 0;switch(textureIndex){case 0:this._gl.activeTexture(this._gl.TEXTURE0);break;case 1:this._gl.activeTexture(this._gl.TEXTURE1);break;case 2:this._gl.activeTexture(this._gl.TEXTURE2);break;case 3:this._gl.activeTexture(this._gl.TEXTURE3);break;case 4:this._gl.activeTexture(this._gl.TEXTURE4);break;case 5:this._gl.activeTexture(this._gl.TEXTURE5);break;case 6:this._gl.activeTexture(this._gl.TEXTURE6);break;case 7:this._gl.activeTexture(this._gl.TEXTURE7);break;default:throw"Texture "+textureIndex+" is out of bounds."}var location=this._gl.getUniformLocation(this._currentProgram.glProgram,locationName);if("texture2d"==texture.textureType){this._gl.bindTexture(this._gl.TEXTURE_2D,texture.glTexture),this._gl.uniform1i(location,textureIndex);var samplerState=this._samplerStates[textureIndex];samplerState.wrap!=this._currentWrap&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_WRAP_S,samplerState.wrap),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_WRAP_T,samplerState.wrap)),samplerState.filter!=this._currentFilter&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,samplerState.filter),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,samplerState.filter)),samplerState.mipfilter!=this._currentMipFilter&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,samplerState.mipfilter),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,samplerState.mipfilter))}else if("textureCube"==texture.textureType){this._gl.bindTexture(this._gl.TEXTURE_CUBE_MAP,texture.glTexture),this._gl.uniform1i(location,textureIndex);var samplerState=this._samplerStates[textureIndex];samplerState.wrap!=this._currentWrap&&(this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_WRAP_S,samplerState.wrap),this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_WRAP_T,samplerState.wrap)),samplerState.filter!=this._currentFilter&&(this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_MIN_FILTER,samplerState.filter),this._gl.texParameteri(this._gl.TEXTURE_CUBE_MAP,this._gl.TEXTURE_MAG_FILTER,samplerState.filter)),samplerState.mipfilter!=this._currentMipFilter&&(this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MIN_FILTER,samplerState.mipfilter),this._gl.texParameteri(this._gl.TEXTURE_2D,this._gl.TEXTURE_MAG_FILTER,samplerState.mipfilter))}},ContextGL.prototype.setSamplerStateAt=function(sampler,wrap,filter,mipfilter){var glWrap=0,glFilter=0,glMipFilter=0;switch(wrap){case away.gl.ContextGLWrapMode.REPEAT:glWrap=this._gl.REPEAT;break;case away.gl.ContextGLWrapMode.CLAMP:glWrap=this._gl.CLAMP_TO_EDGE;break;default:throw"Wrap is not supported: "+wrap}switch(filter){case away.gl.ContextGLTextureFilter.LINEAR:glFilter=this._gl.LINEAR;break;case away.gl.ContextGLTextureFilter.NEAREST:glFilter=this._gl.NEAREST;break;default:throw"Filter is not supported "+filter}switch(mipfilter){case away.gl.ContextGLMipFilter.MIPNEAREST:glMipFilter=this._gl.NEAREST_MIPMAP_NEAREST;break;case away.gl.ContextGLMipFilter.MIPLINEAR:glMipFilter=this._gl.LINEAR_MIPMAP_LINEAR;break;case away.gl.ContextGLMipFilter.MIPNONE:glMipFilter=this._gl.NONE;break;default:throw"MipFilter is not supported "+mipfilter}if(!(sampler>=0&&sampler-1&&this._gl.disableVertexAttribArray(location),void 0;this._gl.bindBuffer(this._gl.ARRAY_BUFFER,buffer.glBuffer);var dimension,type=this._gl.FLOAT,numBytes=4;switch(format){case away.gl.ContextGLVertexBufferFormat.BYTES_4:dimension=4;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_1:dimension=1;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_2:dimension=2;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_3:dimension=3;break;case away.gl.ContextGLVertexBufferFormat.FLOAT_4:dimension=4;break;default:throw"Buffer format "+format+" is not supported."}this._gl.enableVertexAttribArray(location),this._gl.vertexAttribPointer(location,dimension,type,!1,buffer.data32PerVertex*numBytes,bufferOffset*numBytes)},ContextGL.prototype.setRenderToTexture=function(target,enableDepthAndStencil,antiAlias,surfaceSelector){"undefined"==typeof enableDepthAndStencil&&(enableDepthAndStencil=!1),"undefined"==typeof antiAlias&&(antiAlias=0),"undefined"==typeof surfaceSelector&&(surfaceSelector=0);var frameBuffer=target.frameBuffer;this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,frameBuffer),enableDepthAndStencil&&(this._gl.enable(this._gl.STENCIL_TEST),this._gl.enable(this._gl.DEPTH_TEST)),this._gl.viewport.width=frameBuffer.width,this._gl.viewport.height=frameBuffer.height,this._gl.viewport(0,0,frameBuffer.width,frameBuffer.height)},ContextGL.prototype.setRenderToBackBuffer=function(){this._gl.bindFramebuffer(this._gl.FRAMEBUFFER,null)},ContextGL.prototype.updateBlendStatus=function(){this._blendEnabled?(this._gl.enable(this._gl.BLEND),this._gl.blendEquation(this._gl.FUNC_ADD),this._gl.blendFunc(this._blendSourceFactor,this._blendDestinationFactor)):this._gl.disable(this._gl.BLEND)},ContextGL.MAX_SAMPLERS=8,ContextGL.modulo=0,ContextGL}();gl.ContextGL=ContextGL}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(gl){var AGLSLContextGL=function(_super){function AGLSLContextGL(canvas){_super.call(this,canvas)}return __extends(AGLSLContextGL,_super),AGLSLContextGL.prototype.setProgramConstantsFromMatrix=function(programType,firstRegister,matrix,transposedMatrix){"undefined"==typeof transposedMatrix&&(transposedMatrix=!1);var d=matrix.rawData;transposedMatrix?(this.setProgramConstantsFromArray(programType,firstRegister,[d[0],d[4],d[8],d[12]],1),this.setProgramConstantsFromArray(programType,firstRegister+1,[d[1],d[5],d[9],d[13]],1),this.setProgramConstantsFromArray(programType,firstRegister+2,[d[2],d[6],d[10],d[14]],1),this.setProgramConstantsFromArray(programType,firstRegister+3,[d[3],d[7],d[11],d[15]],1)):(this.setProgramConstantsFromArray(programType,firstRegister,[d[0],d[1],d[2],d[3]],1),this.setProgramConstantsFromArray(programType,firstRegister+1,[d[4],d[5],d[6],d[7]],1),this.setProgramConstantsFromArray(programType,firstRegister+2,[d[8],d[9],d[10],d[11]],1),this.setProgramConstantsFromArray(programType,firstRegister+3,[d[12],d[13],d[14],d[15]],1))},AGLSLContextGL}(away.gl.ContextGL);gl.AGLSLContextGL=AGLSLContextGL}(away.gl||(away.gl={}));away.gl}(away||(away={}));var away;!function(away){!function(base){var BlendMode=function(){function BlendMode(){}return BlendMode.ADD="add",BlendMode.ALPHA="alpha",BlendMode.DARKEN="darken",BlendMode.DIFFERENCE="difference",BlendMode.ERASE="erase",BlendMode.HARDLIGHT="hardlight",BlendMode.INVERT="invert",BlendMode.LAYER="layer",BlendMode.LIGHTEN="lighten",BlendMode.MULTIPLY="multiply",BlendMode.NORMAL="normal",BlendMode.OVERLAY="overlay",BlendMode.SCREEN="screen",BlendMode.SHADER="shader",BlendMode.SUBTRACT="subtract",BlendMode}();base.BlendMode=BlendMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var AlignmentMode=function(){function AlignmentMode(){}return AlignmentMode.REGISTRATION_POINT="registrationPoint",AlignmentMode.PIVOT_POINT="pivot",AlignmentMode}();base.AlignmentMode=AlignmentMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var OrientationMode=function(){function OrientationMode(){}return OrientationMode.DEFAULT="default",OrientationMode.CAMERA_PLANE="cameraPlane",OrientationMode.CAMERA_POSITION="cameraPosition",OrientationMode}();base.OrientationMode=OrientationMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var BitmapData=function(){function BitmapData(width,height,transparent,fillColor){"undefined"==typeof transparent&&(transparent=!0),"undefined"==typeof fillColor&&(fillColor=null),this._alpha=1,this._locked=!1,this._transparent=transparent,this._imageCanvas=document.createElement("canvas"),this._imageCanvas.width=width,this._imageCanvas.height=height,this._context=this._imageCanvas.getContext("2d"),this._rect=new away.geom.Rectangle(0,0,width,height),null!=fillColor&&(this._alpha=this._transparent?away.utils.ColorUtils.float32ColorToARGB(fillColor)[0]/255:1,this.fillRect(this._rect,fillColor))}return BitmapData.prototype.dispose=function(){this._context=null,this._imageCanvas=null,this._imageData=null,this._rect=null,this._transparent=null,this._locked=null},BitmapData.prototype.lock=function(){this._locked=!0,this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)},BitmapData.prototype.unlock=function(){this._locked=!1,this._imageData&&(this._context.putImageData(this._imageData,0,0),this._imageData=null)},BitmapData.prototype.getPixel=function(x,y){var r,g,b,a;if(this._locked){var index=4*(x+y*this._imageCanvas.width);this._imageData||(this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)),r=this._imageData.data[index+0],g=this._imageData.data[index+1],b=this._imageData.data[index+2],a=this._imageData.data[index+3]}else{var pixelData=this._context.getImageData(x,y,1,1);r=pixelData.data[0],g=pixelData.data[1],b=pixelData.data[2],a=pixelData.data[3]}return this._locked||(this._imageData=null),a<<24|r<<16|g<<8|b},BitmapData.prototype.setPixel=function(x,y,color){var argb=away.utils.ColorUtils.float32ColorToARGB(color);if(this._locked||(this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)),this._imageData){var index=4*(x+y*this._imageCanvas.width);this._imageData.data[index+0]=argb[1],this._imageData.data[index+1]=argb[2],this._imageData.data[index+2]=argb[3],this._imageData.data[index+3]=255}this._locked||(this._context.putImageData(this._imageData,0,0),this._imageData=null)},BitmapData.prototype.setPixels=function(rect,inputByteArray){if(this._locked||(this._imageData=this._context.getImageData(0,0,this._rect.width,this._rect.height)),this._imageData){inputByteArray.position=0;var i,j,index;for(i=0;irayEntryDistance?!1:(pickingCollisionVO.rayEntryDistance=rayEntryDistance,pickingCollisionVO.localRayPosition=localRayPosition,pickingCollisionVO.localRayDirection=localRayDirection,pickingCollisionVO.rayPosition=rayPosition,pickingCollisionVO.rayDirection=rayDirection,pickingCollisionVO.rayOriginIsInsideBounds=0==rayEntryDistance,!0)},DisplayObject.prototype.local3DToGlobal=function(){return new away.geom.Point},DisplayObject.prototype.lookAt=function(target,upAxis){"undefined"==typeof upAxis&&(upAxis=null);var yAxis,zAxis,xAxis,raw;null==upAxis?upAxis=away.geom.Vector3D.Y_AXIS:upAxis.normalize(),zAxis=target.subtract(this._iMatrix3D.position),zAxis.normalize(),xAxis=upAxis.crossProduct(zAxis),xAxis.normalize(),xAxis.length<.05&&(xAxis.x=upAxis.y,xAxis.y=upAxis.x,xAxis.z=0,xAxis.normalize()),yAxis=zAxis.crossProduct(xAxis),raw=away.geom.Matrix3DUtils.RAW_DATA_CONTAINER,raw[0]=xAxis.x,raw[1]=xAxis.y,raw[2]=xAxis.z,raw[3]=0,raw[4]=yAxis.x,raw[5]=yAxis.y,raw[6]=yAxis.z,raw[7]=0,raw[8]=zAxis.x,raw[9]=zAxis.y,raw[10]=zAxis.z,raw[11]=0;var m=new away.geom.Matrix3D;m.copyRawDataFrom(raw);var vec=m.decompose()[1];this._rotationX=vec.x,this._rotationY=vec.y,this._rotationZ=vec.z,this.invalidateRotation()},DisplayObject.prototype.localToGlobal=function(){return new away.geom.Point},DisplayObject.prototype.moveTo=function(dx,dy,dz){(this._x!=dx||this._y!=dy||this._z!=dz)&&(this._x=dx,this._y=dy,this._z=dz,this.invalidatePosition())},DisplayObject.prototype.movePivot=function(dx,dy,dz){null==this._pivot&&(this._pivot=new away.geom.Vector3D),this._pivot.x+=dx,this._pivot.y+=dy,this._pivot.z+=dz,this.invalidatePivot()},DisplayObject.prototype.pitch=function(angle){this.rotate(away.geom.Vector3D.X_AXIS,angle)},DisplayObject.prototype.getRenderSceneTransform=function(camera){if(this.orientationMode==away.base.OrientationMode.CAMERA_PLANE){var comps=camera.sceneTransform.decompose(),scale=comps[2];return comps[0]=this.scenePosition,scale.x=this._pScaleX,scale.y=this._pScaleY,scale.z=this._pScaleZ,this._orientationMatrix.recompose(comps),this._pivotZero||this.alignmentMode!=away.base.AlignmentMode.PIVOT_POINT||this._orientationMatrix.prependTranslation(-this._pivot.x/this._pScaleX,-this._pivot.y/this._pScaleY,-this._pivot.z/this._pScaleZ),this._orientationMatrix}return this.sceneTransform},DisplayObject.prototype.roll=function(angle){this.rotate(away.geom.Vector3D.Z_AXIS,angle)},DisplayObject.prototype.rotate=function(axis,angle){var m=new away.geom.Matrix3D;m.prependRotation(angle,axis);var vec=m.decompose()[1];this._rotationX+=vec.x,this._rotationY+=vec.y,this._rotationZ+=vec.z,this.invalidateRotation()},DisplayObject.prototype.rotateTo=function(ax,ay,az){this._rotationX=ax*away.geom.MathConsts.DEGREES_TO_RADIANS,this._rotationY=ay*away.geom.MathConsts.DEGREES_TO_RADIANS,this._rotationZ=az*away.geom.MathConsts.DEGREES_TO_RADIANS,this.invalidateRotation()},DisplayObject.prototype.removeEventListener=function(type,listener){if(_super.prototype.removeEventListener.call(this,type,listener),!this.hasEventListener(type,listener))switch(type){case away.events.DisplayObjectEvent.POSITION_CHANGED:this._listenToPositionChanged=!1;break;case away.events.DisplayObjectEvent.ROTATION_CHANGED:this._listenToRotationChanged=!1;break;case away.events.DisplayObjectEvent.SCALE_CHANGED:this._listenToScaleChanged=!1}},DisplayObject.prototype.translate=function(axis,distance){var x=axis.x,y=axis.y,z=axis.z,len=distance/Math.sqrt(x*x+y*y+z*z);this._x+=x*len,this._y+=y*len,this._z+=z*len,this.invalidatePosition()},DisplayObject.prototype.translateLocal=function(axis,distance){var x=axis.x,y=axis.y,z=axis.z,len=distance/Math.sqrt(x*x+y*y+z*z);this._iMatrix3D.prependTranslation(x*len,y*len,z*len),this._matrix3D.copyColumnTo(3,this._pos),this._x=this._pos.x,this._y=this._pos.y,this._z=this._pos.z,this.invalidatePosition()},DisplayObject.prototype.yaw=function(angle){this.rotate(away.geom.Vector3D.Y_AXIS,angle)},Object.defineProperty(DisplayObject.prototype,"_iAssignedPartition",{get:function(){return this._pImplicitPartition},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObject.prototype,"_iMatrix3D",{get:function(){return this._matrix3DDirty&&this._pUpdateMatrix3D(),this._matrix3D},set:function(val){var vec,elements=val.decompose();vec=elements[0],(this._x!=vec.x||this._y!=vec.y||this._z!=vec.z)&&(this._x=vec.x,this._y=vec.y,this._z=vec.z,this.invalidatePosition()),vec=elements[1],(this._rotationX!=vec.x||this._rotationY!=vec.y||this._rotationZ!=vec.z)&&(this._rotationX=vec.x,this._rotationY=vec.y,this._rotationZ=vec.z,this.invalidateRotation()),vec=elements[2],(this._pScaleX!=vec.x||this._pScaleY!=vec.y||this._pScaleZ!=vec.z)&&(this._pScaleX=vec.x,this._pScaleY=vec.y,this._pScaleZ=vec.z,this.invalidateScale())},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObject.prototype,"_iPickingCollisionVO",{get:function(){return this._pPickingCollisionVO||(this._pPickingCollisionVO=new away.pick.PickingCollisionVO(this)),this._pPickingCollisionVO},enumerable:!0,configurable:!0}),DisplayObject.prototype.iSetParent=function(value){this._pParent=value,value?(this._pUpdateImplicitMouseEnabled(value.mouseChildren),this._pUpdateImplicitVisibility(value._iIsVisible()),this._pUpdateImplicitPartition(value._iAssignedPartition),this._iSetScene(value._pScene)):(this._pUpdateImplicitMouseEnabled(!0),this._pUpdateImplicitVisibility(!0),this._pUpdateImplicitPartition(null),this._iSetScene(null))},DisplayObject.prototype.pCreateDefaultBoundingVolume=function(){return new away.bounds.AxisAlignedBoundingBox},DisplayObject.prototype.pCreateEntityPartitionNode=function(){throw new away.errors.AbstractMethodError},DisplayObject.prototype.pInvalidateBounds=function(){this._pBoundsInvalid=!0,this._worldBoundsInvalid=!0,this.isEntity&&this.invalidatePartition()},DisplayObject.prototype.pInvalidateSceneTransform=function(){this._pSceneTransformDirty=!this._pIgnoreTransform,this._inverseSceneTransformDirty=!this._pIgnoreTransform,this._scenePositionDirty=!this._pIgnoreTransform,this._worldBoundsInvalid=!this._pIgnoreTransform,this.isEntity&&this.invalidatePartition(),this._listenToSceneTransformChanged&&this.notifySceneTransformChange()},DisplayObject.prototype.pUpdateBounds=function(){this._width=this._pBounds.aabb.width*this._pScaleX,this._height=this._pBounds.aabb.height*this._pScaleY,this._depth=this._pBounds.aabb.depth*this._pScaleZ,this._pBoundsInvalid=!1},DisplayObject.prototype._pUpdateImplicitMouseEnabled=function(value){this._pImplicitMouseEnabled=this._explicitMouseEnabled&&value,this._pImplicitMouseEnabled&&this._pParent&&!this._pPickingCollider&&(this._pPickingCollider=this._pParent._pPickingCollider)},DisplayObject.prototype._pUpdateImplicitPartition=function(value){this._pImplicitPartition=this._explicitPartition||value},DisplayObject.prototype._pUpdateImplicitVisibility=function(value){this._pImplicitVisibility=this._explicitVisibility&&value},DisplayObject.prototype._pUpdateMatrix3D=function(){this._pos.x=this._x,this._pos.y=this._y,this._pos.z=this._z,this._rot.x=this._rotationX,this._rot.y=this._rotationY,this._rot.z=this._rotationZ,this._sca.x=this._pScaleX,this._sca.y=this._pScaleY,this._sca.z=this._pScaleZ,this._matrix3D.recompose(this._transformComponents),this._pivotZero||(this._matrix3D.prependTranslation(-this._pivot.x/this._pScaleX,-this._pivot.y/this._pScaleY,-this._pivot.z/this._pScaleZ),this.alignmentMode!=away.base.AlignmentMode.PIVOT_POINT&&this._matrix3D.appendTranslation(this._pivot.x,this._pivot.y,this._pivot.z)),this._matrix3DDirty=!1,this._positionDirty=!1,this._rotationDirty=!1,this._scaleDirty=!1,this._pivotDirty=!1},DisplayObject.prototype.pUpdateSceneTransform=function(){this._pParent&&!this._pParent._iIsRoot?(this._pSceneTransform.copyFrom(this._pParent.sceneTransform),this._pSceneTransform.prepend(this._iMatrix3D)):this._pSceneTransform.copyFrom(this._iMatrix3D),this._pSceneTransformDirty=!1},DisplayObject.prototype._iAddRenderable=function(renderable){return this._pRenderables.push(renderable),renderable},DisplayObject.prototype._iRemoveRenderable=function(renderable){var index=this._pRenderables.indexOf(renderable);return this._pRenderables.splice(index,1),renderable},DisplayObject.prototype._iTestCollision=function(){return!1},DisplayObject.prototype._iInternalUpdate=function(){this._iController&&this._iController.update()},DisplayObject.prototype._iIsVisible=function(){return this._pImplicitVisibility},DisplayObject.prototype._iIsMouseEnabled=function(){return this._pImplicitMouseEnabled},DisplayObject.prototype._iSetScene=function(value){this._pScene!=value&&(this._pUpdateScene(value),this._pSceneTransformDirty||this._pIgnoreTransform||this.pInvalidateSceneTransform())},DisplayObject.prototype._pUpdateScene=function(value){this._pScene&&(this._pScene.dispatchEvent(new away.events.SceneEvent(away.events.SceneEvent.REMOVED_FROM_SCENE,this)),this._pScene.iUnregisterEntity(this)),this._pScene=value,value&&(value.dispatchEvent(new away.events.SceneEvent(away.events.SceneEvent.ADDED_TO_SCENE,this)),value.iRegisterEntity(this)),this.notifySceneChange()},DisplayObject.prototype.notifyPositionChanged=function(){this._positionChanged||(this._positionChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.POSITION_CHANGED,this)),this.dispatchEvent(this._positionChanged)},DisplayObject.prototype.notifyRotationChanged=function(){this._rotationChanged||(this._rotationChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.ROTATION_CHANGED,this)),this.dispatchEvent(this._rotationChanged)},DisplayObject.prototype.notifyScaleChanged=function(){this._scaleChanged||(this._scaleChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.SCALE_CHANGED,this)),this.dispatchEvent(this._scaleChanged)},DisplayObject.prototype.notifySceneChange=function(){this._listenToSceneChanged&&(this._scenechanged||(this._scenechanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.SCENE_CHANGED,this)),this.dispatchEvent(this._scenechanged))},DisplayObject.prototype.notifySceneTransformChange=function(){this._sceneTransformChanged||(this._sceneTransformChanged=new away.events.DisplayObjectEvent(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this)),this.dispatchEvent(this._sceneTransformChanged)},DisplayObject.prototype.invalidateMatrix3D=function(){this._matrix3DDirty||(this._matrix3DDirty=!0,this._pSceneTransformDirty||this._pIgnoreTransform||this.pInvalidateSceneTransform())},DisplayObject.prototype.invalidatePartition=function(){this._iAssignedPartition&&this._iAssignedPartition.iMarkForUpdate(this)},DisplayObject.prototype.invalidatePivot=function(){this._pivotZero=0==this._pivot.x&&0==this._pivot.y&&0==this._pivot.z,this._pivotDirty||(this._pivotDirty=!0,this.invalidateMatrix3D())},DisplayObject.prototype.invalidatePosition=function(){this._positionDirty||(this._positionDirty=!0,this.invalidateMatrix3D(),this._listenToPositionChanged&&this.notifyPositionChanged())},DisplayObject.prototype.invalidateRotation=function(){this._rotationDirty||(this._rotationDirty=!0,this.invalidateMatrix3D(),this._listenToRotationChanged&&this.notifyRotationChanged())},DisplayObject.prototype.invalidateScale=function(){this._scaleDirty||(this._scaleDirty=!0,this.invalidateMatrix3D(),this._listenToScaleChanged&&this.notifyScaleChanged())},DisplayObject}(away.library.NamedAssetBase);base.DisplayObject=DisplayObject}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var Geometry=function(_super){function Geometry(){_super.call(this),this._subGeometries=new Array}return __extends(Geometry,_super),Object.defineProperty(Geometry.prototype,"assetType",{get:function(){return away.library.AssetType.GEOMETRY},enumerable:!0,configurable:!0}),Object.defineProperty(Geometry.prototype,"subGeometries",{get:function(){return this._subGeometries},enumerable:!0,configurable:!0}),Geometry.prototype.getSubGeometries=function(){return this._subGeometries},Geometry.prototype.applyTransformation=function(transform){for(var len=this._subGeometries.length,i=0;len>i;++i)this._subGeometries[i].applyTransformation(transform)},Geometry.prototype.addSubGeometry=function(subGeometry){this._subGeometries.push(subGeometry),subGeometry.parentGeometry=this,this.hasEventListener(away.events.GeometryEvent.SUB_GEOMETRY_ADDED)&&this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.SUB_GEOMETRY_ADDED,subGeometry)),this.iInvalidateBounds(subGeometry)},Geometry.prototype.removeSubGeometry=function(subGeometry){this._subGeometries.splice(this._subGeometries.indexOf(subGeometry),1),subGeometry.parentGeometry=null,this.hasEventListener(away.events.GeometryEvent.SUB_GEOMETRY_REMOVED)&&this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.SUB_GEOMETRY_REMOVED,subGeometry)),this.iInvalidateBounds(subGeometry)},Geometry.prototype.clone=function(){for(var clone=new Geometry,len=this._subGeometries.length,i=0;len>i;++i)clone.addSubGeometry(this._subGeometries[i].clone());return clone},Geometry.prototype.scale=function(scale){for(var numSubGeoms=this._subGeometries.length,i=0;numSubGeoms>i;++i)this._subGeometries[i].scale(scale)},Geometry.prototype.dispose=function(){for(var numSubGeoms=this._subGeometries.length,i=0;numSubGeoms>i;++i){var subGeom=this._subGeometries[0];this.removeSubGeometry(subGeom),subGeom.dispose()}},Geometry.prototype.scaleUV=function(scaleU,scaleV){"undefined"==typeof scaleU&&(scaleU=1),"undefined"==typeof scaleV&&(scaleV=1);for(var numSubGeoms=this._subGeometries.length,i=0;numSubGeoms>i;++i)this._subGeometries[i].scaleUV(scaleU,scaleV)},Geometry.prototype.iInvalidateBounds=function(subGeom){this.hasEventListener(away.events.GeometryEvent.BOUNDS_INVALID)&&this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.BOUNDS_INVALID,subGeom))},Geometry}(away.library.NamedAssetBase);base.Geometry=Geometry}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var GradientType=function(){function GradientType(){}return GradientType.LINEAR="linear",GradientType.RADIAL="radial",GradientType}();base.GradientType=GradientType}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var Graphics=function(){function Graphics(){}return Graphics.prototype.beginBitmapFill=function(bitmap,matrix,repeat,smooth){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof repeat&&(repeat=!0),"undefined"==typeof smooth&&(smooth=!1)},Graphics.prototype.beginFill=function(color,alpha){"undefined"==typeof alpha&&(alpha=1)},Graphics.prototype.beginGradientFill=function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof spreadMethod&&(spreadMethod="pad"),"undefined"==typeof interpolationMethod&&(interpolationMethod="rgb"),"undefined"==typeof focalPointRatio&&(focalPointRatio=0)},Graphics.prototype.clear=function(){},Graphics.prototype.copyFrom=function(){},Graphics.prototype.cubicCurveTo=function(){},Graphics.prototype.curveTo=function(){},Graphics.prototype.drawCircle=function(){},Graphics.prototype.drawEllipse=function(){},Graphics.prototype.drawGraphicsData=function(){},Graphics.prototype.drawPath=function(){},Graphics.prototype.drawRect=function(){},Graphics.prototype.drawRoundRect=function(x,y,width,height,ellipseWidth,ellipseHeight){"undefined"==typeof ellipseHeight&&(ellipseHeight=0/0)},Graphics.prototype.drawTriangles=function(vertices,indices,uvtData,culling){"undefined"==typeof indices&&(indices=null),"undefined"==typeof uvtData&&(uvtData=null),"undefined"==typeof culling&&(culling=null)},Graphics.prototype.endFill=function(){},Graphics.prototype.lineBitmapStyle=function(bitmap,matrix,repeat,smooth){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof repeat&&(repeat=!0),"undefined"==typeof smooth&&(smooth=!1)},Graphics.prototype.lineGradientStyle=function(type,colors,alphas,ratios,matrix,spreadMethod,interpolationMethod,focalPointRatio){"undefined"==typeof matrix&&(matrix=null),"undefined"==typeof spreadMethod&&(spreadMethod=null),"undefined"==typeof interpolationMethod&&(interpolationMethod=null),"undefined"==typeof focalPointRatio&&(focalPointRatio=0)},Graphics.prototype.lineStyle=function(thickness,color,alpha,pixelHinting,scaleMode,caps,joints,miterLimit){"undefined"==typeof thickness&&(thickness=0),"undefined"==typeof color&&(color=0),"undefined"==typeof alpha&&(alpha=1),"undefined"==typeof pixelHinting&&(pixelHinting=!1),"undefined"==typeof scaleMode&&(scaleMode=null),"undefined"==typeof caps&&(caps=null),"undefined"==typeof joints&&(joints=null),"undefined"==typeof miterLimit&&(miterLimit=3)},Graphics.prototype.lineTo=function(){},Graphics.prototype.moveTo=function(){},Graphics}();base.Graphics=Graphics}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var GraphicsPathWinding=function(){function GraphicsPathWinding(){}return GraphicsPathWinding.EVEN_ODD="evenOdd",GraphicsPathWinding.NON_ZERO="nonZero",GraphicsPathWinding}();base.GraphicsPathWinding=GraphicsPathWinding}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var InterpolationMethod=function(){function InterpolationMethod(){}return InterpolationMethod.LINEAR_RGB="linearRGB",InterpolationMethod.RGB="rgb",InterpolationMethod}();base.InterpolationMethod=InterpolationMethod}(away.base||(away.base={}));away.base}(away||(away={}));
+var away;!function(away){!function(base){var SubGeometryBase=function(_super){function SubGeometryBase(concatenatedArrays){_super.call(this),this._pStrideOffsetDirty=!0,this._pConcatenateArrays=!0,this._pStride=new Object,this._pOffset=new Object,this._pConcatenateArrays=concatenatedArrays}return __extends(SubGeometryBase,_super),SubGeometryBase.prototype._pUpdateStrideOffset=function(){throw new away.errors.AbstractMethodError},Object.defineProperty(SubGeometryBase.prototype,"subMeshClass",{get:function(){return this._pSubMeshClass},enumerable:!0,configurable:!0}),Object.defineProperty(SubGeometryBase.prototype,"concatenateArrays",{get:function(){return this._pConcatenateArrays},set:function(value){this._pConcatenateArrays!=value&&(this._pConcatenateArrays=value,this._pStrideOffsetDirty=!0,value&&this._pNotifyVerticesUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(SubGeometryBase.prototype,"indices",{get:function(){return this._pIndices},enumerable:!0,configurable:!0}),Object.defineProperty(SubGeometryBase.prototype,"vertices",{get:function(){return this.updateVertices(),this._pVertices},enumerable:!0,configurable:!0}),Object.defineProperty(SubGeometryBase.prototype,"numTriangles",{get:function(){return this._numTriangles},enumerable:!0,configurable:!0}),Object.defineProperty(SubGeometryBase.prototype,"numVertices",{get:function(){return this._pNumVertices},enumerable:!0,configurable:!0}),SubGeometryBase.prototype.getStride=function(dataType){return this._pStrideOffsetDirty&&this._pUpdateStrideOffset(),this._pStride[dataType]},SubGeometryBase.prototype.getOffset=function(dataType){return this._pStrideOffsetDirty&&this._pUpdateStrideOffset(),this._pOffset[dataType]},SubGeometryBase.prototype.updateVertices=function(){throw new away.errors.AbstractMethodError},SubGeometryBase.prototype.dispose=function(){this._pIndices=null,this._pVertices=null},SubGeometryBase.prototype.updateIndices=function(indices){this._pIndices=indices,this._numIndices=indices.length,this._numTriangles=this._numIndices/3,this.notifyIndicesUpdate()},SubGeometryBase.prototype.pInvalidateBounds=function(){this.parentGeometry&&this.parentGeometry.iInvalidateBounds(this)},SubGeometryBase.prototype.clone=function(){throw new away.errors.AbstractMethodError},SubGeometryBase.prototype.applyTransformation=function(){},SubGeometryBase.prototype.scale=function(){},SubGeometryBase.prototype.scaleUV=function(scaleU,scaleV){"undefined"==typeof scaleU&&(scaleU=1),"undefined"==typeof scaleV&&(scaleV=1)},SubGeometryBase.prototype.getBoundingPositions=function(){throw new away.errors.AbstractMethodError},SubGeometryBase.prototype.notifyIndicesUpdate=function(){this._indicesUpdated||(this._indicesUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.INDICES_UPDATED)),this.dispatchEvent(this._indicesUpdated)},SubGeometryBase.prototype._pNotifyVerticesUpdate=function(){throw new away.errors.AbstractMethodError},SubGeometryBase}(away.library.NamedAssetBase);base.SubGeometryBase=SubGeometryBase}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var SubMeshBase=function(_super){function SubMeshBase(){_super.call(this),this._iIndex=0,this._renderables=new Array}return __extends(SubMeshBase,_super),Object.defineProperty(SubMeshBase.prototype,"animator",{get:function(){return this._pParentMesh.animator},enumerable:!0,configurable:!0}),Object.defineProperty(SubMeshBase.prototype,"material",{get:function(){return this._material||this._pParentMesh.material},set:function(value){this.material&&this.material.iRemoveOwner(this),this._material=value,this.material&&this.material.iAddOwner(this)},enumerable:!0,configurable:!0}),Object.defineProperty(SubMeshBase.prototype,"sceneTransform",{get:function(){return this._pParentMesh.sceneTransform},enumerable:!0,configurable:!0}),Object.defineProperty(SubMeshBase.prototype,"parentMesh",{get:function(){return this._pParentMesh},enumerable:!0,configurable:!0}),Object.defineProperty(SubMeshBase.prototype,"uvTransform",{get:function(){return this._uvTransform||this._pParentMesh.uvTransform},set:function(value){this._uvTransform=value},enumerable:!0,configurable:!0}),SubMeshBase.prototype.dispose=function(){this.material=null;for(var len=this._renderables.length,i=0;len>i;i++)this._renderables[i].dispose()},SubMeshBase.prototype.getRenderSceneTransform=function(camera){return this._pParentMesh.getRenderSceneTransform(camera)},SubMeshBase.prototype._iAddRenderable=function(renderable){return this._renderables.push(renderable),renderable},SubMeshBase.prototype._iRemoveRenderable=function(renderable){var index=this._renderables.indexOf(renderable);return this._renderables.splice(index,1),renderable},SubMeshBase.prototype._iInvalidateRenderableGeometry=function(){for(var len=this._renderables.length,i=0;len>i;i++)this._renderables[i].invalidateGeometry()},SubMeshBase.prototype._iCollectRenderable=function(){throw new away.errors.AbstractMethodError},SubMeshBase.prototype._iGetExplicitMaterial=function(){return this._material},SubMeshBase}(away.library.NamedAssetBase);base.SubMeshBase=SubMeshBase}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var JointStyle=function(){function JointStyle(){}return JointStyle.BEVEL="bevel",JointStyle.MITER="miter",JointStyle.ROUND="round",JointStyle}();base.JointStyle=JointStyle}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var LineScaleMode=function(){function LineScaleMode(){}return LineScaleMode.HORIZONTAL="horizontal",LineScaleMode.NONE="none",LineScaleMode.NORMAL="normal",LineScaleMode.VERTICAL="vertical",LineScaleMode}();base.LineScaleMode=LineScaleMode}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var LineSubGeometry=function(_super){function LineSubGeometry(){_super.call(this,!0),this._positionsDirty=!0,this._boundingPositionDirty=!0,this._thicknessDirty=!0,this._colorsDirty=!0,this._pSubMeshClass=away.base.LineSubMesh}return __extends(LineSubGeometry,_super),LineSubGeometry.prototype._pUpdateStrideOffset=function(){this._pOffset[LineSubGeometry.VERTEX_DATA]=0;var stride=0;this._pOffset[LineSubGeometry.START_POSITION_DATA]=stride,stride+=3,this._pOffset[LineSubGeometry.END_POSITION_DATA]=stride,stride+=3,this._pOffset[LineSubGeometry.THICKNESS_DATA]=stride,stride+=1,this._pOffset[LineSubGeometry.COLOR_DATA]=stride,stride+=4,this._pStride[LineSubGeometry.VERTEX_DATA]=stride,this._pStride[LineSubGeometry.START_POSITION_DATA]=stride,this._pStride[LineSubGeometry.END_POSITION_DATA]=stride,this._pStride[LineSubGeometry.THICKNESS_DATA]=stride,this._pStride[LineSubGeometry.COLOR_DATA]=stride;var len=this._pNumVertices*stride;null==this._pVertices?this._pVertices=new Array(len):this._pVertices.length!=len&&(this._pVertices.length=len),this._pStrideOffsetDirty=!1},Object.defineProperty(LineSubGeometry.prototype,"vertices",{get:function(){return this._positionsDirty&&this.updatePositions(this._startPositions,this._endPositions),this._thicknessDirty&&this.updateThickness(this._thickness),this._colorsDirty&&this.updateColors(this._startColors,this._endColors),this._pVertices},enumerable:!0,configurable:!0}),Object.defineProperty(LineSubGeometry.prototype,"startPositions",{get:function(){return this._positionsDirty&&this.updatePositions(this._startPositions,this._endPositions),this._startPositions},enumerable:!0,configurable:!0}),Object.defineProperty(LineSubGeometry.prototype,"endPositions",{get:function(){return this._positionsDirty&&this.updatePositions(this._startPositions,this._endPositions),this._endPositions},enumerable:!0,configurable:!0}),Object.defineProperty(LineSubGeometry.prototype,"thickness",{get:function(){return this._thicknessDirty&&this.updateThickness(this._thickness),this._thickness},enumerable:!0,configurable:!0}),Object.defineProperty(LineSubGeometry.prototype,"startColors",{get:function(){return this._colorsDirty&&this.updateColors(this._startColors,this._endColors),this._startColors},enumerable:!0,configurable:!0}),Object.defineProperty(LineSubGeometry.prototype,"endColors",{get:function(){return this._colorsDirty&&this.updateColors(this._startColors,this._endColors),this._endColors},enumerable:!0,configurable:!0}),Object.defineProperty(LineSubGeometry.prototype,"numSegments",{get:function(){return this._numSegments},enumerable:!0,configurable:!0}),LineSubGeometry.prototype.getBoundingPositions=function(){return this._boundingPositionDirty&&(this._boundingPositions=this.startPositions.concat(this.endPositions)),this._boundingPositions},LineSubGeometry.prototype.updatePositions=function(startValues,endValues){var i,j,values,index,stride,positions,indices;this._startPositions=startValues,null==this._startPositions&&(this._startPositions=new Array),this._endPositions=endValues,null==this._endPositions&&(this._endPositions=new Array),this._boundingPositionDirty=!0,this._numSegments=this._startPositions.length/3,this._pNumVertices=4*this._numSegments;var lenV=this._pNumVertices*this.getStride(LineSubGeometry.VERTEX_DATA);for(null==this._pVertices?this._pVertices=new Array(lenV):this._pVertices.length!=lenV&&(this._pVertices.length=lenV),i=0,j=0,index=this.getOffset(LineSubGeometry.START_POSITION_DATA),stride=this.getStride(LineSubGeometry.START_POSITION_DATA),positions=this._pVertices,indices=new Array;i>>24,(16711680&this._color)>>>16,(65280&this._color)>>>8,255&this._color),this._bufferClear=!0)},StageGL.prototype.present=function(){this._contextGL&&(this._contextGL.present(),this._activeProgram=null)},StageGL.prototype.addEventListener=function(type,listener){_super.prototype.addEventListener.call(this,type,listener)},StageGL.prototype.removeEventListener=function(type,listener){_super.prototype.removeEventListener.call(this,type,listener)},Object.defineProperty(StageGL.prototype,"scissorRect",{get:function(){return this._scissorRect},set:function(value){this._scissorRect=value,this._contextGL.setScissorRectangle(this._scissorRect)},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"stageGLIndex",{get:function(){return this._iStageGLIndex},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"usesSoftwareRendering",{get:function(){return this._usesSoftwareRendering},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"antiAlias",{get:function(){return this._antiAlias},set:function(antiAlias){this._antiAlias=antiAlias,this._backBufferDirty=!0},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"viewPort",{get:function(){return this._viewportDirty=!1,this._viewPort},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"color",{get:function(){return this._color},set:function(color){this._color=color},enumerable:!0,configurable:!0}),Object.defineProperty(StageGL.prototype,"bufferClear",{get:function(){return this._bufferClear},set:function(newBufferClear){this._bufferClear=newBufferClear},enumerable:!0,configurable:!0}),StageGL.prototype.activateBuffer=function(index,buffer,offset,format){buffer.stageGLs[this._iStageGLIndex]||(buffer.stageGLs[this._iStageGLIndex]=this),buffer.buffers[this._iStageGLIndex]||(buffer.buffers[this._iStageGLIndex]=this._contextGL.createVertexBuffer(buffer.data.length/buffer.dataPerVertex,buffer.dataPerVertex),buffer.invalid[this._iStageGLIndex]=!0),buffer.invalid[this._iStageGLIndex]&&(buffer.buffers[this._iStageGLIndex].uploadFromArray(buffer.data,0,buffer.data.length/buffer.dataPerVertex),buffer.invalid[this._iStageGLIndex]=!1),this._contextGL.setVertexBufferAt(index,buffer.buffers[this._iStageGLIndex],offset,format)},StageGL.prototype.disposeVertexData=function(buffer){buffer.buffers[this._iStageGLIndex].dispose(),buffer.buffers[this._iStageGLIndex]=null},StageGL.prototype.getIndexBuffer=function(buffer){return buffer.stageGLs[this._iStageGLIndex]||(buffer.stageGLs[this._iStageGLIndex]=this),buffer.buffers[this._iStageGLIndex]||(buffer.buffers[this._iStageGLIndex]=this._contextGL.createIndexBuffer(buffer.data.length/3),buffer.invalid[this._iStageGLIndex]=!0),buffer.invalid[this._iStageGLIndex]&&(buffer.buffers[this._iStageGLIndex].uploadFromArray(buffer.data,0,buffer.data.length/3),buffer.invalid[this._iStageGLIndex]=!1),buffer.buffers[this._iStageGLIndex]},StageGL.prototype.disposeIndexData=function(buffer){buffer.buffers[this._iStageGLIndex].dispose(),buffer.buffers[this._iStageGLIndex]=null},StageGL.prototype.freeContextGL=function(){this._contextGL&&(this._contextGL.dispose(),this.dispatchEvent(new away.events.StageGLEvent(away.events.StageGLEvent.CONTEXTGL_DISPOSED))),this._contextGL=null,this._initialised=!1},StageGL.prototype.onEnterFrame=function(){this._contextGL&&(this.clear(),this.notifyEnterFrame(),this.present(),this.notifyExitFrame())},StageGL.prototype.recoverFromDisposal=function(){return this._contextGL?!0:!1},StageGL.prototype.clearDepthBuffer=function(){this._contextGL&&this._contextGL.clear(0,0,0,1,1,0,away.gl.ContextGLClearMask.DEPTH)},StageGL}(away.events.EventDispatcher);base.StageGL=StageGL}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var TriangleCulling=function(){function TriangleCulling(){}return TriangleCulling.NEGATIVE="negative",TriangleCulling.NONE="none",TriangleCulling.POSITIVE="positive",TriangleCulling}();base.TriangleCulling=TriangleCulling}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var TriangleSubGeometry=function(_super){function TriangleSubGeometry(concatenatedArrays){_super.call(this,concatenatedArrays),this._positionsDirty=!0,this._faceNormalsDirty=!0,this._faceTangentsDirty=!0,this._vertexNormalsDirty=!0,this._vertexTangentsDirty=!0,this._uvsDirty=!0,this._secondaryUVsDirty=!0,this._jointIndicesDirty=!0,this._jointWeightsDirty=!0,this._concatenateArrays=!0,this._autoDeriveNormals=!0,this._autoDeriveTangents=!0,this._autoDeriveUVs=!1,this._useFaceWeights=!1,this._scaleU=1,this._scaleV=1,this._pSubMeshClass=away.base.TriangleSubMesh}return __extends(TriangleSubGeometry,_super),Object.defineProperty(TriangleSubGeometry.prototype,"scaleU",{get:function(){return this._scaleU},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"scaleV",{get:function(){return this._scaleV},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"useCondensedIndices",{get:function(){return this._useCondensedIndices},set:function(value){this._useCondensedIndices!=value&&(this._useCondensedIndices=value,this.notifyJointIndicesUpdate())},enumerable:!0,configurable:!0}),TriangleSubGeometry.prototype._pUpdateStrideOffset=function(){if(this._concatenateArrays){this._pOffset[TriangleSubGeometry.VERTEX_DATA]=0,this._pOffset[TriangleSubGeometry.POSITION_DATA]=0;var stride=3;null!=this._vertexNormals&&(this._pOffset[TriangleSubGeometry.NORMAL_DATA]=stride,stride+=3),null!=this._vertexTangents&&(this._pOffset[TriangleSubGeometry.TANGENT_DATA]=stride,stride+=3),null!=this._uvs&&(this._pOffset[TriangleSubGeometry.UV_DATA]=stride,stride+=2),null!=this._secondaryUVs&&(this._pOffset[TriangleSubGeometry.SECONDARY_UV_DATA]=stride,stride+=2),null!=this._jointIndices&&(this._pOffset[TriangleSubGeometry.JOINT_INDEX_DATA]=stride,stride+=this._jointsPerVertex),null!=this._jointWeights&&(this._pOffset[TriangleSubGeometry.JOINT_WEIGHT_DATA]=stride,stride+=this._jointsPerVertex),this._pStride[TriangleSubGeometry.VERTEX_DATA]=stride,this._pStride[TriangleSubGeometry.POSITION_DATA]=stride,this._pStride[TriangleSubGeometry.NORMAL_DATA]=stride,this._pStride[TriangleSubGeometry.TANGENT_DATA]=stride,this._pStride[TriangleSubGeometry.UV_DATA]=stride,this._pStride[TriangleSubGeometry.SECONDARY_UV_DATA]=stride,this._pStride[TriangleSubGeometry.JOINT_INDEX_DATA]=stride,this._pStride[TriangleSubGeometry.JOINT_WEIGHT_DATA]=stride;var len=this._pNumVertices*stride;null==this._pVertices?this._pVertices=new Array(len):this._pVertices.length!=len&&(this._pVertices.length=len)}else this._pOffset[TriangleSubGeometry.POSITION_DATA]=0,this._pOffset[TriangleSubGeometry.NORMAL_DATA]=0,this._pOffset[TriangleSubGeometry.TANGENT_DATA]=0,this._pOffset[TriangleSubGeometry.UV_DATA]=0,this._pOffset[TriangleSubGeometry.SECONDARY_UV_DATA]=0,this._pOffset[TriangleSubGeometry.JOINT_INDEX_DATA]=0,this._pOffset[TriangleSubGeometry.JOINT_WEIGHT_DATA]=0,this._pStride[TriangleSubGeometry.POSITION_DATA]=3,this._pStride[TriangleSubGeometry.NORMAL_DATA]=3,this._pStride[TriangleSubGeometry.TANGENT_DATA]=3,this._pStride[TriangleSubGeometry.UV_DATA]=2,this._pStride[TriangleSubGeometry.SECONDARY_UV_DATA]=2,this._pStride[TriangleSubGeometry.JOINT_INDEX_DATA]=this._jointsPerVertex,this._pStride[TriangleSubGeometry.JOINT_WEIGHT_DATA]=this._jointsPerVertex;this._pStrideOffsetDirty=!1},Object.defineProperty(TriangleSubGeometry.prototype,"jointsPerVertex",{get:function(){return this._jointsPerVertex},set:function(value){this._jointsPerVertex!=value&&(this._jointsPerVertex=value,this._pStrideOffsetDirty=!0,this._pConcatenateArrays&&this._pNotifyVerticesUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"autoDeriveUVs",{get:function(){return this._autoDeriveUVs},set:function(value){this._autoDeriveUVs!=value&&(this._autoDeriveUVs=value,value&&this.notifyUVsUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"autoDeriveNormals",{get:function(){return this._autoDeriveNormals},set:function(value){this._autoDeriveNormals!=value&&(this._autoDeriveNormals=value,value&&this.notifyNormalsUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"autoDeriveTangents",{get:function(){return this._autoDeriveTangents},set:function(value){this._autoDeriveTangents!=value&&(this._autoDeriveTangents=value,value&&this.notifyTangentsUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"vertices",{get:function(){return this._positionsDirty&&this.updatePositions(this._positions),this._vertexNormalsDirty&&this.updateVertexNormals(this._vertexNormals),this._vertexTangentsDirty&&this.updateVertexTangents(this._vertexTangents),this._uvsDirty&&this.updateUVs(this._uvs),this._secondaryUVsDirty&&this.updateSecondaryUVs(this._secondaryUVs),this._jointIndicesDirty&&this.updateJointIndices(this._jointIndices),this._jointWeightsDirty&&this.updateJointWeights(this._jointWeights),this._pVertices},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"positions",{get:function(){return this._positionsDirty&&this.updatePositions(this._positions),this._positions},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"vertexNormals",{get:function(){return this._vertexNormalsDirty&&this.updateVertexNormals(this._vertexNormals),this._vertexNormals},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"vertexTangents",{get:function(){return this._vertexTangentsDirty&&this.updateVertexTangents(this._vertexTangents),this._vertexTangents},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"faceNormals",{get:function(){return this._faceNormalsDirty&&this.updateFaceNormals(),this._faceNormals},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"faceTangents",{get:function(){return this._faceTangentsDirty&&this.updateFaceTangents(),this._faceTangents
+},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"uvs",{get:function(){return this._uvsDirty&&this.updateUVs(this._uvs),this._uvs},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"secondaryUVs",{get:function(){return this._secondaryUVsDirty&&this.updateSecondaryUVs(this._secondaryUVs),this._secondaryUVs},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"jointIndices",{get:function(){return this._jointIndicesDirty&&this.updateJointIndices(this._jointIndices),this._useCondensedIndices?this._condensedJointIndices:this._jointIndices},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"jointWeights",{get:function(){return this._jointWeightsDirty&&this.updateJointWeights(this._jointWeights),this._jointWeights},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"useFaceWeights",{get:function(){return this._useFaceWeights},set:function(value){this._useFaceWeights!=value&&(this._useFaceWeights=value,this._autoDeriveNormals&&this.notifyNormalsUpdate(),this._autoDeriveTangents&&this.notifyTangentsUpdate(),this._faceNormalsDirty=!0)},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"numCondensedJoints",{get:function(){return this._jointIndicesDirty&&this.updateJointIndices(this._jointIndices),this._numCondensedJoints},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubGeometry.prototype,"condensedIndexLookUp",{get:function(){return this._jointIndicesDirty&&this.updateJointIndices(this._jointIndices),this._condensedIndexLookUp},enumerable:!0,configurable:!0}),TriangleSubGeometry.prototype.getBoundingPositions=function(){return this._positionsDirty&&this.updatePositions(this._positions),this._positions},TriangleSubGeometry.prototype.updatePositions=function(values){var i,index,stride,positions;if(this._positions=values,null==this._positions&&(this._positions=new Array),this._pNumVertices=this._positions.length/3,this._concatenateArrays){var len=this._pNumVertices*this.getStride(TriangleSubGeometry.VERTEX_DATA);for(null==this._pVertices?this._pVertices=new Array(len):this._pVertices.length!=len&&(this._pVertices.length=len),i=0,index=this.getOffset(TriangleSubGeometry.POSITION_DATA),stride=this.getStride(TriangleSubGeometry.POSITION_DATA),positions=this._pVertices;iindex;)normals[index]=0,normals[index+1]=0,normals[index+2]=0,index+=stride;var weight,k=0,lenI=this._pIndices.length;for(i=0;lenI>i;)weight=this._useFaceWeights?this._faceWeights[k++]:1,index=offset+this._pIndices[i++]*stride,normals[index]+=this._faceNormals[f1]*weight,normals[index+1]+=this._faceNormals[f2]*weight,normals[index+2]+=this._faceNormals[f3]*weight,index=offset+this._pIndices[i++]*stride,normals[index]+=this._faceNormals[f1]*weight,normals[index+1]+=this._faceNormals[f2]*weight,normals[index+2]+=this._faceNormals[f3]*weight,index=offset+this._pIndices[i++]*stride,normals[index]+=this._faceNormals[f1]*weight,normals[index+1]+=this._faceNormals[f2]*weight,normals[index+2]+=this._faceNormals[f3]*weight,f1+=3,f2+=3,f3+=3;for(i=0,index=offset;lenV>index;){var vx=normals[index],vy=normals[index+1],vz=normals[index+2],d=1/Math.sqrt(vx*vx+vy*vy+vz*vz);this._concatenateArrays?(this._vertexNormals[i++]=normals[index]=vx*d,this._vertexNormals[i++]=normals[index+1]=vy*d,this._vertexNormals[i++]=normals[index+2]=vz*d):(normals[index]=vx*d,normals[index+1]=vy*d,normals[index+2]=vz*d),index+=stride}}else if(null!=this._vertexNormals&&null!=values||null==this._vertexNormals&&null==values||(this._concatenateArrays?this._pNotifyVerticesUpdate():this._pStrideOffsetDirty=!0),this._vertexNormals=values,null!=values&&this._concatenateArrays)for(i=0,index=this.getOffset(TriangleSubGeometry.NORMAL_DATA),stride=this.getStride(TriangleSubGeometry.NORMAL_DATA),normals=this._pVertices;iindex;)tangents[index]=0,tangents[index+1]=0,tangents[index+2]=0,index+=stride;var weight,k=0,f1=0,f2=1,f3=2;i=0;for(var lenI=this._pIndices.length;lenI>i;)weight=this._useFaceWeights?this._faceWeights[k++]:1,index=offset+this._pIndices[i++]*stride,tangents[index++]+=this._faceTangents[f1]*weight,tangents[index++]+=this._faceTangents[f2]*weight,tangents[index]+=this._faceTangents[f3]*weight,index=offset+this._pIndices[i++]*stride,tangents[index++]+=this._faceTangents[f1]*weight,tangents[index++]+=this._faceTangents[f2]*weight,tangents[index]+=this._faceTangents[f3]*weight,index=offset+this._pIndices[i++]*stride,tangents[index++]+=this._faceTangents[f1]*weight,tangents[index++]+=this._faceTangents[f2]*weight,tangents[index]+=this._faceTangents[f3]*weight,f1+=3,f2+=3,f3+=3;for(i=0,index=offset;lenV>index;){var vx=tangents[index],vy=tangents[index+1],vz=tangents[index+2],d=1/Math.sqrt(vx*vx+vy*vy+vz*vz);this._concatenateArrays?(this._vertexTangents[i++]=tangents[index]=vx*d,this._vertexTangents[i++]=tangents[index+1]=vy*d,this._vertexTangents[i++]=tangents[index+2]=vz*d):(tangents[index]=vx*d,tangents[index+1]=vy*d,tangents[index+2]=vz*d),index+=stride}}else if(null!=this._vertexTangents&&null!=values||null==this._vertexTangents&&null==values||(this._concatenateArrays?this._pNotifyVerticesUpdate():this._pStrideOffsetDirty=!0),this._vertexTangents=values,null!=values&&this._concatenateArrays)for(i=0,index=this.getOffset(TriangleSubGeometry.TANGENT_DATA),stride=this.getStride(TriangleSubGeometry.TANGENT_DATA),tangents=this._pVertices;iindex;)this._concatenateArrays?(this._uvs[i++]=uvs[index]=.5*uvIdx,this._uvs[i++]=uvs[index+1]=1-(1&uvIdx)):(uvs[index]=.5*uvIdx,uvs[index+1]=1-(1&uvIdx)),3==++uvIdx&&(uvIdx=0),index+=stride}else if(null!=this._uvs&&null!=values||null==this._uvs&&null==values||(this._concatenateArrays?this._pNotifyVerticesUpdate():this._pStrideOffsetDirty=!0),this._uvs=values,null!=values&&this._concatenateArrays)for(i=0,index=this.getOffset(TriangleSubGeometry.UV_DATA),stride=this.getStride(TriangleSubGeometry.UV_DATA),uvs=this._pVertices;iindex;)uvs[index]*=ratioU,uvs[index+1]*=ratioV,index+=stride;this.notifyUVsUpdate()},TriangleSubGeometry.prototype.scale=function(scale){var i,index,offset,stride,positions;positions=this._positions;var len=positions.length;for(offset=0,stride=3,i=0,index=offset;len>i;)positions[index]*=scale,positions[index+1]*=scale,positions[index+2]*=scale,i+=3,index+=stride;this.notifyPositionsUpdate()},TriangleSubGeometry.prototype.applyTransformation=function(transform){var positions,normals,tangents;this._concatenateArrays?(positions=this._pVertices,normals=this._pVertices,tangents=this._pVertices):(positions=this._positions,normals=this._vertexNormals,tangents=this._vertexTangents);var i,i1,i2,invTranspose,len=this._positions.length/3,vector=new away.geom.Vector3D,bakeNormals=null!=this._vertexNormals,bakeTangents=null!=this._vertexTangents;(bakeNormals||bakeTangents)&&(invTranspose=transform.clone(),invTranspose.invert(),invTranspose.transpose());var vi0=this.getOffset(TriangleSubGeometry.POSITION_DATA),ni0=this.getOffset(TriangleSubGeometry.NORMAL_DATA),ti0=this.getOffset(TriangleSubGeometry.TANGENT_DATA),vStride=this.getStride(TriangleSubGeometry.POSITION_DATA),nStride=this.getStride(TriangleSubGeometry.NORMAL_DATA),tStride=this.getStride(TriangleSubGeometry.TANGENT_DATA);for(i=0;len>i;++i)i1=vi0+1,i2=vi0+2,vector.x=positions[vi0],vector.y=positions[i1],vector.z=positions[i2],vector=transform.transformVector(vector),positions[vi0]=vector.x,positions[i1]=vector.y,positions[i2]=vector.z,vi0+=vStride,bakeNormals&&(i1=ni0+1,i2=ni0+2,vector.x=normals[ni0],vector.y=normals[i1],vector.z=normals[i2],vector=invTranspose.deltaTransformVector(vector),vector.normalize(),normals[ni0]=vector.x,normals[i1]=vector.y,normals[i2]=vector.z,ni0+=nStride),bakeTangents&&(i1=ti0+1,i2=ti0+2,vector.x=tangents[ti0],vector.y=tangents[i1],vector.z=tangents[i2],vector=invTranspose.deltaTransformVector(vector),vector.normalize(),tangents[ti0]=vector.x,tangents[i1]=vector.y,tangents[i2]=vector.z,ti0+=tStride);this.notifyPositionsUpdate(),this.notifyNormalsUpdate(),this.notifyTangentsUpdate()},TriangleSubGeometry.prototype.updateFaceTangents=function(){var index1,index2,index3,vi,v0,dv1,dv2,denom,x0,y0,z0,dx1,dy1,dz1,dx2,dy2,dz2,cx,cy,cz,i=0,positions=this._positions,uvs=this._uvs,len=this._pIndices.length;for(null==this._faceTangents&&(this._faceTangents=new Array(len));len>i;)index1=this._pIndices[i],index2=this._pIndices[i+1],index3=this._pIndices[i+2],v0=uvs[2*index1+1],dv1=uvs[2*index2+1]-v0,dv2=uvs[2*index3+1]-v0,vi=3*index1,x0=positions[vi],y0=positions[vi+1],z0=positions[vi+2],vi=3*index2,dx1=positions[vi]-x0,dy1=positions[vi+1]-y0,dz1=positions[vi+2]-z0,vi=3*index3,dx2=positions[vi]-x0,dy2=positions[vi+1]-y0,dz2=positions[vi+2]-z0,cx=dv2*dx1-dv1*dx2,cy=dv2*dy1-dv1*dy2,cz=dv2*dz1-dv1*dz2,denom=1/Math.sqrt(cx*cx+cy*cy+cz*cz),this._faceTangents[i++]=denom*cx,this._faceTangents[i++]=denom*cy,this._faceTangents[i++]=denom*cz;this._faceTangentsDirty=!1},TriangleSubGeometry.prototype.updateFaceNormals=function(){var index,x1,x2,x3,y1,y2,y3,z1,z2,z3,dx1,dy1,dz1,dx2,dy2,dz2,cx,cy,cz,d,i=0,j=0,k=0,positions=this._positions,len=this._pIndices.length;for(null==this._faceNormals&&(this._faceNormals=new Array(len)),this._useFaceWeights&&null==this._faceWeights&&(this._faceWeights=new Array(len/3));len>i;){if(index=3*this._pIndices[i++],x1=positions[index],y1=positions[index+1],z1=positions[index+2],index=3*this._pIndices[i++],x2=positions[index],y2=positions[index+1],z2=positions[index+2],index=3*this._pIndices[i++],x3=positions[index],y3=positions[index+1],z3=positions[index+2],dx1=x3-x1,dy1=y3-y1,dz1=z3-z1,dx2=x2-x1,dy2=y2-y1,dz2=z2-z1,cx=dz1*dy2-dy1*dz2,cy=dx1*dz2-dz1*dx2,cz=dy1*dx2-dx1*dy2,d=Math.sqrt(cx*cx+cy*cy+cz*cz),this._useFaceWeights){var w=1e4*d;1>w&&(w=1),this._faceWeights[k++]=w}d=1/d,this._faceNormals[j++]=cx*d,this._faceNormals[j++]=cy*d,this._faceNormals[j++]=cz*d}this._faceNormalsDirty=!1},TriangleSubGeometry.prototype._pNotifyVerticesUpdate=function(){this._pStrideOffsetDirty=!0,this.notifyPositionsUpdate(),this.notifyNormalsUpdate(),this.notifyTangentsUpdate(),this.notifyUVsUpdate(),this.notifySecondaryUVsUpdate(),this.notifyJointIndicesUpdate(),this.notifyJointWeightsUpdate()},TriangleSubGeometry.prototype.notifyPositionsUpdate=function(){this._positionsDirty||(this._positionsDirty=!0,this._positionsUpdated||(this._positionsUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED,TriangleSubGeometry.POSITION_DATA)),this.dispatchEvent(this._positionsUpdated))},TriangleSubGeometry.prototype.notifyNormalsUpdate=function(){this._vertexNormalsDirty||(this._vertexNormalsDirty=!0,this._normalsUpdated||(this._normalsUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED,TriangleSubGeometry.NORMAL_DATA)),this.dispatchEvent(this._normalsUpdated))},TriangleSubGeometry.prototype.notifyTangentsUpdate=function(){this._vertexTangentsDirty||(this._vertexTangentsDirty=!0,this._tangentsUpdated||(this._tangentsUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED,TriangleSubGeometry.TANGENT_DATA)),this.dispatchEvent(this._tangentsUpdated))},TriangleSubGeometry.prototype.notifyUVsUpdate=function(){this._uvsDirty||(this._uvsDirty=!0,this._uvsUpdated||(this._uvsUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED,TriangleSubGeometry.UV_DATA)),this.dispatchEvent(this._uvsUpdated))},TriangleSubGeometry.prototype.notifySecondaryUVsUpdate=function(){this._secondaryUVsDirty||(this._secondaryUVsDirty=!0,this._secondaryUVsUpdated||(this._secondaryUVsUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED,TriangleSubGeometry.SECONDARY_UV_DATA)),this.dispatchEvent(this._secondaryUVsUpdated))},TriangleSubGeometry.prototype.notifyJointIndicesUpdate=function(){this._jointIndicesDirty||(this._jointIndicesDirty=!0,this._jointIndicesUpdated||(this._jointIndicesUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED,TriangleSubGeometry.JOINT_INDEX_DATA)),this.dispatchEvent(this._jointIndicesUpdated))},TriangleSubGeometry.prototype.notifyJointWeightsUpdate=function(){this._jointWeightsDirty||(this._jointWeightsDirty=!0,this._jointWeightsUpdated||(this._jointWeightsUpdated=new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED,TriangleSubGeometry.JOINT_WEIGHT_DATA)),this.dispatchEvent(this._jointWeightsUpdated))},TriangleSubGeometry.VERTEX_DATA="vertices",TriangleSubGeometry.POSITION_DATA="positions",TriangleSubGeometry.NORMAL_DATA="vertexNormals",TriangleSubGeometry.TANGENT_DATA="vertexTangents",TriangleSubGeometry.UV_DATA="uvs",TriangleSubGeometry.SECONDARY_UV_DATA="secondaryUVs",TriangleSubGeometry.JOINT_INDEX_DATA="jointIndices",TriangleSubGeometry.JOINT_WEIGHT_DATA="jointWeights",TriangleSubGeometry.POSITION_FORMAT=away.gl.ContextGLVertexBufferFormat.FLOAT_3,TriangleSubGeometry.NORMAL_FORMAT=away.gl.ContextGLVertexBufferFormat.FLOAT_3,TriangleSubGeometry.TANGENT_FORMAT=away.gl.ContextGLVertexBufferFormat.FLOAT_3,TriangleSubGeometry.UV_FORMAT=away.gl.ContextGLVertexBufferFormat.FLOAT_2,TriangleSubGeometry.SECONDARY_UV_FORMAT=away.gl.ContextGLVertexBufferFormat.FLOAT_2,TriangleSubGeometry}(away.base.SubGeometryBase);base.TriangleSubGeometry=TriangleSubGeometry}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(base){var TriangleSubMesh=function(_super){function TriangleSubMesh(subGeometry,parentMesh,material){"undefined"==typeof material&&(material=null),_super.call(this),this._pParentMesh=parentMesh,this._subGeometry=subGeometry,this.material=material}return __extends(TriangleSubMesh,_super),Object.defineProperty(TriangleSubMesh.prototype,"assetType",{get:function(){return away.library.AssetType.TRIANGLE_SUB_MESH},enumerable:!0,configurable:!0}),Object.defineProperty(TriangleSubMesh.prototype,"subGeometry",{get:function(){return this._subGeometry},enumerable:!0,configurable:!0}),TriangleSubMesh.prototype.dispose=function(){_super.prototype.dispose.call(this)},TriangleSubMesh.prototype._iCollectRenderable=function(renderer){renderer.applyTriangleSubMesh(this)},TriangleSubMesh}(away.base.SubMeshBase);base.TriangleSubMesh=TriangleSubMesh}(away.base||(away.base={}));away.base}(away||(away={}));var away;!function(away){!function(pool){var EntityListItem=function(){function EntityListItem(){}return EntityListItem}();pool.EntityListItem=EntityListItem}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var EntityListItemPool=function(){function EntityListItemPool(){this._index=0,this._poolSize=0,this._pool=[]}return EntityListItemPool.prototype.getItem=function(){var item;return this._index==this._poolSize?(item=new away.pool.EntityListItem,this._pool[this._index++]=item,++this._poolSize):item=this._pool[this._index++],item},EntityListItemPool.prototype.freeAll=function(){this._index=0},EntityListItemPool.prototype.dispose=function(){this._pool.length=0},EntityListItemPool}();pool.EntityListItemPool=EntityListItemPool}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var RenderablePool=function(){function RenderablePool(renderableClass){this._pool=new Object,this._renderableClass=renderableClass}return RenderablePool.prototype.getItem=function(materialOwner){return this._pool[materialOwner.id]||(this._pool[materialOwner.id]=materialOwner._iAddRenderable(new this._renderableClass(this,materialOwner)))},RenderablePool.prototype.disposeItem=function(materialOwner){materialOwner._iRemoveRenderable(this._pool[materialOwner.id]),this._pool[materialOwner.id]=null},RenderablePool.getPool=function(renderableClass){var pool=RenderablePool._pools[renderableClass.id];return void 0!=pool?pool:RenderablePool._pools[renderableClass.id]=new RenderablePool(renderableClass)},RenderablePool.disposePool=function(renderableClass){RenderablePool._pools[renderableClass.id]&&(RenderablePool._pools[renderableClass.id]=void 0)},RenderablePool._pools=new Object,RenderablePool}();pool.RenderablePool=RenderablePool}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var CSSRenderableBase=function(){function CSSRenderableBase(pool,sourceEntity,materialOwner){this._pool=pool,this.sourceEntity=sourceEntity,this.materialOwner=materialOwner}return CSSRenderableBase.prototype.dispose=function(){this._pool.disposeItem(this.materialOwner)},CSSRenderableBase.prototype.invalidateGeometry=function(){},CSSRenderableBase.prototype.invalidateIndexData=function(){},CSSRenderableBase.prototype.invalidateVertexData=function(){},CSSRenderableBase}();pool.CSSRenderableBase=CSSRenderableBase}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var CSSBillboardRenderable=function(_super){function CSSBillboardRenderable(pool,billboard){_super.call(this,pool,billboard,billboard);var div=document.createElement("div");div.onmousedown=function(){return!1},this.htmlElement=div;var style=div.style;style.position="absolute",style.transformOrigin=style["-webkit-transform-origin"]=style["-moz-transform-origin"]=style["-o-transform-origin"]=style["-ms-transform-origin"]="0% 0%";var img=document.createElement("div");div.appendChild(img),img.className="material"+billboard.material.id}return __extends(CSSBillboardRenderable,_super),CSSBillboardRenderable.id="billboard",CSSBillboardRenderable}(away.pool.CSSRenderableBase);pool.CSSBillboardRenderable=CSSBillboardRenderable}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(pool){var CSSLineSegmentRenderable=function(_super){function CSSLineSegmentRenderable(pool,lineSegment){_super.call(this,pool,lineSegment,lineSegment);var div=document.createElement("div");div.onmousedown=function(){return!1},this.htmlElement=div;var style=div.style;style.position="absolute",style.transformOrigin=style["-webkit-transform-origin"]=style["-moz-transform-origin"]=style["-o-transform-origin"]=style["-ms-transform-origin"]="0% 0%";var img=document.createElement("div");div.appendChild(img),img.className="material"+lineSegment.material.id}return __extends(CSSLineSegmentRenderable,_super),CSSLineSegmentRenderable.id="lineSegment",CSSLineSegmentRenderable}(away.pool.CSSRenderableBase);pool.CSSLineSegmentRenderable=CSSLineSegmentRenderable}(away.pool||(away.pool={}));away.pool}(away||(away={}));var away;!function(away){!function(traverse){var CollectorBase=function(){function CollectorBase(){this._numCullPlanes=0,this._pNumEntities=0,this._pNumInteractiveEntities=0,this._pEntityListItemPool=new away.pool.EntityListItemPool}return Object.defineProperty(CollectorBase.prototype,"camera",{get:function(){return this._pCamera},set:function(value){this._pCamera=value,this._cullPlanes=this._pCamera.frustumPlanes},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"cullPlanes",{get:function(){return this._customCullPlanes},set:function(value){this._customCullPlanes=value},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"entityHead",{get:function(){return this._pEntityHead},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"numEntities",{get:function(){return this._pNumEntities},enumerable:!0,configurable:!0}),Object.defineProperty(CollectorBase.prototype,"numInteractiveEntities",{get:function(){return this._pNumInteractiveEntities},enumerable:!0,configurable:!0}),CollectorBase.prototype.clear=function(){this._pNumEntities=this._pNumInteractiveEntities=0,this._cullPlanes=this._customCullPlanes?this._customCullPlanes:this._pCamera?this._pCamera.frustumPlanes:null,this._numCullPlanes=this._cullPlanes?this._cullPlanes.length:0,this._pEntityHead=null,this._pEntityListItemPool.freeAll()},CollectorBase.prototype.enterNode=function(node){var enter=this.scene._iCollectionMark!=node._iCollectionMark&&node.isInFrustum(this._cullPlanes,this._numCullPlanes);return node._iCollectionMark=this.scene._iCollectionMark,enter},CollectorBase.prototype.applyDirectionalLight=function(){},CollectorBase.prototype.applyEntity=function(entity){this._pNumEntities++,entity._iIsMouseEnabled()&&this._pNumInteractiveEntities++;var item=this._pEntityListItemPool.getItem();item.entity=entity,item.next=this._pEntityHead,this._pEntityHead=item},CollectorBase.prototype.applyLightProbe=function(){},CollectorBase.prototype.applyPointLight=function(){},CollectorBase}();traverse.CollectorBase=CollectorBase}(away.traverse||(away.traverse={}));away.traverse}(away||(away={}));var away;!function(away){!function(traverse){var RaycastCollector=function(_super){function RaycastCollector(){_super.call(this),this._rayPosition=new away.geom.Vector3D,this._rayDirection=new away.geom.Vector3D,this._iCollectionMark=0}return __extends(RaycastCollector,_super),Object.defineProperty(RaycastCollector.prototype,"rayPosition",{get:function(){return this._rayPosition},set:function(value){this._rayPosition=value},enumerable:!0,configurable:!0}),Object.defineProperty(RaycastCollector.prototype,"rayDirection",{get:function(){return this._rayDirection},set:function(value){this._rayDirection=value},enumerable:!0,configurable:!0}),RaycastCollector.prototype.enterNode=function(node){return node.isIntersectingRay(this._rayPosition,this._rayDirection)},RaycastCollector}(away.traverse.CollectorBase);traverse.RaycastCollector=RaycastCollector}(away.traverse||(away.traverse={}));away.traverse}(away||(away={}));var away;!function(away){!function(traverse){var CSSEntityCollector=function(_super){function CSSEntityCollector(){_super.call(this)}return __extends(CSSEntityCollector,_super),CSSEntityCollector}(away.traverse.CollectorBase);traverse.CSSEntityCollector=CSSEntityCollector}(away.traverse||(away.traverse={}));away.traverse}(away||(away={}));var away;!function(away){!function(partition){var NodeBase=function(){function NodeBase(){this._pNumChildNodes=0,this._iNumEntities=0,this._pChildNodes=new Array}return Object.defineProperty(NodeBase.prototype,"boundsVisible",{get:function(){return this._explicitBoundsVisible},set:function(value){this._explicitBoundsVisible!=value&&(this._explicitBoundsVisible=value,this._iUpdateImplicitBoundsVisible(this._iParent?this._iParent.boundsChildrenVisible:!1))},enumerable:!0,configurable:!0}),Object.defineProperty(NodeBase.prototype,"boundsChildrenVisible",{get:function(){return this._boundsChildrenVisible},set:function(value){if(this._boundsChildrenVisible!=value){this._boundsChildrenVisible=value;for(var i=0;ii;i++)if(this._ignoredEntities[i]==entity)return!0;return!1},RaycastPicker.prototype.sortOnNearT=function(entity1,entity2){return entity1._iPickingCollisionVO.rayEntryDistance>entity2._iPickingCollisionVO.rayEntryDistance?1:-1},RaycastPicker.prototype.getPickingCollisionVO=function(){this._entities.length=this._numEntities,this._entities=this._entities.sort(this.sortOnNearT);var bestCollisionVO,pickingCollisionVO,entity,i,shortestCollisionDistance=Number.MAX_VALUE;for(i=0;imb?1:-1}else cmp=aid>bid?1:-1;0>cmp?(l=head,head=head.next):(l=headB,headB=headB.next),result?(curr.next=l,curr=l):(result=l,curr=l)}return head?curr.next=head:headB&&(curr.next=headB),result},RenderableMergeSort}();sort.RenderableMergeSort=RenderableMergeSort}(away.sort||(away.sort={}));away.sort}(away||(away={}));var away;!function(away){!function(geom){var Box=function(){function Box(x,y,z,width,height,depth){"undefined"==typeof x&&(x=0),"undefined"==typeof y&&(y=0),"undefined"==typeof z&&(z=0),"undefined"==typeof width&&(width=0),"undefined"==typeof height&&(height=0),"undefined"==typeof depth&&(depth=0),this.x=x,this.y=y,this.z=z,this.width=width,this.height=height,this.depth=depth}return Object.defineProperty(Box.prototype,"back",{get:function(){return this.z+this.depth},set:function(val){this.depth=val-this.z},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"bottom",{get:function(){return this.y+this.height},set:function(val){this.height=val-this.y},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"bottomRightBack",{get:function(){return null==this._bottomRightBack&&(this._bottomRightBack=new away.geom.Vector3D),this._bottomRightBack.x=this.x+this.width,this._bottomRightBack.y=this.y+this.height,this._bottomRightBack.z=this.z+this.depth,this._bottomRightBack},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"front",{get:function(){return this.z},set:function(val){this.depth+=this.z-val,this.z=val},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"left",{get:function(){return this.x},set:function(val){this.width+=this.x-val,this.x=val},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"right",{get:function(){return this.x+this.width},set:function(val){this.width=val-this.x},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"size",{get:function(){return null==this._size&&(this._size=new away.geom.Vector3D),this._size.x=this.width,this._size.y=this.height,this._size.z=this.depth,this._size},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"top",{get:function(){return this.y},set:function(val){this.height+=this.y-val,this.y=val},enumerable:!0,configurable:!0}),Object.defineProperty(Box.prototype,"topLeftFront",{get:function(){return null==this._topLeftFront&&(this._topLeftFront=new away.geom.Vector3D),this._topLeftFront.x=this.x,this._topLeftFront.y=this.y,this._topLeftFront.z=this.z,this._topLeftFront},enumerable:!0,configurable:!0}),Box.prototype.clone=function(){return new Box(this.x,this.y,this.z,this.width,this.height,this.depth)},Box.prototype.contains=function(x,y,z){return this.x<=x&&this.x+this.width>=x&&this.y<=y&&this.y+this.height>=y&&this.z<=z&&this.z+this.depth>=z},Box.prototype.containsPoint=function(position){return this.x<=position.x&&this.x+this.width>=position.x&&this.y<=position.y&&this.y+this.height>=position.y&&this.z<=position.z&&this.z+this.depth>=position.z},Box.prototype.containsRect=function(box){return this.x<=box.x&&this.x+this.width>=box.x+box.width&&this.y<=box.y&&this.y+this.height>=box.y+box.height&&this.z<=box.z&&this.z+this.depth>=box.z+box.depth},Box.prototype.copyFrom=function(){},Box.prototype.equals=function(toCompare){return this.x==toCompare.x&&this.y==toCompare.y&&this.z==toCompare.z&&this.width==toCompare.width&&this.height==toCompare.height&&this.depth==toCompare.depth},Box.prototype.inflate=function(dx,dy,dz){this.x-=dx/2,this.y-=dy/2,this.z-=dz/2,this.width+=dx/2,this.height+=dy/2,this.depth+=dz/2},Box.prototype.inflatePoint=function(delta){this.x-=delta.x/2,this.y-=delta.y/2,this.z-=delta.z/2,this.width+=delta.x/2,this.height+=delta.y/2,this.depth+=delta.z/2},Box.prototype.intersection=function(toIntersect){if(this.intersects(toIntersect)){var i=new Box;return this.x>toIntersect.x?(i.x=this.x,i.width=toIntersect.x-this.x+toIntersect.width,i.width>this.width&&(i.width=this.width)):(i.x=toIntersect.x,i.width=this.x-toIntersect.x+this.width,i.width>toIntersect.width&&(i.width=toIntersect.width)),this.y>toIntersect.y?(i.y=this.y,i.height=toIntersect.y-this.y+toIntersect.height,i.height>this.height&&(i.height=this.height)):(i.y=toIntersect.y,i.height=this.y-toIntersect.y+this.height,i.height>toIntersect.height&&(i.height=toIntersect.height)),this.z>toIntersect.z?(i.z=this.z,i.depth=toIntersect.z-this.z+toIntersect.depth,i.depth>this.depth&&(i.depth=this.depth)):(i.z=toIntersect.z,i.depth=this.z-toIntersect.z+this.depth,i.depth>toIntersect.depth&&(i.depth=toIntersect.depth)),i}return new Box},Box.prototype.intersects=function(toIntersect){return this.x+this.width>toIntersect.x&&this.xtoIntersect.y&&this.ytoIntersect.z&&this.z2)throw"Column "+column+" out of bounds (2)";0==column?(this.a=vector3D.x,this.c=vector3D.y):1==column?(this.b=vector3D.x,this.d=vector3D.y):(this.tx=vector3D.x,this.ty=vector3D.y)},Matrix.prototype.copyColumnTo=function(column,vector3D){if(column>2)throw new away.errors.ArgumentError("ArgumentError, Column "+column+" out of bounds [0, ..., 2]");0==column?(vector3D.x=this.a,vector3D.y=this.c,vector3D.z=0):1==column?(vector3D.x=this.b,vector3D.y=this.d,vector3D.z=0):(vector3D.x=this.tx,vector3D.y=this.ty,vector3D.z=1)},Matrix.prototype.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},Matrix.prototype.copyRowFrom=function(row,vector3D){if(row>2)throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 2]");0==row?(this.a=vector3D.x,this.c=vector3D.y):1==row?(this.b=vector3D.x,this.d=vector3D.y):(this.tx=vector3D.x,this.ty=vector3D.y)},Matrix.prototype.copyRowTo=function(row,vector3D){if(row>2)throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 2]");0==row?(vector3D.x=this.a,vector3D.y=this.b,vector3D.z=this.tx):1==row?(vector3D.x=this.c,vector3D.y=this.d,vector3D.z=this.ty):vector3D.setTo(0,0,1)},Matrix.prototype.createBox=function(scaleX,scaleY,rotation,tx,ty){"undefined"==typeof rotation&&(rotation=0),"undefined"==typeof tx&&(tx=0),"undefined"==typeof ty&&(ty=0),this.a=scaleX,this.d=scaleY,this.b=rotation,this.tx=tx,this.ty=ty},Matrix.prototype.createGradientBox=function(width,height,rotation,tx,ty){if("undefined"==typeof rotation&&(rotation=0),"undefined"==typeof tx&&(tx=0),"undefined"==typeof ty&&(ty=0),this.a=width/1638.4,this.d=height/1638.4,0!=rotation){var cos=Math.cos(rotation),sin=Math.sin(rotation);this.b=sin*this.d,this.c=-sin*this.a,this.a*=cos,this.d*=cos}else this.b=this.c=0;this.tx=tx+width/2,this.ty=ty+height/2},Matrix.prototype.deltaTransformPoint=function(point){return new away.geom.Point(point.x*this.a+point.y*this.c,point.x*this.b+point.y*this.d)},Matrix.prototype.identity=function(){this.a=1,this.b=0,this.c=0,this.d=1,this.tx=0,this.ty=0},Matrix.prototype.invert=function(){var norm=this.a*this.d-this.b*this.c;if(0==norm)this.a=this.b=this.c=this.d=0,this.tx=-this.tx,this.ty=-this.ty;else{norm=1/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}},Matrix.prototype.multiply=function(matrix){var result=new Matrix;return result.a=this.a*matrix.a+this.b*matrix.c,result.b=this.a*matrix.b+this.b*matrix.d,result.c=this.c*matrix.a+this.d*matrix.c,result.d=this.c*matrix.b+this.d*matrix.d,result.tx=this.tx*matrix.a+this.ty*matrix.c+matrix.tx,result.ty=this.tx*matrix.b+this.ty*matrix.d+matrix.ty,result},Matrix.prototype.rotate=function(angle){var cos=Math.cos(angle),sin=Math.sin(angle),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},Matrix.prototype.scale=function(sx,sy){this.a*=sx,this.b*=sy,this.c*=sx,this.d*=sy,this.tx*=sx,this.ty*=sy},Matrix.prototype.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},Matrix.prototype.toString=function(){return"[Matrix] (a="+this.a+", b="+this.b+", c="+this.c+", d="+this.d+", tx="+this.tx+", ty="+this.ty+")"},Matrix.prototype.transformPoint=function(point){return new away.geom.Point(point.x*this.a+point.y*this.c+this.tx,point.x*this.b+point.y*this.d+this.ty)},Matrix.prototype.translate=function(dx,dy){this.tx+=dx,this.ty+=dy},Matrix}();geom.Matrix=Matrix}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Matrix3D=function(){function Matrix3D(v){"undefined"==typeof v&&(v=null),this.rawData=null!=v&&16==v.length?v.concat():[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]}return Matrix3D.prototype.append=function(lhs){var m111=this.rawData[0],m121=this.rawData[4],m131=this.rawData[8],m141=this.rawData[12],m112=this.rawData[1],m122=this.rawData[5],m132=this.rawData[9],m142=this.rawData[13],m113=this.rawData[2],m123=this.rawData[6],m133=this.rawData[10],m143=this.rawData[14],m114=this.rawData[3],m124=this.rawData[7],m134=this.rawData[11],m144=this.rawData[15],m211=lhs.rawData[0],m221=lhs.rawData[4],m231=lhs.rawData[8],m241=lhs.rawData[12],m212=lhs.rawData[1],m222=lhs.rawData[5],m232=lhs.rawData[9],m242=lhs.rawData[13],m213=lhs.rawData[2],m223=lhs.rawData[6],m233=lhs.rawData[10],m243=lhs.rawData[14],m214=lhs.rawData[3],m224=lhs.rawData[7],m234=lhs.rawData[11],m244=lhs.rawData[15];
+this.rawData[0]=m111*m211+m112*m221+m113*m231+m114*m241,this.rawData[1]=m111*m212+m112*m222+m113*m232+m114*m242,this.rawData[2]=m111*m213+m112*m223+m113*m233+m114*m243,this.rawData[3]=m111*m214+m112*m224+m113*m234+m114*m244,this.rawData[4]=m121*m211+m122*m221+m123*m231+m124*m241,this.rawData[5]=m121*m212+m122*m222+m123*m232+m124*m242,this.rawData[6]=m121*m213+m122*m223+m123*m233+m124*m243,this.rawData[7]=m121*m214+m122*m224+m123*m234+m124*m244,this.rawData[8]=m131*m211+m132*m221+m133*m231+m134*m241,this.rawData[9]=m131*m212+m132*m222+m133*m232+m134*m242,this.rawData[10]=m131*m213+m132*m223+m133*m233+m134*m243,this.rawData[11]=m131*m214+m132*m224+m133*m234+m134*m244,this.rawData[12]=m141*m211+m142*m221+m143*m231+m144*m241,this.rawData[13]=m141*m212+m142*m222+m143*m232+m144*m242,this.rawData[14]=m141*m213+m142*m223+m143*m233+m144*m243,this.rawData[15]=m141*m214+m142*m224+m143*m234+m144*m244},Matrix3D.prototype.appendRotation=function(degrees,axis){var m=Matrix3D.getAxisRotation(axis.x,axis.y,axis.z,degrees);this.append(m)},Matrix3D.prototype.appendScale=function(xScale,yScale,zScale){this.append(new Matrix3D([xScale,0,0,0,0,yScale,0,0,0,0,zScale,0,0,0,0,1]))},Matrix3D.prototype.appendTranslation=function(x,y,z){this.rawData[12]+=x,this.rawData[13]+=y,this.rawData[14]+=z},Matrix3D.prototype.clone=function(){return new Matrix3D(this.rawData.slice(0))},Matrix3D.prototype.copyColumnFrom=function(column,vector3D){switch(column){case 0:this.rawData[0]=vector3D.x,this.rawData[1]=vector3D.y,this.rawData[2]=vector3D.z,this.rawData[3]=vector3D.w;break;case 1:this.rawData[4]=vector3D.x,this.rawData[5]=vector3D.y,this.rawData[6]=vector3D.z,this.rawData[7]=vector3D.w;break;case 2:this.rawData[8]=vector3D.x,this.rawData[9]=vector3D.y,this.rawData[10]=vector3D.z,this.rawData[11]=vector3D.w;break;case 3:this.rawData[12]=vector3D.x,this.rawData[13]=vector3D.y,this.rawData[14]=vector3D.z,this.rawData[15]=vector3D.w;break;default:throw new away.errors.ArgumentError("ArgumentError, Column "+column+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyColumnTo=function(column,vector3D){switch(column){case 0:vector3D.x=this.rawData[0],vector3D.y=this.rawData[1],vector3D.z=this.rawData[2],vector3D.w=this.rawData[3];break;case 1:vector3D.x=this.rawData[4],vector3D.y=this.rawData[5],vector3D.z=this.rawData[6],vector3D.w=this.rawData[7];break;case 2:vector3D.x=this.rawData[8],vector3D.y=this.rawData[9],vector3D.z=this.rawData[10],vector3D.w=this.rawData[11];break;case 3:vector3D.x=this.rawData[12],vector3D.y=this.rawData[13],vector3D.z=this.rawData[14],vector3D.w=this.rawData[15];break;default:throw new away.errors.ArgumentError("ArgumentError, Column "+column+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyFrom=function(sourceMatrix3D){for(var len=sourceMatrix3D.rawData.length,c=0;len>c;c++)this.rawData[c]=sourceMatrix3D.rawData[c]},Matrix3D.prototype.copyRawDataFrom=function(vector,index,transpose){"undefined"==typeof index&&(index=0),"undefined"==typeof transpose&&(transpose=!1),transpose&&this.transpose();for(var len=vector.length-index,c=0;len>c;c++)this.rawData[c]=vector[c+index];transpose&&this.transpose()},Matrix3D.prototype.copyRawDataTo=function(vector,index,transpose){"undefined"==typeof index&&(index=0),"undefined"==typeof transpose&&(transpose=!1),transpose&&this.transpose();for(var len=this.rawData.length,c=0;len>c;c++)vector[c+index]=this.rawData[c];transpose&&this.transpose()},Matrix3D.prototype.copyRowFrom=function(row,vector3D){switch(row){case 0:this.rawData[0]=vector3D.x,this.rawData[4]=vector3D.y,this.rawData[8]=vector3D.z,this.rawData[12]=vector3D.w;break;case 1:this.rawData[1]=vector3D.x,this.rawData[5]=vector3D.y,this.rawData[9]=vector3D.z,this.rawData[13]=vector3D.w;break;case 2:this.rawData[2]=vector3D.x,this.rawData[6]=vector3D.y,this.rawData[10]=vector3D.z,this.rawData[14]=vector3D.w;break;case 3:this.rawData[3]=vector3D.x,this.rawData[7]=vector3D.y,this.rawData[11]=vector3D.z,this.rawData[15]=vector3D.w;break;default:throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyRowTo=function(row,vector3D){switch(row){case 0:vector3D.x=this.rawData[0],vector3D.y=this.rawData[4],vector3D.z=this.rawData[8],vector3D.w=this.rawData[12];break;case 1:vector3D.x=this.rawData[1],vector3D.y=this.rawData[5],vector3D.z=this.rawData[9],vector3D.w=this.rawData[13];break;case 2:vector3D.x=this.rawData[2],vector3D.y=this.rawData[6],vector3D.z=this.rawData[10],vector3D.w=this.rawData[14];break;case 3:vector3D.x=this.rawData[3],vector3D.y=this.rawData[7],vector3D.z=this.rawData[11],vector3D.w=this.rawData[15];break;default:throw new away.errors.ArgumentError("ArgumentError, Row "+row+" out of bounds [0, ..., 3]")}},Matrix3D.prototype.copyToMatrix3D=function(dest){dest.rawData=this.rawData.slice(0)},Matrix3D.prototype.decompose=function(orientationStyle){"undefined"==typeof orientationStyle&&(orientationStyle="eulerAngles");var vec=[],m=this.clone(),mr=m.rawData,pos=new away.geom.Vector3D(mr[12],mr[13],mr[14]);mr[12]=0,mr[13]=0,mr[14]=0;var scale=new away.geom.Vector3D;scale.x=Math.sqrt(mr[0]*mr[0]+mr[1]*mr[1]+mr[2]*mr[2]),scale.y=Math.sqrt(mr[4]*mr[4]+mr[5]*mr[5]+mr[6]*mr[6]),scale.z=Math.sqrt(mr[8]*mr[8]+mr[9]*mr[9]+mr[10]*mr[10]),mr[0]*(mr[5]*mr[10]-mr[6]*mr[9])-mr[1]*(mr[4]*mr[10]-mr[6]*mr[8])+mr[2]*(mr[4]*mr[9]-mr[5]*mr[8])<0&&(scale.z=-scale.z),mr[0]/=scale.x,mr[1]/=scale.x,mr[2]/=scale.x,mr[4]/=scale.y,mr[5]/=scale.y,mr[6]/=scale.y,mr[8]/=scale.z,mr[9]/=scale.z,mr[10]/=scale.z;var rot=new away.geom.Vector3D;switch(orientationStyle){case away.geom.Orientation3D.AXIS_ANGLE:rot.w=Math.acos((mr[0]+mr[5]+mr[10]-1)/2);var len=Math.sqrt((mr[6]-mr[9])*(mr[6]-mr[9])+(mr[8]-mr[2])*(mr[8]-mr[2])+(mr[1]-mr[4])*(mr[1]-mr[4]));rot.x=(mr[6]-mr[9])/len,rot.y=(mr[8]-mr[2])/len,rot.z=(mr[1]-mr[4])/len;break;case away.geom.Orientation3D.QUATERNION:var tr=mr[0]+mr[5]+mr[10];tr>0?(rot.w=Math.sqrt(1+tr)/2,rot.x=(mr[6]-mr[9])/(4*rot.w),rot.y=(mr[8]-mr[2])/(4*rot.w),rot.z=(mr[1]-mr[4])/(4*rot.w)):mr[0]>mr[5]&&mr[0]>mr[10]?(rot.x=Math.sqrt(1+mr[0]-mr[5]-mr[10])/2,rot.w=(mr[6]-mr[9])/(4*rot.x),rot.y=(mr[1]+mr[4])/(4*rot.x),rot.z=(mr[8]+mr[2])/(4*rot.x)):mr[5]>mr[10]?(rot.y=Math.sqrt(1+mr[5]-mr[0]-mr[10])/2,rot.x=(mr[1]+mr[4])/(4*rot.y),rot.w=(mr[8]-mr[2])/(4*rot.y),rot.z=(mr[6]+mr[9])/(4*rot.y)):(rot.z=Math.sqrt(1+mr[10]-mr[0]-mr[5])/2,rot.x=(mr[8]+mr[2])/(4*rot.z),rot.y=(mr[6]+mr[9])/(4*rot.z),rot.w=(mr[1]-mr[4])/(4*rot.z));break;case away.geom.Orientation3D.EULER_ANGLES:rot.y=Math.asin(-mr[2]),1!=mr[2]&&-1!=mr[2]?(rot.x=Math.atan2(mr[6],mr[10]),rot.z=Math.atan2(mr[1],mr[0])):(rot.z=0,rot.x=Math.atan2(mr[4],mr[5]))}return vec.push(pos),vec.push(rot),vec.push(scale),vec},Matrix3D.prototype.deltaTransformVector=function(v){var x=v.x,y=v.y,z=v.z;return new away.geom.Vector3D(x*this.rawData[0]+y*this.rawData[4]+z*this.rawData[8],x*this.rawData[1]+y*this.rawData[5]+z*this.rawData[9],x*this.rawData[2]+y*this.rawData[6]+z*this.rawData[10],x*this.rawData[3]+y*this.rawData[7]+z*this.rawData[11])},Matrix3D.prototype.identity=function(){this.rawData=[1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]},Matrix3D.interpolate=function(thisMat,toMat,percent){for(var m=new Matrix3D,i=0;16>i;++i)m.rawData[i]=thisMat.rawData[i]+(toMat.rawData[i]-thisMat.rawData[i])*percent;return m},Matrix3D.prototype.interpolateTo=function(toMat,percent){for(var i=0;16>i;++i)this.rawData[i]=this.rawData[i]+(toMat.rawData[i]-this.rawData[i])*percent},Matrix3D.prototype.invert=function(){var d=this.determinant,invertable=Math.abs(d)>1e-11;if(invertable){d=1/d;var m11=this.rawData[0],m21=this.rawData[4],m31=this.rawData[8],m41=this.rawData[12],m12=this.rawData[1],m22=this.rawData[5],m32=this.rawData[9],m42=this.rawData[13],m13=this.rawData[2],m23=this.rawData[6],m33=this.rawData[10],m43=this.rawData[14],m14=this.rawData[3],m24=this.rawData[7],m34=this.rawData[11],m44=this.rawData[15];this.rawData[0]=d*(m22*(m33*m44-m43*m34)-m32*(m23*m44-m43*m24)+m42*(m23*m34-m33*m24)),this.rawData[1]=-d*(m12*(m33*m44-m43*m34)-m32*(m13*m44-m43*m14)+m42*(m13*m34-m33*m14)),this.rawData[2]=d*(m12*(m23*m44-m43*m24)-m22*(m13*m44-m43*m14)+m42*(m13*m24-m23*m14)),this.rawData[3]=-d*(m12*(m23*m34-m33*m24)-m22*(m13*m34-m33*m14)+m32*(m13*m24-m23*m14)),this.rawData[4]=-d*(m21*(m33*m44-m43*m34)-m31*(m23*m44-m43*m24)+m41*(m23*m34-m33*m24)),this.rawData[5]=d*(m11*(m33*m44-m43*m34)-m31*(m13*m44-m43*m14)+m41*(m13*m34-m33*m14)),this.rawData[6]=-d*(m11*(m23*m44-m43*m24)-m21*(m13*m44-m43*m14)+m41*(m13*m24-m23*m14)),this.rawData[7]=d*(m11*(m23*m34-m33*m24)-m21*(m13*m34-m33*m14)+m31*(m13*m24-m23*m14)),this.rawData[8]=d*(m21*(m32*m44-m42*m34)-m31*(m22*m44-m42*m24)+m41*(m22*m34-m32*m24)),this.rawData[9]=-d*(m11*(m32*m44-m42*m34)-m31*(m12*m44-m42*m14)+m41*(m12*m34-m32*m14)),this.rawData[10]=d*(m11*(m22*m44-m42*m24)-m21*(m12*m44-m42*m14)+m41*(m12*m24-m22*m14)),this.rawData[11]=-d*(m11*(m22*m34-m32*m24)-m21*(m12*m34-m32*m14)+m31*(m12*m24-m22*m14)),this.rawData[12]=-d*(m21*(m32*m43-m42*m33)-m31*(m22*m43-m42*m23)+m41*(m22*m33-m32*m23)),this.rawData[13]=d*(m11*(m32*m43-m42*m33)-m31*(m12*m43-m42*m13)+m41*(m12*m33-m32*m13)),this.rawData[14]=-d*(m11*(m22*m43-m42*m23)-m21*(m12*m43-m42*m13)+m41*(m12*m23-m22*m13)),this.rawData[15]=d*(m11*(m22*m33-m32*m23)-m21*(m12*m33-m32*m13)+m31*(m12*m23-m22*m13))}return invertable},Matrix3D.prototype.prepend=function(rhs){var m111=rhs.rawData[0],m121=rhs.rawData[4],m131=rhs.rawData[8],m141=rhs.rawData[12],m112=rhs.rawData[1],m122=rhs.rawData[5],m132=rhs.rawData[9],m142=rhs.rawData[13],m113=rhs.rawData[2],m123=rhs.rawData[6],m133=rhs.rawData[10],m143=rhs.rawData[14],m114=rhs.rawData[3],m124=rhs.rawData[7],m134=rhs.rawData[11],m144=rhs.rawData[15],m211=this.rawData[0],m221=this.rawData[4],m231=this.rawData[8],m241=this.rawData[12],m212=this.rawData[1],m222=this.rawData[5],m232=this.rawData[9],m242=this.rawData[13],m213=this.rawData[2],m223=this.rawData[6],m233=this.rawData[10],m243=this.rawData[14],m214=this.rawData[3],m224=this.rawData[7],m234=this.rawData[11],m244=this.rawData[15];this.rawData[0]=m111*m211+m112*m221+m113*m231+m114*m241,this.rawData[1]=m111*m212+m112*m222+m113*m232+m114*m242,this.rawData[2]=m111*m213+m112*m223+m113*m233+m114*m243,this.rawData[3]=m111*m214+m112*m224+m113*m234+m114*m244,this.rawData[4]=m121*m211+m122*m221+m123*m231+m124*m241,this.rawData[5]=m121*m212+m122*m222+m123*m232+m124*m242,this.rawData[6]=m121*m213+m122*m223+m123*m233+m124*m243,this.rawData[7]=m121*m214+m122*m224+m123*m234+m124*m244,this.rawData[8]=m131*m211+m132*m221+m133*m231+m134*m241,this.rawData[9]=m131*m212+m132*m222+m133*m232+m134*m242,this.rawData[10]=m131*m213+m132*m223+m133*m233+m134*m243,this.rawData[11]=m131*m214+m132*m224+m133*m234+m134*m244,this.rawData[12]=m141*m211+m142*m221+m143*m231+m144*m241,this.rawData[13]=m141*m212+m142*m222+m143*m232+m144*m242,this.rawData[14]=m141*m213+m142*m223+m143*m233+m144*m243,this.rawData[15]=m141*m214+m142*m224+m143*m234+m144*m244},Matrix3D.prototype.prependRotation=function(degrees,axis){var m=Matrix3D.getAxisRotation(axis.x,axis.y,axis.z,degrees);this.prepend(m)},Matrix3D.prototype.prependScale=function(xScale,yScale,zScale){this.prepend(new Matrix3D([xScale,0,0,0,0,yScale,0,0,0,0,zScale,0,0,0,0,1]))},Matrix3D.prototype.prependTranslation=function(x,y,z){var m=new Matrix3D;m.position=new away.geom.Vector3D(x,y,z),this.prepend(m)},Matrix3D.prototype.recompose=function(components){if(components.length<3)return!1;this.identity(),this.appendScale(components[2].x,components[2].y,components[2].z);var angle;return angle=-components[1].x,this.append(new Matrix3D([1,0,0,0,0,Math.cos(angle),-Math.sin(angle),0,0,Math.sin(angle),Math.cos(angle),0,0,0,0,0])),angle=-components[1].y,this.append(new Matrix3D([Math.cos(angle),0,Math.sin(angle),0,0,1,0,0,-Math.sin(angle),0,Math.cos(angle),0,0,0,0,0])),angle=-components[1].z,this.append(new Matrix3D([Math.cos(angle),-Math.sin(angle),0,0,Math.sin(angle),Math.cos(angle),0,0,0,0,1,0,0,0,0,0])),this.position=components[0],this.rawData[15]=1,!0},Matrix3D.prototype.transformVector=function(v){var x=v.x,y=v.y,z=v.z;return new away.geom.Vector3D(x*this.rawData[0]+y*this.rawData[4]+z*this.rawData[8]+this.rawData[12],x*this.rawData[1]+y*this.rawData[5]+z*this.rawData[9]+this.rawData[13],x*this.rawData[2]+y*this.rawData[6]+z*this.rawData[10]+this.rawData[14],x*this.rawData[3]+y*this.rawData[7]+z*this.rawData[11]+this.rawData[15])},Matrix3D.prototype.transformVectors=function(vin,vout){for(var i=0,x=0,y=0,z=0;i+3<=vin.length;)x=vin[i],y=vin[i+1],z=vin[i+2],vout[i]=x*this.rawData[0]+y*this.rawData[4]+z*this.rawData[8]+this.rawData[12],vout[i+1]=x*this.rawData[1]+y*this.rawData[5]+z*this.rawData[9]+this.rawData[13],vout[i+2]=x*this.rawData[2]+y*this.rawData[6]+z*this.rawData[10]+this.rawData[14],i+=3},Matrix3D.prototype.transpose=function(){var oRawData=this.rawData.slice(0);this.rawData[1]=oRawData[4],this.rawData[2]=oRawData[8],this.rawData[3]=oRawData[12],this.rawData[4]=oRawData[1],this.rawData[6]=oRawData[9],this.rawData[7]=oRawData[13],this.rawData[8]=oRawData[2],this.rawData[9]=oRawData[6],this.rawData[11]=oRawData[14],this.rawData[12]=oRawData[3],this.rawData[13]=oRawData[7],this.rawData[14]=oRawData[11]},Matrix3D.getAxisRotation=function(x,y,z,degrees){var tmp1,tmp2,m=new Matrix3D,rad=degrees*(Math.PI/180),c=Math.cos(rad),s=Math.sin(rad),t=1-c;return m.rawData[0]=c+x*x*t,m.rawData[5]=c+y*y*t,m.rawData[10]=c+z*z*t,tmp1=x*y*t,tmp2=z*s,m.rawData[1]=tmp1+tmp2,m.rawData[4]=tmp1-tmp2,tmp1=x*z*t,tmp2=y*s,m.rawData[8]=tmp1+tmp2,m.rawData[2]=tmp1-tmp2,tmp1=y*z*t,tmp2=x*s,m.rawData[9]=tmp1-tmp2,m.rawData[6]=tmp1+tmp2,m},Object.defineProperty(Matrix3D.prototype,"determinant",{get:function(){return(this.rawData[0]*this.rawData[5]-this.rawData[4]*this.rawData[1])*(this.rawData[10]*this.rawData[15]-this.rawData[14]*this.rawData[11])-(this.rawData[0]*this.rawData[9]-this.rawData[8]*this.rawData[1])*(this.rawData[6]*this.rawData[15]-this.rawData[14]*this.rawData[7])+(this.rawData[0]*this.rawData[13]-this.rawData[12]*this.rawData[1])*(this.rawData[6]*this.rawData[11]-this.rawData[10]*this.rawData[7])+(this.rawData[4]*this.rawData[9]-this.rawData[8]*this.rawData[5])*(this.rawData[2]*this.rawData[15]-this.rawData[14]*this.rawData[3])-(this.rawData[4]*this.rawData[13]-this.rawData[12]*this.rawData[5])*(this.rawData[2]*this.rawData[11]-this.rawData[10]*this.rawData[3])+(this.rawData[8]*this.rawData[13]-this.rawData[12]*this.rawData[9])*(this.rawData[2]*this.rawData[7]-this.rawData[6]*this.rawData[3])},enumerable:!0,configurable:!0}),Object.defineProperty(Matrix3D.prototype,"position",{get:function(){return new away.geom.Vector3D(this.rawData[12],this.rawData[13],this.rawData[14])},set:function(value){this.rawData[12]=value.x,this.rawData[13]=value.y,this.rawData[14]=value.z},enumerable:!0,configurable:!0}),Matrix3D.prototype.toFixed=function(decimalPlace){var magnitude=Math.pow(10,decimalPlace);return"matrix3d("+Math.round(this.rawData[0]*magnitude)/magnitude+","+Math.round(this.rawData[1]*magnitude)/magnitude+","+Math.round(this.rawData[2]*magnitude)/magnitude+","+Math.round(this.rawData[3]*magnitude)/magnitude+","+Math.round(this.rawData[4]*magnitude)/magnitude+","+Math.round(this.rawData[5]*magnitude)/magnitude+","+Math.round(this.rawData[6]*magnitude)/magnitude+","+Math.round(this.rawData[7]*magnitude)/magnitude+","+Math.round(this.rawData[8]*magnitude)/magnitude+","+Math.round(this.rawData[9]*magnitude)/magnitude+","+Math.round(this.rawData[10]*magnitude)/magnitude+","+Math.round(this.rawData[11]*magnitude)/magnitude+","+Math.round(this.rawData[12]*magnitude)/magnitude+","+Math.round(this.rawData[13]*magnitude)/magnitude+","+Math.round(this.rawData[14]*magnitude)/magnitude+","+Math.round(this.rawData[15]*magnitude)/magnitude+")"},Matrix3D.prototype.toString=function(){return"matrix3d("+Math.round(1e3*this.rawData[0])/1e3+","+Math.round(1e3*this.rawData[1])/1e3+","+Math.round(1e3*this.rawData[2])/1e3+","+Math.round(1e3*this.rawData[3])/1e3+","+Math.round(1e3*this.rawData[4])/1e3+","+Math.round(1e3*this.rawData[5])/1e3+","+Math.round(1e3*this.rawData[6])/1e3+","+Math.round(1e3*this.rawData[7])/1e3+","+Math.round(1e3*this.rawData[8])/1e3+","+Math.round(1e3*this.rawData[9])/1e3+","+Math.round(1e3*this.rawData[10])/1e3+","+Math.round(1e3*this.rawData[11])/1e3+","+Math.round(1e3*this.rawData[12])/1e3+","+Math.round(1e3*this.rawData[13])/1e3+","+Math.round(1e3*this.rawData[14])/1e3+","+Math.round(1e3*this.rawData[15])/1e3+")"},Matrix3D}();geom.Matrix3D=Matrix3D}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Orientation3D=function(){function Orientation3D(){}return Orientation3D.AXIS_ANGLE="axisAngle",Orientation3D.EULER_ANGLES="eulerAngles",Orientation3D.QUATERNION="quaternion",Orientation3D}();geom.Orientation3D=Orientation3D}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var PerspectiveProjection=function(){function PerspectiveProjection(){}return PerspectiveProjection.prototype.toMatrix3D=function(){return this._matrix3D},PerspectiveProjection}();geom.PerspectiveProjection=PerspectiveProjection}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Point=function(){function Point(x,y){"undefined"==typeof x&&(x=0),"undefined"==typeof y&&(y=0),this.x=x,this.y=y}return Object.defineProperty(Point.prototype,"length",{get:function(){return Math.sqrt(this.x*this.x+this.y*this.y)},enumerable:!0,configurable:!0}),Point.prototype.add=function(v){return new Point(this.x+v.x,this.y+v.y)},Point.prototype.clone=function(){return new Point(this.x,this.y)},Point.prototype.copyFrom=function(){},Point.prototype.equals=function(toCompare){return this.x==toCompare.x&&this.y==toCompare.y},Point.prototype.normalize=function(thickness){if("undefined"==typeof thickness&&(thickness=1),0!=this.length){var invLength=thickness/this.length;return this.x*=invLength,this.y*=invLength,void 0}throw"Cannot divide by zero length."},Point.prototype.offset=function(dx,dy){this.x+=dx,this.y+=dy},Point.prototype.setTo=function(){},Point.prototype.subtract=function(v){return new Point(this.x-v.x,this.y-v.y)},Point.prototype.toString=function(){return"[Point] (x="+this.x+", y="+this.y+")"},Point.distance=function(pt1,pt2){var dx=pt2.x-pt1.x,dy=pt2.y-pt1.y;return Math.sqrt(dx*dx+dy*dy)},Point.interpolate=function(pt1,pt2,f){return new Point(pt2.x+(pt1.x-pt2.x)*f,pt2.y+(pt1.y-pt2.y)*f)},Point.polar=function(len,angle){return new Point(len*Math.cos(angle),len*Math.sin(angle))},Point}();geom.Point=Point}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Rectangle=function(){function Rectangle(x,y,width,height){"undefined"==typeof x&&(x=0),"undefined"==typeof y&&(y=0),"undefined"==typeof width&&(width=0),"undefined"==typeof height&&(height=0),this.x=x,this.y=y,this.width=width,this.height=height}return Object.defineProperty(Rectangle.prototype,"bottom",{get:function(){return this.y+this.height},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"bottomRight",{get:function(){return null==this._bottomRight&&(this._bottomRight=new away.geom.Point),this._bottomRight.x=this.x+this.width,this._bottomRight.y=this.y+this.height,this._bottomRight},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"left",{get:function(){return this.x},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"right",{get:function(){return this.x+this.width},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"size",{get:function(){return null==this._size&&(this._size=new away.geom.Point),this._size.x=this.width,this._size.y=this.height,this._size},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"top",{get:function(){return this.y},enumerable:!0,configurable:!0}),Object.defineProperty(Rectangle.prototype,"topLeft",{get:function(){return null==this._topLeft&&(this._topLeft=new away.geom.Point),this._topLeft.x=this.x,this._topLeft.y=this.y,this._topLeft},enumerable:!0,configurable:!0}),Rectangle.prototype.clone=function(){return new Rectangle(this.x,this.y,this.width,this.height)},Rectangle.prototype.contains=function(x,y){return this.x<=x&&this.x+this.width>=x&&this.y<=y&&this.y+this.height>=y},Rectangle.prototype.containsPoint=function(point){return this.x<=point.x&&this.x+this.width>=point.x&&this.y<=point.y&&this.y+this.height>=point.y},Rectangle.prototype.containsRect=function(rect){return this.x<=rect.x&&this.x+this.width>=rect.x+rect.width&&this.y<=rect.y&&this.y+this.height>=rect.y+rect.height},Rectangle.prototype.copyFrom=function(){},Rectangle.prototype.equals=function(toCompare){return this.x==toCompare.x&&this.y==toCompare.y&&this.width==toCompare.width&&this.height==toCompare.height},Rectangle.prototype.inflate=function(dx,dy){this.x-=dx/2,this.y-=dy/2,this.width+=dx/2,this.height+=dy/2},Rectangle.prototype.inflatePoint=function(point){this.x-=point.x/2,this.y-=point.y/2,this.width+=point.x/2,this.height+=point.y/2},Rectangle.prototype.intersection=function(toIntersect){if(this.intersects(toIntersect)){var i=new Rectangle;return this.x>toIntersect.x?(i.x=this.x,i.width=toIntersect.x-this.x+toIntersect.width,i.width>this.width&&(i.width=this.width)):(i.x=toIntersect.x,i.width=this.x-toIntersect.x+this.width,i.width>toIntersect.width&&(i.width=toIntersect.width)),this.y>toIntersect.y?(i.y=this.y,i.height=toIntersect.y-this.y+toIntersect.height,i.height>this.height&&(i.height=this.height)):(i.y=toIntersect.y,i.height=this.y-toIntersect.y+this.height,i.height>toIntersect.height&&(i.height=toIntersect.height)),i}return new Rectangle},Rectangle.prototype.intersects=function(toIntersect){return this.x+this.width>toIntersect.x&&this.xtoIntersect.y&&this.ydot&&(dot=-dot,w2=-w2,x2=-x2,y2=-y2,z2=-z2),.95>dot){var angle=Math.acos(dot),s=1/Math.sin(angle),s1=Math.sin(angle*(1-t))*s,s2=Math.sin(angle*t)*s;this.w=w1*s1+w2*s2,this.x=x1*s1+x2*s2,this.y=y1*s1+y2*s2,this.z=z1*s1+z2*s2}else{this.w=w1+t*(w2-w1),this.x=x1+t*(x2-x1),this.y=y1+t*(y2-y1),this.z=z1+t*(z2-z1);var len=1/Math.sqrt(this.w*this.w+this.x*this.x+this.y*this.y+this.z*this.z);this.w*=len,this.x*=len,this.y*=len,this.z*=len}},Quaternion.prototype.lerp=function(qa,qb,t){var len,w1=qa.w,x1=qa.x,y1=qa.y,z1=qa.z,w2=qb.w,x2=qb.x,y2=qb.y,z2=qb.z;0>w1*w2+x1*x2+y1*y2+z1*z2&&(w2=-w2,x2=-x2,y2=-y2,z2=-z2),this.w=w1+t*(w2-w1),this.x=x1+t*(x2-x1),this.y=y1+t*(y2-y1),this.z=z1+t*(z2-z1),len=1/Math.sqrt(this.w*this.w+this.x*this.x+this.y*this.y+this.z*this.z),this.w*=len,this.x*=len,this.y*=len,this.z*=len},Quaternion.prototype.fromEulerAngles=function(ax,ay,az){var halfX=.5*ax,halfY=.5*ay,halfZ=.5*az,cosX=Math.cos(halfX),sinX=Math.sin(halfX),cosY=Math.cos(halfY),sinY=Math.sin(halfY),cosZ=Math.cos(halfZ),sinZ=Math.sin(halfZ);this.w=cosX*cosY*cosZ+sinX*sinY*sinZ,this.x=sinX*cosY*cosZ-cosX*sinY*sinZ,this.y=cosX*sinY*cosZ+sinX*cosY*sinZ,this.z=cosX*cosY*sinZ-sinX*sinY*cosZ},Quaternion.prototype.toEulerAngles=function(target){return"undefined"==typeof target&&(target=null),null===target&&(target=new away.geom.Vector3D),target.x=Math.atan2(2*(this.w*this.x+this.y*this.z),1-2*(this.x*this.x+this.y*this.y)),target.y=Math.asin(2*(this.w*this.y-this.z*this.x)),target.z=Math.atan2(2*(this.w*this.z+this.x*this.y),1-2*(this.y*this.y+this.z*this.z)),target},Quaternion.prototype.normalize=function(val){"undefined"==typeof val&&(val=1);var mag=val/Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z+this.w*this.w);this.x*=mag,this.y*=mag,this.z*=mag,this.w*=mag},Quaternion.prototype.toString=function(){return"{x:"+this.x+" y:"+this.y+" z:"+this.z+" w:"+this.w+"}"},Quaternion.prototype.toMatrix3D=function(target){"undefined"==typeof target&&(target=null);var rawData=away.geom.Matrix3DUtils.RAW_DATA_CONTAINER,xy2=2*this.x*this.y,xz2=2*this.x*this.z,xw2=2*this.x*this.w,yz2=2*this.y*this.z,yw2=2*this.y*this.w,zw2=2*this.z*this.w,xx=this.x*this.x,yy=this.y*this.y,zz=this.z*this.z,ww=this.w*this.w;return rawData[0]=xx-yy-zz+ww,rawData[4]=xy2-zw2,rawData[8]=xz2+yw2,rawData[12]=0,rawData[1]=xy2+zw2,rawData[5]=-xx+yy-zz+ww,rawData[9]=yz2-xw2,rawData[13]=0,rawData[2]=xz2-yw2,rawData[6]=yz2+xw2,rawData[10]=-xx-yy+zz+ww,rawData[14]=0,rawData[3]=0,rawData[7]=0,rawData[11]=0,rawData[15]=1,target?(target.copyRawDataFrom(rawData),target):new away.geom.Matrix3D(rawData)},Quaternion.prototype.fromMatrix=function(matrix){var v=matrix.decompose(away.geom.Orientation3D.QUATERNION)[1];this.x=v.x,this.y=v.y,this.z=v.z,this.w=v.w},Quaternion.prototype.toRawData=function(target,exclude4thRow){"undefined"==typeof exclude4thRow&&(exclude4thRow=!1);var xy2=2*this.x*this.y,xz2=2*this.x*this.z,xw2=2*this.x*this.w,yz2=2*this.y*this.z,yw2=2*this.y*this.w,zw2=2*this.z*this.w,xx=this.x*this.x,yy=this.y*this.y,zz=this.z*this.z,ww=this.w*this.w;target[0]=xx-yy-zz+ww,target[1]=xy2-zw2,target[2]=xz2+yw2,target[4]=xy2+zw2,target[5]=-xx+yy-zz+ww,target[6]=yz2-xw2,target[8]=xz2-yw2,target[9]=yz2+xw2,target[10]=-xx-yy+zz+ww,target[3]=target[7]=target[11]=0,exclude4thRow||(target[12]=target[13]=target[14]=0,target[15]=1)},Quaternion.prototype.clone=function(){return new Quaternion(this.x,this.y,this.z,this.w)},Quaternion.prototype.rotatePoint=function(vector,target){"undefined"==typeof target&&(target=null);var x1,y1,z1,w1,x2=vector.x,y2=vector.y,z2=vector.z;return null===target&&(target=new away.geom.Vector3D),w1=-this.x*x2-this.y*y2-this.z*z2,x1=this.w*x2+this.y*z2-this.z*y2,y1=this.w*y2-this.x*z2+this.z*x2,z1=this.w*z2+this.x*y2-this.y*x2,target.x=-w1*this.x+x1*this.w-y1*this.z+z1*this.y,target.y=-w1*this.y+x1*this.z+y1*this.w-z1*this.x,target.z=-w1*this.z-x1*this.y+y1*this.x+z1*this.w,target},Quaternion.prototype.copyFrom=function(q){this.x=q.x,this.y=q.y,this.z=q.z,this.w=q.w},Quaternion}();geom.Quaternion=Quaternion}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var PlaneClassification=function(){function PlaneClassification(){}return PlaneClassification.BACK=0,PlaneClassification.FRONT=1,PlaneClassification.IN=0,PlaneClassification.OUT=1,PlaneClassification.INTERSECT=2,PlaneClassification}();geom.PlaneClassification=PlaneClassification}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Plane3D=function(){function Plane3D(a,b,c,d){"undefined"==typeof a&&(a=0),"undefined"==typeof b&&(b=0),"undefined"==typeof c&&(c=0),"undefined"==typeof d&&(d=0),this.a=a,this.b=b,this.c=c,this.d=d,this._iAlignment=0==a&&0==b?Plane3D.ALIGN_XY_AXIS:0==b&&0==c?Plane3D.ALIGN_YZ_AXIS:0==a&&0==c?Plane3D.ALIGN_XZ_AXIS:Plane3D.ALIGN_ANY}return Plane3D.prototype.fromPoints=function(p0,p1,p2){var d1x=p1.x-p0.x,d1y=p1.y-p0.y,d1z=p1.z-p0.z,d2x=p2.x-p0.x,d2y=p2.y-p0.y,d2z=p2.z-p0.z;this.a=d1y*d2z-d1z*d2y,this.b=d1z*d2x-d1x*d2z,this.c=d1x*d2y-d1y*d2x,this.d=this.a*p0.x+this.b*p0.y+this.c*p0.z,this._iAlignment=0==this.a&&0==this.b?Plane3D.ALIGN_XY_AXIS:0==this.b&&0==this.c?Plane3D.ALIGN_YZ_AXIS:0==this.a&&0==this.c?Plane3D.ALIGN_XZ_AXIS:Plane3D.ALIGN_ANY},Plane3D.prototype.fromNormalAndPoint=function(normal,point){this.a=normal.x,this.b=normal.y,this.c=normal.z,this.d=this.a*point.x+this.b*point.y+this.c*point.z,this._iAlignment=0==this.a&&0==this.b?Plane3D.ALIGN_XY_AXIS:0==this.b&&0==this.c?Plane3D.ALIGN_YZ_AXIS:0==this.a&&0==this.c?Plane3D.ALIGN_XZ_AXIS:Plane3D.ALIGN_ANY},Plane3D.prototype.normalize=function(){var len=1/Math.sqrt(this.a*this.a+this.b*this.b+this.c*this.c);return this.a*=len,this.b*=len,this.c*=len,this.d*=len,this},Plane3D.prototype.distance=function(p){return this._iAlignment==Plane3D.ALIGN_YZ_AXIS?this.a*p.x-this.d:this._iAlignment==Plane3D.ALIGN_XZ_AXIS?this.b*p.y-this.d:this._iAlignment==Plane3D.ALIGN_XY_AXIS?this.c*p.z-this.d:this.a*p.x+this.b*p.y+this.c*p.z-this.d},Plane3D.prototype.classifyPoint=function(p,epsilon){if("undefined"==typeof epsilon&&(epsilon=.01),this.d!=this.d)return away.geom.PlaneClassification.FRONT;var len;return len=this._iAlignment==Plane3D.ALIGN_YZ_AXIS?this.a*p.x-this.d:this._iAlignment==Plane3D.ALIGN_XZ_AXIS?this.b*p.y-this.d:this._iAlignment==Plane3D.ALIGN_XY_AXIS?this.c*p.z-this.d:this.a*p.x+this.b*p.y+this.c*p.z-this.d,-epsilon>len?away.geom.PlaneClassification.BACK:len>epsilon?away.geom.PlaneClassification.FRONT:away.geom.PlaneClassification.INTERSECT},Plane3D.prototype.toString=function(){return"Plane3D [a:"+this.a+", b:"+this.b+", c:"+this.c+", d:"+this.d+"]"},Plane3D.ALIGN_ANY=0,Plane3D.ALIGN_XY_AXIS=1,Plane3D.ALIGN_YZ_AXIS=2,Plane3D.ALIGN_XZ_AXIS=3,Plane3D}();geom.Plane3D=Plane3D}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var Matrix3DUtils=function(){function Matrix3DUtils(){}return Matrix3DUtils.quaternion2matrix=function(quarternion,m){"undefined"==typeof m&&(m=null);var x=quarternion.x,y=quarternion.y,z=quarternion.z,w=quarternion.w,xx=x*x,xy=x*y,xz=x*z,xw=x*w,yy=y*y,yz=y*z,yw=y*w,zz=z*z,zw=z*w,raw=Matrix3DUtils.RAW_DATA_CONTAINER;return raw[0]=1-2*(yy+zz),raw[1]=2*(xy+zw),raw[2]=2*(xz-yw),raw[4]=2*(xy-zw),raw[5]=1-2*(xx+zz),raw[6]=2*(yz+xw),raw[8]=2*(xz+yw),raw[9]=2*(yz-xw),raw[10]=1-2*(xx+yy),raw[3]=raw[7]=raw[11]=raw[12]=raw[13]=raw[14]=0,raw[15]=1,m?(m.copyRawDataFrom(raw),m):new away.geom.Matrix3D(raw)},Matrix3DUtils.getForward=function(m,v){return"undefined"==typeof v&&(v=null),null===v&&(v=new away.geom.Vector3D(0,0,0)),m.copyColumnTo(2,v),v.normalize(),v},Matrix3DUtils.getUp=function(m,v){return"undefined"==typeof v&&(v=null),null===v&&(v=new away.geom.Vector3D(0,0,0)),m.copyColumnTo(1,v),v.normalize(),v},Matrix3DUtils.getRight=function(m,v){return"undefined"==typeof v&&(v=null),null===v&&(v=new away.geom.Vector3D(0,0,0)),m.copyColumnTo(0,v),v.normalize(),v},Matrix3DUtils.compare=function(m1,m2){var r1=Matrix3DUtils.RAW_DATA_CONTAINER,r2=m2.rawData;m1.copyRawDataTo(r1);for(var i=0;16>i;++i)if(r1[i]!=r2[i])return!1;return!0},Matrix3DUtils.lookAt=function(matrix,pos,dir,up){var dirN,upN,lftN,raw=Matrix3DUtils.RAW_DATA_CONTAINER;lftN=dir.crossProduct(up),lftN.normalize(),upN=lftN.crossProduct(dir),upN.normalize(),dirN=dir.clone(),dirN.normalize(),raw[0]=lftN.x,raw[1]=upN.x,raw[2]=-dirN.x,raw[3]=0,raw[4]=lftN.y,raw[5]=upN.y,raw[6]=-dirN.y,raw[7]=0,raw[8]=lftN.z,raw[9]=upN.z,raw[10]=-dirN.z,raw[11]=0,raw[12]=-lftN.dotProduct(pos),raw[13]=-upN.dotProduct(pos),raw[14]=dirN.dotProduct(pos),raw[15]=1,matrix.copyRawDataFrom(raw)},Matrix3DUtils.reflection=function(plane,target){"undefined"==typeof target&&(target=null),null===target&&(target=new away.geom.Matrix3D);var a=plane.a,b=plane.b,c=plane.c,d=plane.d,rawData=Matrix3DUtils.RAW_DATA_CONTAINER,ab2=-2*a*b,ac2=-2*a*c,bc2=-2*b*c;return rawData[0]=1-2*a*a,rawData[4]=ab2,rawData[8]=ac2,rawData[12]=-2*a*d,rawData[1]=ab2,rawData[5]=1-2*b*b,rawData[9]=bc2,rawData[13]=-2*b*d,rawData[2]=ac2,rawData[6]=bc2,rawData[10]=1-2*c*c,rawData[14]=-2*c*d,rawData[3]=0,rawData[7]=0,rawData[11]=0,rawData[15]=1,target.copyRawDataFrom(rawData),target},Matrix3DUtils.transformVector=function(matrix,vector,result){"undefined"==typeof result&&(result=null),result||(result=new away.geom.Vector3D);var raw=Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);var a=raw[0],e=raw[1],i=raw[2],m=raw[3],b=raw[4],f=raw[5],j=raw[6],n=raw[7],c=raw[8],g=raw[9],k=raw[10],o=raw[11],d=raw[12],h=raw[13],l=raw[14],p=raw[15],x=vector.x,y=vector.y,z=vector.z;return result.x=a*x+b*y+c*z+d,result.y=e*x+f*y+g*z+h,result.z=i*x+j*y+k*z+l,result.w=m*x+n*y+o*z+p,result},Matrix3DUtils.deltaTransformVector=function(matrix,vector,result){"undefined"==typeof result&&(result=null),result||(result=new away.geom.Vector3D);var raw=Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);var a=raw[0],e=raw[1],i=raw[2],m=raw[3],b=raw[4],f=raw[5],j=raw[6],n=raw[7],c=raw[8],g=raw[9],k=raw[10],o=raw[11],x=vector.x,y=vector.y,z=vector.z;return result.x=a*x+b*y+c*z,result.y=e*x+f*y+g*z,result.z=i*x+j*y+k*z,result.w=m*x+n*y+o*z,result},Matrix3DUtils.getTranslation=function(transform,result){return"undefined"==typeof result&&(result=null),result||(result=new away.geom.Vector3D),transform.copyColumnTo(3,result),result},Matrix3DUtils.deltaTransformVectors=function(matrix,vin,vout){var raw=Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);for(var a=raw[0],e=raw[1],i=raw[2],b=(raw[3],raw[4]),f=raw[5],j=raw[6],c=(raw[7],raw[8]),g=raw[9],k=raw[10],outIndex=(raw[11],0),length=vin.length,index=0;length>index;index+=3){var x=vin[index],y=vin[index+1],z=vin[index+2];vout[outIndex++]=a*x+b*y+c*z,vout[outIndex++]=e*x+f*y+g*z,vout[outIndex++]=i*x+j*y+k*z}},Matrix3DUtils.RAW_DATA_CONTAINER=new Array(16),Matrix3DUtils.CALCULATION_MATRIX=new away.geom.Matrix3D,Matrix3DUtils}();geom.Matrix3DUtils=Matrix3DUtils}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(geom){var PoissonLookup=function(){function PoissonLookup(){}return PoissonLookup.initDistributions=function(){this._distributions=new Array,this._distributions[0]=new Array(.3082841,.4320919),this._distributions[1]=new Array(.3082841,.4320919,-.2274942,-.6640266),this._distributions[2]=new Array(.8742689,.0009265686,-.6864116,-.5536607,-.2325206,.7678371),this._distributions[3]=new Array(.3913446,-.7084417,-.7511101,-.5935929,-.2323436,.5320091,.8435315,.5035911),this._distributions[4]=new Array(.2122471,-.5771395,-.8543506,-.1763534,.5189021,.8323698,-.3616908,.5865368,.9523004,-.04948437),this._distributions[5]=new Array(.5791035,.3496495,.2959551,-.6006749,-.2419119,-.06879545,-.7403072,.6110353,-.04555973,.8059174,-.5275017,-.737129),this._distributions[6]=new Array(.06941478,.8519508,-.7441907,.2426432,.6439992,-.2405252,-.1007523,-.2327587,-.6427067,-.7248485,.8050759,.5492936,.3573822,-.8824506),this._distributions[7]=new Array(.8509863,.4452587,-.09507271,.2073005,.1706571,-.6434793,.8029777,-.2718274,-.4401725,.8196304,.2715359,.8598521,-.8121575,-.006447683,-.6486837,-.7237598),this._distributions[8]=new Array(.6951686,-.2680728,-.04933243,.3710589,.6592212,.3661054,-.01579228,-.6909603,-.3275101,-.1756866,.3811549,.9218544,-.216032,.9755028,-.7065172,.3355389,-.6579109,-.6798355),this._distributions[9]=new Array(.6181276,-.09790418,-.2537868,-.5570995,-.1964931,.3459414,.3474613,-.8885581,.5135743,.5753114,-.9549091,.1480672,-.8711916,-.4293123,-.6928071,.6190156,-.13369,.8892705,.0548224,-.1246777),this._distributions[10]=new Array(.4853027,-.5080479,-.1331675,-.506597,.139575,.01316885,.803486,-.07568797,.5240274,.4883182,-.4334005,.1207938,-.7794577,-.3985141,.1576432,-.9861221,-.3712867,.6959021,.1517378,.9847429,-.9762396,.1661073),this._distributions[11]=new Array(-.2790166,-.01252619,.3389016,.3921154,.2408341,-.313211,-.8151779,-.3898362,-.6347761,.3486495,.09471484,-.7722448,-.1385674,.6364574,.2456331,.9295807,-.3864306,-.8247881,.6111673,-.7164014,.8287669,.05466961,.837706,.5415626),this._distributions[12]=new Array(.056417,.3185693,-.8245888,.1882799,.8575996,.1136829,.1070375,.875332,.4076743,-.06000621,-.4311306,.7239349,.2677574,-.538472,-.08486642,-.2083647,-.888989,-.3906443,-.4768958,-.6664082,.09334993,-.9861541,.808736,-.455949,.5889823,.7660807),this._distributions[13]=new Array(-.2681346,-.3955857,-.1315102,-.8852947,-.5143692,.09551838,.4344836,-.546945,-.8620899,-.3813288,.1650431,.02034803,-.1543657,.3842218,-.828457,.5376903,-.6145,-.7818927,-.2639062,.8784655,.1912684,.9720125,.3135219,.5224229,.7850655,.4592297,.7465045,-.1368916),this._distributions[14]=new Array(.4241029,.695281,.150511,-.02304107,-.2482675,.9120338,.8057325,.2622084,-.2445909,.2765962,.8588713,-.1772072,.3117845,-.4385471,-.3923851,-.3298936,-.1751254,-.7405846,.6926506,-.684163,-.9304563,-.3254691,-.8533293,.1523024,.2510415,-.917345,-.6239773,-.7105472,-.6104624,.6041355),this._distributions[15]=new Array(.5844554,.06651045,.1343258,.6756578,.3799674,-.6301104,.5590436,.7940555,.09574714,.02262517,.8697868,.393301,.003945862,-.421735,.9043913,-.2432393,-.4844007,.7190998,-.3201078,.2972371,-.3852352,-.6341155,-.5413069,-.09223081,-.8468984,-.5126905,.004156174,-.8633173,-.9681889,-.03305046,-.846509,.4414353),this._distributions[16]=new Array(.4506488,.657668,.4621297,.07441051,-.2782125,.6201044,.9750003,.09110117,.1019436,.2986514,.03457398,.9631706,.542098,-.5505635,.8675668,.4938077,-.5414361,.2655292,-.7941836,.6003053,-.09847672,-.1001604,-.9316511,-.08572888,.07286467,-.611899,-.5232627,-.4082253,-.5481608,-.827938,-.1551939,-.9621193,.9220031,-.3315949),this._distributions[17]=new Array(.197908,-.4697656,-.4474689,-.3428435,.8529873,-.2228634,.6022478,-.5469642,.2545276,-.931133,-.1507547,-.7855865,-.07606658,.1011628,.3046715,.2785755,.4698432,-.1064076,.6831254,.4152522,.1374381,.8363233,-.2166121,.6682042,.5511393,.7996449,-.4278994,.28836,-.8875198,.2181732,-.8772842,-.2818254,-.7000262,.5762185,-.6062385,-.7439126),this._distributions[18]=new Array(.6645703,-.05678739,.5720971,.4533803,-.07660709,.08802763,.5163431,-.4426552,.1163455,-.3404382,-.4004807,-.5046007,.2932099,-.8201418,-.5322125,.03834766,-.1490209,-.8817304,-.8000439,-.3509448,.5260983,.8421043,.1197811,.6963812,.9498612,.3122156,-.9285746,.02120355,-.6670724,.7217396,.9155889,-.3510147,-.271941,.4727852,.318879,.1634057,-.2686755,.9253026),this._distributions[19]=new Array(.5064292,.422527,.8935515,-.06610427,.1199719,.175568,.403388,-.2003276,.1657927,.8154403,.9301245,.2929218,-.1644068,.6201534,.7113559,-.6589743,-.3364046,-.1799502,.02109996,-.392765,-.382213,.3219992,-.9201946,.1207967,-.726185,.4291916,-.7443482,-.2480059,-.5147594,.7418784,.1935272,-.7406143,-.3643523,-.5559214,-.7147766,-.6326278,-.2524151,-.9096627,.5161405,.7908453),this._distributions[20]=new Array(.7921003,-.3032096,.5992879,-.009052323,.2538549,-.1872749,.7053444,.3677175,.5417761,-.8170255,.9749611,.1210478,.1969143,-.6117041,-.1824499,-.4634196,-.1181338,-.8668742,-.3050112,-.1352596,-.4409327,-.7082354,-.03225285,.1171548,.3113096,.3250439,-.8166144,-.463995,-.01014475,.4715334,-.6868284,.05091889,-.4011163,.2717285,-.06756835,.8307694,-.7938535,.4352129,-.4663842,.7165329,.559729,.8093995),this._distributions[21]=new Array(.07832243,.426151,-.3856795,.5799953,.01970797,.06706189,.4822682,.3014512,-.1532982,.87485,-.4959527,.07888043,.260601,-.2304784,.4996209,.7167382,.585986,-.04265174,-.7679967,.5509416,-.9041753,.1802134,-.8407655,-.4442826,-.2058258,-.2636995,-.4984115,-.5928579,.2926032,-.7886473,-.06933882,-.621177,.578115,-.4813387,.8981777,-.3291056,.1942733,.9255584,.8084362,.5066984,.9920095,.03103104,-.2403206,-.9389018),this._distributions[22]=new Array(-.5691095,.1014316,-.7788262,.384012,-.8253665,-.1645582,-.1830993,.002997211,-.2555013,-.4177977,-.6640869,-.4794711,-.2351242,.5850121,.02436554,.2825883,.006061143,-.8200245,.1618791,-.3063331,-.3765897,-.7249815,.6092919,-.6769328,-.5956934,.6957655,.5383642,.4522677,-.1489165,.9125596,.4167473,.1335986,.1898309,.5874342,.2288171,.9624356,.7540846,-.07672304,.8986252,.2788797,.3555991,-.9262139,.8454325,-.4027667,.4945236,-.2935512),this._distributions[23]=new Array(-.4481403,-.3758374,-.8877251,.08739938,.05015831,-.1339983,-.4070427,-.8534173,.1019274,-.5503222,-.445998,.1997541,-.8686263,-.2788867,-.7695944,-.6033704,-.05515742,-.885711,-.7714347,.5790485,.3466263,-.8799297,.4487582,-.5321087,-.2461368,.6053771,-.05568117,.2457351,-.4668669,.8523816,.8103387,-.4255538,.4054182,-.175663,-.2802011,-.08920153,.2665959,.382935,.555679,.1621837,.105246,.8420411,.6921161,.6902903,.880946,.2483067,.9699264,-.1021767),this._distributions[24]=new Array(-.1703323,-.3119385,.2916039,-.2988263,-.008472982,-.9277695,-.7730271,-.3277904,.3440474,-.6815342,-.2910278,.03461745,-.6764899,-.657078,-.3505501,-.7311988,-.03478927,.3258755,-.6048835,.159423,.2035525,.02212214,.5116573,.2226856,.6664805,-.2500189,.7147882,-.6609634,.03030632,-.5763278,-.2516585,.6116219,-.9434413,-.0116792,.9061816,.2491155,.182867,.6076167,.286593,.9485695,-.5992439,.6970096,-.2082874,.9416641,.9880044,-.1541709,-.9122881,.331555,.7324886,.6725098),this._distributions[25]=new Array(.3869598,-.04974834,.7168844,-.0693711,-.07166742,.1725325,.4599592,.3232779,.5872094,-.4198674,.2442266,-.625667,.1254557,.4500048,-.2290154,-.1803567,.890583,.3373493,.1256081,.7853789,-.2676466,.5305805,-.7063224,.252168,-.3989835,.1189921,.09617215,-.2451447,.6302541,.6085876,.9380925,-.3234899,.5086241,-.8573482,.03576187,-.9876697,-.0876712,-.6365195,-.5276513,.823456,-.6935764,-.2240411,-.5212318,-.5383121,-.2116208,.9639363,-.9840096,.02743555,-.3991577,-.8994547,-.7830126,.614068),this._distributions[26]=new Array(-.8366601,.4464895,-.5917366,-.02073906,-.9845258,.1635625,-.3097973,.4379579,-.5478154,.7173221,-.1685888,.9261969,.01503595,.6046097,.4452421,.5449086,.0315687,.1944619,.3753404,.8688548,.4143643,.1396648,.8711032,.4304703,.7328773,.1461501,.6374492,-.3521495,.145613,-.1341466,.9040975,-.135123,-.7839059,-.5450199,-.516019,-.3320859,-.206158,-.4431106,-.9703014,-.2368356,-.2473119,-.0864351,.2130725,-.4604077,-.003726701,-.7122303,-.4072131,-.6833169,.1632999,-.9776646,.4686888,-.680495,-.2293511,-.9509777),this._distributions[27]=new Array(.107311,-.1311369,-.4194764,-.3148777,.6171439,-.2745973,.2796618,.1937153,-.09106886,.4180236,.6044006,.05577846,.02927299,-.6738263,-.2580845,.1179939,-.09023564,-.3830024,.3570953,-.5000587,.81591,-.5518309,.9300217,-.1257987,.4904627,-.8381903,-.3163182,-.8632009,.1137595,-.9875998,.8390043,.3538185,.2149114,.4993694,.5191584,.3833552,.5002763,.7061465,-.2567276,.9068756,-.5197366,.3467845,.03668867,.9734009,-.5347553,.66747,-.9028882,.1023768,-.8967977,.412834,-.5821944,.0426479,-.8032165,-.2397038,-.5597343,-.6358021),this._distributions[28]=new Array(-.6562496,-.1781036,-.9301494,.1185208,-.3861143,-.4153562,-.1560799,-.1099607,-.5587025,.395218,-.5322112,-.699701,-.5008639,.08726846,-.970524,-.1963461,-.813577,-.5185111,-.1644458,.298,-.3216791,.639982,.3315373,.3339162,.2383235,-.00105722,.1137828,.5450742,-.01899921,.8798413,.2849685,.8255596,.6974412,.2123175,.7588523,.5470437,.5102502,-.1687844,.5853448,.8033476,.2590716,-.5262504,.5607718,-.6342825,.8666443,-.1491841,.8341052,-.4935003,-.1568441,-.6634066,.2512113,-.8769391,-.2559827,-.9572457,-.01928852,-.3966542,-.750667,.6409678),this._distributions[29]=new Array(.3454786,-.04837726,.2649553,.2406852,.5599093,-.3839145,-.1111814,-.05502108,.7586042,-.05818377,.2519488,-.4665135,-.1264972,.2602723,-.08766216,-.3671907,.6428129,.3999204,-.6105871,-.1246869,-.4589451,-.7646643,-.03021116,-.7899352,-.6036922,-.4293956,-.2481938,.6534185,.102798,.6784465,-.6392644,.4821358,-.6789002,.1779133,-.9140783,-.1989647,-.9262617,.3381507,.4794891,-.8093274,.3959447,.668478,.9602883,.2272305,-.123672,.9210883,.2375148,.9523395,-.52898,.7973378,-.382433,.1228794,.695015,.6948439,.7530277,-.6458191,.8777987,-.3272956,.2318525,-.962768),this._distributions[30]=new Array(.4518921,-.1146195,.4720805,-.4238748,.3655423,.1806341,.1589939,-.23568,.7673324,-.5149941,.01163658,.09045836,.7010971,.1245747,.7518286,-.1855433,.4960719,.4601022,.2566979,-.6308268,-.0654714,-.5126389,-.1823319,-.1343282,-.1464312,.4883236,-.3858738,.203523,.1484799,.4432284,-.477109,-.116241,.2719092,.7208626,.9104174,.3578536,-.5956199,.7662588,-.6996251,.3678654,-.2514512,.9251933,.1275825,-.9478135,-.204608,-.8611552,.4264838,-.877443,.9854161,.05521112,.5912951,.7997434,.1140349,.982093,-.9324368,-.2094094,-.42436,-.6441524,-.6722705,-.3554261,-.7844236,.08587621),this._distributions[31]=new Array(-.4206714,-.5613642,-.8733016,-.3373051,-.1046226,-.2902999,-.1318562,-.8434365,.1145093,-.5962623,-.4965627,-.1873259,-.5011808,-.8546229,-.7165636,-.5743566,.1090901,.2017643,.3404809,-.220455,-.1989015,.2372122,-.4538706,.0979171,.4514146,-.572846,.2314168,-.8514503,-.4247236,.5650803,-.943347,.04514639,-.1309718,.5221877,-.7004157,.4561877,.6306441,.04448673,.4301621,.5766876,.1078042,.7245752,.3875354,.2794483,.702876,-.2924213,.7360667,-.6210318,.7486517,.6531103,.4898235,.8591025,.6549174,.3854057,-.2596106,.7916998,.9251194,-.05296265,-.5620695,.820877,-.01228026,.9937211,.9612103,.2628758)},PoissonLookup.getDistribution=function(n){return this._distributions||this.initDistributions(),2>n||n>32?null:this._distributions[n-1]},PoissonLookup}();geom.PoissonLookup=PoissonLookup}(away.geom||(away.geom={}));away.geom}(away||(away={}));var away;!function(away){!function(net){var AssetLoaderContext=function(){function AssetLoaderContext(includeDependencies,dependencyBaseUrl){"undefined"==typeof includeDependencies&&(includeDependencies=!0),"undefined"==typeof dependencyBaseUrl&&(dependencyBaseUrl=null),this._includeDependencies=includeDependencies,this._dependencyBaseUrl=dependencyBaseUrl||"",this._embeddedDataByUrl={},this._remappedUrls={},this._materialMode=AssetLoaderContext.UNDEFINED}return Object.defineProperty(AssetLoaderContext.prototype,"includeDependencies",{get:function(){return this._includeDependencies},set:function(val){this._includeDependencies=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"materialMode",{get:function(){return this._materialMode},set:function(materialMode){this._materialMode=materialMode},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"dependencyBaseUrl",{get:function(){return this._dependencyBaseUrl},set:function(val){this._dependencyBaseUrl=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"overrideAbsolutePaths",{get:function(){return this._overrideAbsPath},set:function(val){this._overrideAbsPath=val},enumerable:!0,configurable:!0}),Object.defineProperty(AssetLoaderContext.prototype,"overrideFullURLs",{get:function(){return this._overrideFullUrls},set:function(val){this._overrideFullUrls=val},enumerable:!0,configurable:!0}),AssetLoaderContext.prototype.mapUrl=function(originalUrl,newUrl){this._remappedUrls[originalUrl]=newUrl},AssetLoaderContext.prototype.mapUrlToData=function(originalUrl,data){this._embeddedDataByUrl[originalUrl]=data},AssetLoaderContext.prototype._iHasDataForUrl=function(url){return this._embeddedDataByUrl.hasOwnProperty(url)},AssetLoaderContext.prototype._iGetDataForUrl=function(url){return this._embeddedDataByUrl[url]},AssetLoaderContext.prototype._iHasMappingForUrl=function(url){return this._remappedUrls.hasOwnProperty(url)},AssetLoaderContext.prototype._iGetRemappedUrl=function(originalUrl){return this._remappedUrls[originalUrl]},AssetLoaderContext.UNDEFINED=0,AssetLoaderContext.SINGLEPASS_MATERIALS=1,AssetLoaderContext.MULTIPASS_MATERIALS=2,AssetLoaderContext}();net.AssetLoaderContext=AssetLoaderContext}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var AssetLoader=function(_super){function AssetLoader(materialMode){"undefined"==typeof materialMode&&(materialMode=0),_super.call(this),this._materialMode=materialMode,this._stack=new Array,this._errorHandlers=new Array,this._parseErrorHandlers=new Array,this._onReadyForDependenciesDelegate=away.utils.Delegate.create(this,this.onReadyForDependencies),this._onParseCompleteDelegate=away.utils.Delegate.create(this,this.onParseComplete),this._onParseErrorDelegate=away.utils.Delegate.create(this,this.onParseError),this._onLoadCompleteDelegate=away.utils.Delegate.create(this,this.onLoadComplete),this._onLoadErrorDelegate=away.utils.Delegate.create(this,this.onLoadError),this._onTextureSizeErrorDelegate=away.utils.Delegate.create(this,this.onTextureSizeError),this._onAssetCompleteDelegate=away.utils.Delegate.create(this,this.onAssetComplete)}return __extends(AssetLoader,_super),AssetLoader.enableParser=function(parser){AssetLoader._parsers.indexOf(parser)<0&&AssetLoader._parsers.push(parser)},AssetLoader.enableParsers=function(parsers){for(var c=0;ci;i++)this._currentDependency.dependencies[i]=parserDependancies[i];parserDependancies.length=0,this._stack.push(this._currentDependency),this.retrieveNext()}},AssetLoader.prototype.resolveParserDependencies=function(){this._currentDependency._iSuccess=!0,this._currentDependency.parser&&this._currentDependency.parser.dependencies.length&&(!this._context||this._context.includeDependencies)?this.retrieveParserDependencies():this.retrieveNext()},AssetLoader.prototype.onLoadError=function(event){var handled,isDependency=this._currentDependency!=this._baseDependency,loader=event.target;if(this.removeEventListeners(loader),this.hasEventListener(away.events.IOErrorEvent.IO_ERROR))this.dispatchEvent(event),handled=!0;else{var i,len=this._errorHandlers.length;
+for(i=0;len>i;i++)handled||(handled=this._errorHandlers[i](event))}if(!handled)throw new away.errors.Error;return isDependency?(this._currentDependency.resolveFailure(),this.retrieveNext(),void 0):(this.dispose(),void 0)},AssetLoader.prototype.onParseError=function(event){var handled,loader=(this._currentDependency!=this._baseDependency,event.target);if(this.removeEventListeners(loader),this.hasEventListener(away.events.ParserEvent.PARSE_ERROR))this.dispatchEvent(event),handled=!0;else{var i,len=this._parseErrorHandlers.length;for(i=0;len>i;i++)handled||(handled=this._parseErrorHandlers[i](event))}if(handled)return this.dispose(),void 0;throw new away.errors.Error(event.message)},AssetLoader.prototype.onAssetComplete=function(event){this._currentDependency&&this._currentDependency.assets.push(event.asset),event.asset.resetAssetPath(event.asset.name,this._namespace),this._currentDependency.suppresAssetEvents||this.dispatchEvent(event)},AssetLoader.prototype.onReadyForDependencies=function(event){var parser=event.target;this._context&&!this._context.includeDependencies?parser._iResumeParsingAfterDependencies():this.retrieveParserDependencies()},AssetLoader.prototype.onLoadComplete=function(event){var loader=event.target;this.removeEventListeners(loader),this._currentDependency._iSetData(loader.data),this._currentDependency.retrieveAsRawData?this.resolveParserDependencies():this.parseDependency(this._currentDependency)},AssetLoader.prototype.onParseComplete=function(event){var parser=event.target;this.resolveParserDependencies(),parser.removeEventListener(away.events.ParserEvent.READY_FOR_DEPENDENCIES,this._onReadyForDependenciesDelegate),parser.removeEventListener(away.events.ParserEvent.PARSE_COMPLETE,this._onParseCompleteDelegate),parser.removeEventListener(away.events.ParserEvent.PARSE_ERROR,this._onParseErrorDelegate),parser.removeEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),parser.removeEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate)},AssetLoader.prototype.onTextureSizeError=function(event){event.asset.name=this._currentDependency.resolveName(event.asset),this.dispatchEvent(event)},AssetLoader.prototype.addEventListeners=function(loader){loader.addEventListener(away.events.Event.COMPLETE,this._onLoadCompleteDelegate),loader.addEventListener(away.events.IOErrorEvent.IO_ERROR,this._onLoadErrorDelegate)},AssetLoader.prototype.removeEventListeners=function(loader){loader.removeEventListener(away.events.Event.COMPLETE,this._onLoadCompleteDelegate),loader.removeEventListener(away.events.IOErrorEvent.IO_ERROR,this._onLoadErrorDelegate)},AssetLoader.prototype.stop=function(){this.dispose()},AssetLoader.prototype.dispose=function(){this._errorHandlers=null,this._parseErrorHandlers=null,this._context=null,this._token=null,this._stack=null,this._currentDependency&&this._currentDependency._iLoader&&this.removeEventListeners(this._currentDependency._iLoader),this._currentDependency=null},AssetLoader.prototype._iAddParseErrorHandler=function(handler){this._parseErrorHandlers.indexOf(handler)<0&&this._parseErrorHandlers.push(handler)},AssetLoader.prototype._iAddErrorHandler=function(handler){this._errorHandlers.indexOf(handler)<0&&this._errorHandlers.push(handler)},AssetLoader.prototype.getParserFromData=function(data){for(var len=AssetLoader._parsers.length,i=len-1;i>=0;i--)if(AssetLoader._parsers[i].supportsData(data))return new AssetLoader._parsers[i];return null},AssetLoader.prototype.parseDependency=function(dependency){var parser=dependency.parser;if(parser||dependency._iSetParser(parser=this.getParserFromData(dependency.data)),parser)parser.addEventListener(away.events.ParserEvent.READY_FOR_DEPENDENCIES,this._onReadyForDependenciesDelegate),parser.addEventListener(away.events.ParserEvent.PARSE_COMPLETE,this._onParseCompleteDelegate),parser.addEventListener(away.events.ParserEvent.PARSE_ERROR,this._onParseErrorDelegate),parser.addEventListener(away.events.AssetEvent.TEXTURE_SIZE_ERROR,this._onTextureSizeErrorDelegate),parser.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),dependency.request&&dependency.request.url&&(parser._iFileName=dependency.request.url),parser.materialMode=this._materialMode,parser.parseAsync(dependency.data);else{var message="No parser defined. To enable all parsers for auto-detection, use Parsers.enableAllBundled()";if(!this.hasEventListener(away.events.ParserEvent.PARSE_ERROR))throw new Error(message);this.dispatchEvent(new away.events.ParserEvent(away.events.ParserEvent.PARSE_ERROR,message))}},AssetLoader.prototype.getParserFromSuffix=function(url){for(var base=url.indexOf("?")>0?url.split("?")[0]:url,fileExtension=base.substr(base.lastIndexOf(".")+1).toLowerCase(),len=AssetLoader._parsers.length,i=len-1;i>=0;i--){var parserClass=AssetLoader._parsers[i];if(parserClass.supportsType(fileExtension))return new parserClass}return null},AssetLoader._parsers=new Array(away.parsers.BitmapParser,away.parsers.Texture2DParser,away.parsers.CubeTextureParser),AssetLoader}(away.events.EventDispatcher);net.AssetLoader=AssetLoader}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var AssetLoaderToken=function(_super){function AssetLoaderToken(loader){_super.call(this),this._iLoader=loader}return __extends(AssetLoaderToken,_super),AssetLoaderToken.prototype.addEventListener=function(type,listener){this._iLoader.addEventListener(type,listener)},AssetLoaderToken.prototype.removeEventListener=function(type,listener){this._iLoader.removeEventListener(type,listener)},AssetLoaderToken.prototype.hasEventListener=function(type,listener){return"undefined"==typeof listener&&(listener=null),this._iLoader.hasEventListener(type,listener)},AssetLoaderToken}(away.events.EventDispatcher);net.AssetLoaderToken=AssetLoaderToken}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLRequest=function(){function URLRequest(url){"undefined"==typeof url&&(url=null),this.method=away.net.URLRequestMethod.GET,this.async=!0,this._url=url}return Object.defineProperty(URLRequest.prototype,"url",{get:function(){return this._url},set:function(value){this._url=value},enumerable:!0,configurable:!0}),URLRequest.prototype.dispose=function(){this.data=null,this._url=null},URLRequest}();net.URLRequest=URLRequest}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLLoaderDataFormat=function(){function URLLoaderDataFormat(){}return URLLoaderDataFormat.TEXT="text",URLLoaderDataFormat.VARIABLES="variables",URLLoaderDataFormat.BLOB="blob",URLLoaderDataFormat.ARRAY_BUFFER="arraybuffer",URLLoaderDataFormat.BINARY="binary",URLLoaderDataFormat}();net.URLLoaderDataFormat=URLLoaderDataFormat}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLRequestMethod=function(){function URLRequestMethod(){}return URLRequestMethod.POST="POST",URLRequestMethod.GET="GET",URLRequestMethod}();net.URLRequestMethod=URLRequestMethod}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLLoader=function(_super){function URLLoader(){_super.call(this),this._bytesLoaded=0,this._bytesTotal=0,this._dataFormat=away.net.URLLoaderDataFormat.TEXT,this._loadError=!1}return __extends(URLLoader,_super),Object.defineProperty(URLLoader.prototype,"url",{get:function(){return this._request?this._request.url:""},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"data",{get:function(){return this._data},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"dataFormat",{get:function(){return this._dataFormat},set:function(format){this._dataFormat=format},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"bytesLoaded",{get:function(){return this._bytesLoaded},enumerable:!0,configurable:!0}),Object.defineProperty(URLLoader.prototype,"bytesTotal",{get:function(){return this._bytesTotal},enumerable:!0,configurable:!0}),URLLoader.prototype.load=function(request){this._request=request,this.initXHR(),request.method===away.net.URLRequestMethod.POST?this.postRequest(request):this.getRequest(request)},URLLoader.prototype.close=function(){this._XHR.abort(),this.disposeXHR()},URLLoader.prototype.dispose=function(){this._XHR&&this._XHR.abort(),this.disposeXHR(),this._data=null,this._dataFormat=null,this._bytesLoaded=null,this._bytesTotal=null},URLLoader.prototype.setResponseType=function(xhr,responseType){switch(responseType){case away.net.URLLoaderDataFormat.ARRAY_BUFFER:case away.net.URLLoaderDataFormat.BLOB:case away.net.URLLoaderDataFormat.TEXT:xhr.responseType=responseType;break;case away.net.URLLoaderDataFormat.VARIABLES:xhr.responseType=away.net.URLLoaderDataFormat.TEXT;break;case away.net.URLLoaderDataFormat.BINARY:xhr.responseType=""}},URLLoader.prototype.getRequest=function(request){try{this._XHR.open(request.method,request.url,request.async),this.setResponseType(this._XHR,this._dataFormat),this._XHR.send()}catch(e){this.handleXmlHttpRequestException(e)}},URLLoader.prototype.postRequest=function(request){if(this._loadError=!1,this._XHR.open(request.method,request.url,request.async),null!=request.data)if(request.data instanceof away.net.URLVariables){var urlVars=request.data;try{this._XHR.responseType="text",this._XHR.send(urlVars.formData)}catch(e){this.handleXmlHttpRequestException(e)}}else this.setResponseType(this._XHR,this._dataFormat),request.data?this._XHR.send(request.data):this._XHR.send();else this._XHR.send()},URLLoader.prototype.handleXmlHttpRequestException=function(error){switch(error.code){case 101:}},URLLoader.prototype.initXHR=function(){var _this=this;this._XHR||(this._XHR=new XMLHttpRequest,this._XHR.onloadstart=function(event){return _this.onLoadStart(event)},this._XHR.onprogress=function(event){return _this.onProgress(event)},this._XHR.onabort=function(event){return _this.onAbort(event)},this._XHR.onerror=function(event){return _this.onLoadError(event)},this._XHR.onload=function(event){return _this.onLoadComplete(event)},this._XHR.ontimeout=function(event){return _this.onTimeOut(event)},this._XHR.onloadend=function(event){return _this.onLoadEnd(event)},this._XHR.onreadystatechange=function(event){return _this.onReadyStateChange(event)})},URLLoader.prototype.disposeXHR=function(){null!==this._XHR&&(this._XHR.onloadstart=null,this._XHR.onprogress=null,this._XHR.onabort=null,this._XHR.onerror=null,this._XHR.onload=null,this._XHR.ontimeout=null,this._XHR.onloadend=null,this._XHR=null)},URLLoader.prototype.decodeURLVariables=function(source){var result=new Object;source=source.split("+").join(" ");for(var tokens,re=/[?&]?([^=]+)=([^&]*)/g;tokens=re.exec(source);)result[decodeURIComponent(tokens[1])]=decodeURIComponent(tokens[2]);return result},URLLoader.prototype.onReadyStateChange=function(){4==this._XHR.readyState&&(404==this._XHR.status&&(this._loadError=!0,this._loadErrorEvent||(this._loadErrorEvent=new away.events.IOErrorEvent(away.events.IOErrorEvent.IO_ERROR)),this.dispatchEvent(this._loadErrorEvent)),this.dispatchEvent(new away.events.HTTPStatusEvent(away.events.HTTPStatusEvent.HTTP_STATUS,this._XHR.status)))},URLLoader.prototype.onLoadEnd=function(){this._loadError===!0},URLLoader.prototype.onTimeOut=function(){},URLLoader.prototype.onAbort=function(){},URLLoader.prototype.onProgress=function(event){this._progressEvent||(this._progressEvent=new away.events.ProgressEvent(away.events.ProgressEvent.PROGRESS)),this._progressEvent.bytesTotal=event.total,this._progressEvent.bytesLoaded=event.loaded,this.dispatchEvent(this._progressEvent)},URLLoader.prototype.onLoadStart=function(){this._loadStartEvent||(this._loadStartEvent=new away.events.Event(away.events.Event.OPEN)),this.dispatchEvent(this._loadStartEvent)},URLLoader.prototype.onLoadComplete=function(){if(this._loadError!==!0){switch(this._dataFormat){case away.net.URLLoaderDataFormat.TEXT:this._data=this._XHR.responseText;break;case away.net.URLLoaderDataFormat.VARIABLES:this._data=this.decodeURLVariables(this._XHR.responseText);break;case away.net.URLLoaderDataFormat.BLOB:case away.net.URLLoaderDataFormat.ARRAY_BUFFER:case away.net.URLLoaderDataFormat.BINARY:this._data=this._XHR.response;break;default:this._data=this._XHR.responseText}this._loadCompleteEvent||(this._loadCompleteEvent=new away.events.Event(away.events.Event.COMPLETE)),this.dispatchEvent(this._loadCompleteEvent)}},URLLoader.prototype.onLoadError=function(){this._loadError=!0,this._loadErrorEvent||(this._loadErrorEvent=new away.events.IOErrorEvent(away.events.IOErrorEvent.IO_ERROR)),this.dispatchEvent(this._loadErrorEvent)},URLLoader}(away.events.EventDispatcher);net.URLLoader=URLLoader}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(net){var URLVariables=function(){function URLVariables(source){"undefined"==typeof source&&(source=null),this._variables=new Object,null!==source&&this.decode(source)}return URLVariables.prototype.decode=function(source){source=source.split("+").join(" ");for(var tokens,re=/[?&]?([^=]+)=([^&]*)/g;tokens=re.exec(source);)this._variables[decodeURIComponent(tokens[1])]=decodeURIComponent(tokens[2])},URLVariables.prototype.toString=function(){return""},Object.defineProperty(URLVariables.prototype,"variables",{get:function(){return this._variables},set:function(obj){this._variables=obj},enumerable:!0,configurable:!0}),Object.defineProperty(URLVariables.prototype,"formData",{get:function(){var fd=new FormData;for(var s in this._variables)fd.append(s,this._variables[s]);return fd},enumerable:!0,configurable:!0}),URLVariables}();net.URLVariables=URLVariables}(away.net||(away.net={}));away.net}(away||(away={}));var away;!function(away){!function(text){var AntiAliasType=function(){function AntiAliasType(){}return AntiAliasType.ADVANCED="advanced",AntiAliasType.NORMAL="normal",AntiAliasType}();text.AntiAliasType=AntiAliasType}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var GridFitType=function(){function GridFitType(){}return GridFitType.NONE="none",GridFitType.PIXEL="pixel",GridFitType.SUBPIXEL="subpixel",GridFitType}();text.GridFitType=GridFitType}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFieldAutoSize=function(){function TextFieldAutoSize(){}return TextFieldAutoSize.CENTER="center",TextFieldAutoSize.LEFT="left",TextFieldAutoSize.NONE="none",TextFieldAutoSize.RIGHT="right",TextFieldAutoSize}();text.TextFieldAutoSize=TextFieldAutoSize}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFieldType=function(){function TextFieldType(){}return TextFieldType.DYNAMIC="dynamic",TextFieldType.INPUT="input",TextFieldType}();text.TextFieldType=TextFieldType}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFormat=function(){function TextFormat(font,size,color,bold,italic,underline,url,target,align,leftMargin,rightMargin,indent,leading){"undefined"==typeof font&&(font="Times New Roman"),"undefined"==typeof size&&(size=12),"undefined"==typeof color&&(color=0),"undefined"==typeof bold&&(bold=!1),"undefined"==typeof italic&&(italic=!1),"undefined"==typeof underline&&(underline=!1),"undefined"==typeof url&&(url=""),"undefined"==typeof target&&(target=""),"undefined"==typeof align&&(align="left"),"undefined"==typeof leftMargin&&(leftMargin=0),"undefined"==typeof rightMargin&&(rightMargin=0),"undefined"==typeof indent&&(indent=0),"undefined"==typeof leading&&(leading=0),this.tabStops=new Array,this.font=font,this.size=size,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}return TextFormat}();text.TextFormat=TextFormat}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextFormatAlign=function(){function TextFormatAlign(){this.CENTER="center",this.JUSTIFY="justify",this.LEFT="left",this.RIGHT="right"}return TextFormatAlign}();text.TextFormatAlign=TextFormatAlign}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextInteractionMode=function(){function TextInteractionMode(){}return TextInteractionMode.NORMAL="normal",TextInteractionMode.SELECTION="selection",TextInteractionMode}();text.TextInteractionMode=TextInteractionMode}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(text){var TextLineMetrics=function(){function TextLineMetrics(x,width,height,ascent,descent,leading){"undefined"==typeof x&&(x=0/0),"undefined"==typeof width&&(width=0/0),"undefined"==typeof height&&(height=0/0),"undefined"==typeof ascent&&(ascent=0/0),"undefined"==typeof descent&&(descent=0/0),"undefined"==typeof leading&&(leading=0/0)}return TextLineMetrics}();text.TextLineMetrics=TextLineMetrics}(away.text||(away.text={}));away.text}(away||(away={}));var away;!function(away){!function(ui){var Keyboard=function(){function Keyboard(){}return Keyboard.A=65,Keyboard.ALTERNATE=18,Keyboard.AUDIO=16777239,Keyboard.B=66,Keyboard.BACK=16777238,Keyboard.BACKQUOTE=192,Keyboard.BACKSLASH=220,Keyboard.BACKSPACE=8,Keyboard.BLUE=16777219,Keyboard.C=67,Keyboard.CAPS_LOCK=20,Keyboard.CHANNEL_DOWN=16777221,Keyboard.CHANNEL_UP=16777221,Keyboard.COMMA=188,Keyboard.COMMAND=15,Keyboard.CONTROL=17,Keyboard.D=68,Keyboard.DELETE=46,Keyboard.DOWN=40,Keyboard.DVR=16777241,Keyboard.E=69,Keyboard.END=35,Keyboard.ENTER=13,Keyboard.EQUAL=187,Keyboard.ESCAPE=27,Keyboard.EXIT=16777237,Keyboard.F=70,Keyboard.F1=112,Keyboard.F10=121,Keyboard.F11=122,Keyboard.F12=123,Keyboard.F13=124,Keyboard.F14=125,Keyboard.F15=126,Keyboard.F2=113,Keyboard.F3=114,Keyboard.F4=115,Keyboard.F5=116,Keyboard.F6=117,Keyboard.F7=118,Keyboard.F8=119,Keyboard.F9=120,Keyboard.FAST_FORWARD=16777226,Keyboard.G=71,Keyboard.GREEN=16777217,Keyboard.GUIDE=16777236,Keyboard.H=72,Keyboard.HELP=16777245,Keyboard.HOME=36,Keyboard.I=73,Keyboard.INFO=16777235,Keyboard.INPUT=16777243,Keyboard.INSERT=45,Keyboard.J=74,Keyboard.K=75,Keyboard.KEYNAME_BEGIN="Begin",Keyboard.KEYNAME_BREAK="Break",Keyboard.KEYNAME_CLEARDISPLAY="ClrDsp",Keyboard.KEYNAME_CLEARLINE="ClrLn",Keyboard.KEYNAME_DELETE="Delete",Keyboard.KEYNAME_DELETECHAR="DelChr",Keyboard.KEYNAME_DELETELINE="DelLn",Keyboard.KEYNAME_DOWNARROW="Down",Keyboard.KEYNAME_END="End",Keyboard.KEYNAME_EXECUTE="Exec",Keyboard.KEYNAME_F1="F1",Keyboard.KEYNAME_F10="F10",Keyboard.KEYNAME_F11="F11",Keyboard.KEYNAME_F12="F12",Keyboard.KEYNAME_F13="F13",Keyboard.KEYNAME_F14="F14",Keyboard.KEYNAME_F15="F15",Keyboard.KEYNAME_F16="F16",Keyboard.KEYNAME_F17="F17",Keyboard.KEYNAME_F18="F18",Keyboard.KEYNAME_F19="F19",Keyboard.KEYNAME_F2="F2",Keyboard.KEYNAME_F20="F20",Keyboard.KEYNAME_F21="F21",Keyboard.KEYNAME_F22="F22",Keyboard.KEYNAME_F23="F23",Keyboard.KEYNAME_F24="F24",Keyboard.KEYNAME_F25="F25",Keyboard.KEYNAME_F26="F26",Keyboard.KEYNAME_F27="F27",Keyboard.KEYNAME_F28="F28",Keyboard.KEYNAME_F29="F29",Keyboard.KEYNAME_F3="F3",Keyboard.KEYNAME_F30="F30",Keyboard.KEYNAME_F31="F31",Keyboard.KEYNAME_F32="F32",Keyboard.KEYNAME_F33="F33",Keyboard.KEYNAME_F34="F34",Keyboard.KEYNAME_F35="F35",Keyboard.KEYNAME_F4="F4",Keyboard.KEYNAME_F5="F5",Keyboard.KEYNAME_F6="F6",Keyboard.KEYNAME_F7="F7",Keyboard.KEYNAME_F8="F8",Keyboard.KEYNAME_F9="F9",Keyboard.KEYNAME_FIND="Find",Keyboard.KEYNAME_HELP="Help",Keyboard.KEYNAME_HOME="Home",Keyboard.KEYNAME_INSERT="Insert",Keyboard.KEYNAME_INSERTCHAR="InsChr",Keyboard.KEYNAME_INSERTLINE="LnsLn",Keyboard.KEYNAME_LEFTARROW="Left",Keyboard.KEYNAME_MENU="Menu",Keyboard.KEYNAME_MODESWITCH="ModeSw",Keyboard.KEYNAME_NEXT="Next",Keyboard.KEYNAME_PAGEDOWN="PgDn",Keyboard.KEYNAME_PAGEUP="PgUp",Keyboard.KEYNAME_PAUSE="Pause",Keyboard.KEYNAME_PREV="Prev",Keyboard.KEYNAME_PRINT="Print",Keyboard.KEYNAME_PRINTSCREEN="PrntScrn",Keyboard.KEYNAME_REDO="Redo",Keyboard.KEYNAME_RESET="Reset",Keyboard.KEYNAME_RIGHTARROW="Right",Keyboard.KEYNAME_SCROLLLOCK="ScrlLck",Keyboard.KEYNAME_SELECT="Select",Keyboard.KEYNAME_STOP="Stop",Keyboard.KEYNAME_SYSREQ="SysReq",Keyboard.KEYNAME_SYSTEM="Sys",Keyboard.KEYNAME_UNDO="Undo",Keyboard.KEYNAME_UPARROW="Up",Keyboard.KEYNAME_USER="User",Keyboard.L=76,Keyboard.LAST=16777233,Keyboard.LEFT=37,Keyboard.LEFTBRACKET=219,Keyboard.LIVE=16777232,Keyboard.M=77,Keyboard.MASTER_SHELL=16777246,Keyboard.MENU=16777234,Keyboard.MINUS=189,Keyboard.N=78,Keyboard.NEXT=16777230,Keyboard.NUMBER_0=48,Keyboard.NUMBER_1=49,Keyboard.NUMBER_2=50,Keyboard.NUMBER_3=51,Keyboard.NUMBER_4=52,Keyboard.NUMBER_5=53,Keyboard.NUMBER_6=54,Keyboard.NUMBER_7=55,Keyboard.NUMBER_8=56,Keyboard.NUMBER_9=57,Keyboard.NUMPAD=21,Keyboard.NUMPAD_0=96,Keyboard.NUMPAD_1=97,Keyboard.NUMPAD_2=98,Keyboard.NUMPAD_3=99,Keyboard.NUMPAD_4=100,Keyboard.NUMPAD_5=101,Keyboard.NUMPAD_6=102,Keyboard.NUMPAD_7=103,Keyboard.NUMPAD_8=104,Keyboard.NUMPAD_9=105,Keyboard.NUMPAD_ADD=107,Keyboard.NUMPAD_DECIMAL=110,Keyboard.NUMPAD_DIVIDE=111,Keyboard.NUMPAD_ENTER=108,Keyboard.NUMPAD_MULTIPLY=106,Keyboard.NUMPAD_SUBTRACT=109,Keyboard.O=79,Keyboard.P=80,Keyboard.PAGE_DOWN=34,Keyboard.PAGE_UP=33,Keyboard.PAUSE=16777224,Keyboard.PERIOD=190,Keyboard.PLAY=16777223,Keyboard.PREVIOUS=16777231,Keyboard.Q=81,Keyboard.QUOTE=222,Keyboard.R=82,Keyboard.RECORD=16777222,Keyboard.RED=16777216,Keyboard.REWIND=16777227,Keyboard.RIGHT=39,Keyboard.RIGHTBRACKET=221,Keyboard.S=83,Keyboard.SEARCH=16777247,Keyboard.SEMICOLON=186,Keyboard.SETUP=16777244,Keyboard.SHIFT=16,Keyboard.SKIP_BACKWARD=16777229,Keyboard.SKIP_FORWARD=16777228,Keyboard.SLASH=191,Keyboard.SPACE=32,Keyboard.STOP=16777225,Keyboard.SUBTITLE=16777240,Keyboard.T=84,Keyboard.TAB=9,Keyboard.U=85,Keyboard.UP=38,Keyboard.V=86,Keyboard.VOD=16777242,Keyboard.W=87,Keyboard.X=88,Keyboard.Y=89,Keyboard.YELLOW=16777218,Keyboard.Z=90,Keyboard}();ui.Keyboard=Keyboard}(away.ui||(away.ui={}));away.ui}(away||(away={}));var away;!function(away){!function(containers){var DisplayObjectContainer=function(_super){function DisplayObjectContainer(){_super.call(this),this._mouseChildren=!0,this._children=new Array}return __extends(DisplayObjectContainer,_super),Object.defineProperty(DisplayObjectContainer.prototype,"assetType",{get:function(){return away.library.AssetType.CONTAINER},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObjectContainer.prototype,"mouseChildren",{get:function(){return this._mouseChildren},set:function(value){this._mouseChildren!=value&&(this._mouseChildren=value,this._pUpdateImplicitMouseEnabled(this._pParent?this._pParent.mouseChildren:!0))},enumerable:!0,configurable:!0}),Object.defineProperty(DisplayObjectContainer.prototype,"numChildren",{get:function(){return this._children.length},enumerable:!0,configurable:!0}),DisplayObjectContainer.prototype.addChild=function(child){if(null==child)throw new away.errors.Error("Parameter child cannot be null.");return child._pParent&&child._pParent.removeChildInternal(child),child.iSetParent(this),this._children.push(child),child},DisplayObjectContainer.prototype.addChildAt=function(child){return child},DisplayObjectContainer.prototype.addChildren=function(){for(var childarray=[],_i=0;_ii;i++)this.addChild(childarray[i])},DisplayObjectContainer.prototype.clone=function(){var clone=new away.containers.DisplayObjectContainer;clone.pivot=this.pivot,clone._iMatrix3D=this._iMatrix3D,clone.partition=this.partition,clone.name=name;for(var len=this._children.length,i=0;len>i;++i)clone.addChild(this._children[i].clone());return clone},DisplayObjectContainer.prototype.contains=function(child){return this._children.indexOf(child)>=0},DisplayObjectContainer.prototype.disposeWithChildren=function(){for(this.dispose();this.numChildren>0;)this.getChildAt(0).dispose()},DisplayObjectContainer.prototype.getChildAt=function(index){var child=this._children[index];if(null==child)throw new away.errors.RangeError("Index does not exist in the child list of the caller");return child},DisplayObjectContainer.prototype.getChildByName=function(name){for(var len=this._children.length,i=0;len>i;++i)if(this._children[i].name==name)return this._children[i];return null},DisplayObjectContainer.prototype.getChildIndex=function(child){var childIndex=this._children.indexOf(child);if(-1==childIndex)throw new away.errors.ArgumentError("Child parameter is not a child of the caller");return childIndex},DisplayObjectContainer.prototype.getObjectsUnderPoint=function(){return new Array},DisplayObjectContainer.prototype.removeChild=function(child){if(null==child)throw new away.errors.Error("Parameter child cannot be null");return this.removeChildInternal(child),child.iSetParent(null),child},DisplayObjectContainer.prototype.removeChildAt=function(index){return this.removeChild(this._children[index])},DisplayObjectContainer.prototype.removeChildren=function(beginIndex,endIndex){if("undefined"==typeof beginIndex&&(beginIndex=0),"undefined"==typeof endIndex&&(endIndex=2147483647),0>beginIndex)throw new away.errors.RangeError("beginIndex is out of range of the child list");if(endIndex>this._children.length)throw new away.errors.RangeError("endIndex is out of range of the child list");for(var i=beginIndex;endIndex>i;i++)this.removeChild(this._children[i])},DisplayObjectContainer.prototype.setChildIndex=function(){},DisplayObjectContainer.prototype.swapChildren=function(){},DisplayObjectContainer.prototype.swapChildrenAt=function(){},DisplayObjectContainer.prototype.pInvalidateSceneTransform=function(){_super.prototype.pInvalidateSceneTransform.call(this);for(var len=this._children.length,i=0;len>i;++i)this._children[i++].pInvalidateSceneTransform()},DisplayObjectContainer.prototype._pUpdateScene=function(value){_super.prototype._pUpdateScene.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateScene(value)},DisplayObjectContainer.prototype._pUpdateImplicitMouseEnabled=function(value){_super.prototype._pUpdateImplicitMouseEnabled.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateImplicitMouseEnabled(this._mouseChildren)},DisplayObjectContainer.prototype._pUpdateImplicitVisibility=function(value){_super.prototype._pUpdateImplicitVisibility.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateImplicitVisibility(this._pImplicitVisibility)},DisplayObjectContainer.prototype._pUpdateImplicitPartition=function(value){_super.prototype._pUpdateImplicitPartition.call(this,value);for(var len=this._children.length,i=0;len>i;++i)this._children[i]._pUpdateImplicitPartition(this._pImplicitPartition)},DisplayObjectContainer.prototype.removeChildInternal=function(child){return this._children.splice(this.getChildIndex(child),1),child},DisplayObjectContainer}(away.base.DisplayObject);containers.DisplayObjectContainer=DisplayObjectContainer}(away.containers||(away.containers={}));away.containers}(away||(away={}));var away;!function(away){!function(entities){var MaterialEvent=away.events.MaterialEvent,Billboard=(away.geom.Matrix3D,away.geom.UVTransform,function(_super){function Billboard(material,pixelSnapping,smoothing){"undefined"==typeof pixelSnapping&&(pixelSnapping="auto"),"undefined"==typeof smoothing&&(smoothing=!1);var _this=this;_super.call(this),this._pIsEntity=!0,this.onSizeChangedDelegate=function(event){return _this.onSizeChanged(event)},this.material=material,this._billboardWidth=material.width,this._billboardHeight=material.height}return __extends(Billboard,_super),Object.defineProperty(Billboard.prototype,"animator",{get:function(){return this._animator},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"assetType",{get:function(){return away.library.AssetType.BILLBOARD},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"billboardHeight",{get:function(){return this._billboardHeight},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"billboardWidth",{get:function(){return this._billboardWidth},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"material",{get:function(){return this._material},set:function(value){value!=this._material&&(this._material&&(this._material.iRemoveOwner(this),this._material.removeEventListener(MaterialEvent.SIZE_CHANGED,this.onSizeChangedDelegate)),this._material=value,this._material&&(this._material.iAddOwner(this),this._material.addEventListener(MaterialEvent.SIZE_CHANGED,this.onSizeChangedDelegate)))},enumerable:!0,configurable:!0}),Object.defineProperty(Billboard.prototype,"uvTransform",{get:function(){return this._uvTransform},set:function(value){this._uvTransform=value},enumerable:!0,configurable:!0}),Billboard.prototype.pCreateEntityPartitionNode=function(){return new away.partition.EntityNode(this)},Billboard.prototype.pUpdateBounds=function(){this._pBounds.fromExtremes(0,0,0,this._billboardWidth,this._billboardHeight,0),_super.prototype.pUpdateBounds.call(this)},Billboard.prototype._iTestCollision=function(shortestCollisionDistance){return this._pPickingCollider.testBillboardCollision(this,this._pPickingCollisionVO,shortestCollisionDistance)},Billboard.prototype.onSizeChanged=function(){this._billboardWidth=this._material.width,this._billboardHeight=this._material.height,this._pBoundsInvalid=!0;for(var len=this._pRenderables.length,i=0;len>i;i++)this._pRenderables[i].invalidateVertexData("vertices")},Billboard.prototype._iCollectRenderables=function(renderer){this._iSourcePrefab&&this._iSourcePrefab._iValidate(),this._iCollectRenderable(renderer)},Billboard.prototype._iCollectRenderable=function(renderer){renderer.applyBillboard(this)},Billboard}(away.base.DisplayObject));entities.Billboard=Billboard}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var Camera=function(_super){function Camera(projection){"undefined"==typeof projection&&(projection=null),_super.call(this),this._viewProjection=new away.geom.Matrix3D,this._viewProjectionDirty=!0,this._frustumPlanesDirty=!0,this._pIsEntity=!0,this._onProjectionMatrixChangedDelegate=away.utils.Delegate.create(this,this.onProjectionMatrixChanged),this._projection=projection||new away.projections.PerspectiveProjection,this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this._frustumPlanes=[];for(var i=0;6>i;++i)this._frustumPlanes[i]=new away.geom.Plane3D;this.z=-1e3}return __extends(Camera,_super),Camera.prototype.pCreateDefaultBoundingVolume=function(){return new away.bounds.NullBounds},Camera.prototype.pCreateEntityPartitionNode=function(){return new away.partition.CameraNode(this)},Object.defineProperty(Camera.prototype,"assetType",{get:function(){return away.library.AssetType.CAMERA},enumerable:!0,configurable:!0}),Camera.prototype.onProjectionMatrixChanged=function(event){this._viewProjectionDirty=!0,this._frustumPlanesDirty=!0,this.dispatchEvent(event)},Object.defineProperty(Camera.prototype,"frustumPlanes",{get:function(){return this._frustumPlanesDirty&&this.updateFrustum(),this._frustumPlanes},enumerable:!0,configurable:!0}),Camera.prototype.updateFrustum=function(){var a,b,c,c11,c12,c13,c14,c21,c22,c23,c24,c31,c32,c33,c34,c41,c42,c43,c44,p,invLen,raw=new Array(16);this.viewProjection.copyRawDataTo(raw),c11=raw[0],c12=raw[4],c13=raw[8],c14=raw[12],c21=raw[1],c22=raw[5],c23=raw[9],c24=raw[13],c31=raw[2],c32=raw[6],c33=raw[10],c34=raw[14],c41=raw[3],c42=raw[7],c43=raw[11],c44=raw[15],p=this._frustumPlanes[0],a=c41+c11,b=c42+c12,c=c43+c13,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=-(c44+c14)*invLen,p=this._frustumPlanes[1],a=c41-c11,b=c42-c12,c=c43-c13,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=(c14-c44)*invLen,p=this._frustumPlanes[2],a=c41+c21,b=c42+c22,c=c43+c23,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=-(c44+c24)*invLen,p=this._frustumPlanes[3],a=c41-c21,b=c42-c22,c=c43-c23,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=(c24-c44)*invLen,p=this._frustumPlanes[4],a=c31,b=c32,c=c33,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=-c34*invLen,p=this._frustumPlanes[5],a=c41-c31,b=c42-c32,c=c43-c33,invLen=1/Math.sqrt(a*a+b*b+c*c),p.a=a*invLen,p.b=b*invLen,p.c=c*invLen,p.d=(c34-c44)*invLen,this._frustumPlanesDirty=!1
+},Camera.prototype.pInvalidateSceneTransform=function(){_super.prototype.pInvalidateSceneTransform.call(this),this._viewProjectionDirty=!0,this._frustumPlanesDirty=!0},Camera.prototype.pUpdateBounds=function(){this._pBoundsInvalid=!1,this._pBounds.nullify()},Object.defineProperty(Camera.prototype,"projection",{get:function(){return this._projection},set:function(value){if(this._projection!=value){if(!value)throw new Error("Projection cannot be null!");this._projection.removeEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this._projection=value,this._projection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this.dispatchEvent(new away.events.CameraEvent(away.events.CameraEvent.PROJECTION_CHANGED,this))}},enumerable:!0,configurable:!0}),Object.defineProperty(Camera.prototype,"viewProjection",{get:function(){return this._viewProjectionDirty&&(this._viewProjection.copyFrom(this.inverseSceneTransform),this._viewProjection.append(this._projection.matrix),this._viewProjectionDirty=!1),this._viewProjection},enumerable:!0,configurable:!0}),Camera.prototype.getRay=function(nX,nY,sZ){return this.sceneTransform.deltaTransformVector(this._projection.unproject(nX,nY,sZ))},Camera.prototype.project=function(point3d){return this._projection.project(this.inverseSceneTransform.transformVector(point3d))},Camera.prototype.unproject=function(nX,nY,sZ){return this.sceneTransform.transformVector(this._projection.unproject(nX,nY,sZ))},Camera.prototype._iCollectRenderables=function(renderer){this._iSourcePrefab&&this._iSourcePrefab._iValidate(),this._iCollectRenderable(renderer)},Camera.prototype._iCollectRenderable=function(){},Camera}(away.containers.DisplayObjectContainer);entities.Camera=Camera}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var MaterialEvent=away.events.MaterialEvent,LineSegment=(away.geom.Matrix3D,away.geom.UVTransform,away.geom.Vector3D,function(_super){function LineSegment(material,startPosition,endPosition,thickness){"undefined"==typeof thickness&&(thickness=1);var _this=this;_super.call(this),this._pIsEntity=!0,this.onSizeChangedDelegate=function(event){return _this.onSizeChanged(event)},this.material=material,this._startPosition=startPosition,this._endPosition=endPosition,this._halfThickness=.5*thickness}return __extends(LineSegment,_super),Object.defineProperty(LineSegment.prototype,"animator",{get:function(){return this._animator},enumerable:!0,configurable:!0}),Object.defineProperty(LineSegment.prototype,"assetType",{get:function(){return away.library.AssetType.LINE_SEGMENT},enumerable:!0,configurable:!0}),Object.defineProperty(LineSegment.prototype,"startPostion",{get:function(){return this._startPosition},enumerable:!0,configurable:!0}),Object.defineProperty(LineSegment.prototype,"startPosition",{set:function(value){this._startPosition!=value&&(this._startPosition=value,this.notifyRenderableUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(LineSegment.prototype,"endPosition",{get:function(){return this._endPosition},set:function(value){this._endPosition!=value&&(this._endPosition=value,this.notifyRenderableUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(LineSegment.prototype,"material",{get:function(){return this._material},set:function(value){value!=this._material&&(this._material&&(this._material.iRemoveOwner(this),this._material.removeEventListener(MaterialEvent.SIZE_CHANGED,this.onSizeChangedDelegate)),this._material=value,this._material&&(this._material.iAddOwner(this),this._material.addEventListener(MaterialEvent.SIZE_CHANGED,this.onSizeChangedDelegate)))},enumerable:!0,configurable:!0}),Object.defineProperty(LineSegment.prototype,"thickness",{get:function(){return 2*this._halfThickness},set:function(value){this._halfThickness!=value&&(this._halfThickness=.5*value,this.notifyRenderableUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(LineSegment.prototype,"uvTransform",{get:function(){return this._uvTransform},set:function(value){this._uvTransform=value},enumerable:!0,configurable:!0}),LineSegment.prototype.dispose=function(){this._startPosition=null,this._endPosition=null},LineSegment.prototype.pCreateEntityPartitionNode=function(){return new away.partition.EntityNode(this)},LineSegment.prototype.pUpdateBounds=function(){this._pBounds.fromExtremes(this._startPosition.x,this._startPosition.y,this._startPosition.z,this._endPosition.x,this._endPosition.y,this._endPosition.z),_super.prototype.pUpdateBounds.call(this)},LineSegment.prototype.onSizeChanged=function(){this.notifyRenderableUpdate()},LineSegment.prototype.notifyRenderableUpdate=function(){for(var len=this._pRenderables.length,i=0;len>i;i++)this._pRenderables[i].invalidateVertexData("vertices")},LineSegment.prototype._iCollectRenderables=function(renderer){this._iSourcePrefab&&this._iSourcePrefab._iValidate(),this._iCollectRenderable(renderer)},LineSegment.prototype._iCollectRenderable=function(){},LineSegment}(away.base.DisplayObject));entities.LineSegment=LineSegment}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var Delegate=away.utils.Delegate,Geometry=(away.base.SubGeometryBase,away.base.TriangleSubGeometry,away.base.Geometry),GeometryEvent=away.events.GeometryEvent,Mesh=(away.geom.UVTransform,away.partition.EntityNode,function(_super){function Mesh(geometry,material){"undefined"==typeof material&&(material=null),_super.call(this),this._castsShadows=!0,this._shareAnimationGeometry=!0,this._pIsEntity=!0,this._subMeshes=new Array,this._onGeometryBoundsInvalidDelegate=Delegate.create(this,this.onGeometryBoundsInvalid),this._onSubGeometryAddedDelegate=Delegate.create(this,this.onSubGeometryAdded),this._onSubGeometryRemovedDelegate=Delegate.create(this,this.onSubGeometryRemoved),this.geometry=geometry||new Geometry,this.material=material}return __extends(Mesh,_super),Object.defineProperty(Mesh.prototype,"animator",{get:function(){return this._animator},set:function(value){this._animator&&this._animator.removeOwner(this),this._animator=value;for(var subMesh,len=this._subMeshes.length,i=0;len>i;++i)subMesh=this._subMeshes[i],subMesh.material&&(subMesh.material.iRemoveOwner(subMesh),subMesh.material.iAddOwner(subMesh)),subMesh._iInvalidateRenderableGeometry();this._animator&&this._animator.addOwner(this)},enumerable:!0,configurable:!0}),Object.defineProperty(Mesh.prototype,"assetType",{get:function(){return away.library.AssetType.MESH},enumerable:!0,configurable:!0}),Object.defineProperty(Mesh.prototype,"castsShadows",{get:function(){return this._castsShadows},set:function(value){this._castsShadows=value},enumerable:!0,configurable:!0}),Object.defineProperty(Mesh.prototype,"geometry",{get:function(){return this._iSourcePrefab&&this._iSourcePrefab._iValidate(),this._geometry},set:function(value){var i;if(this._geometry){for(this._geometry.removeEventListener(GeometryEvent.BOUNDS_INVALID,this._onGeometryBoundsInvalidDelegate),this._geometry.removeEventListener(GeometryEvent.SUB_GEOMETRY_ADDED,this._onSubGeometryAddedDelegate),this._geometry.removeEventListener(GeometryEvent.SUB_GEOMETRY_REMOVED,this._onSubGeometryRemovedDelegate),i=0;ii;i++)this._material&&(subMesh=this._subMeshes[i]).material==this._material&&this._material.iRemoveOwner(subMesh);for(this._material=value,i=0;len>i;i++)this._material&&(subMesh=this._subMeshes[i]).material==this._material&&this._material.iAddOwner(subMesh)}},enumerable:!0,configurable:!0}),Object.defineProperty(Mesh.prototype,"shareAnimationGeometry",{get:function(){return this._shareAnimationGeometry},set:function(value){this._shareAnimationGeometry=value},enumerable:!0,configurable:!0}),Object.defineProperty(Mesh.prototype,"subMeshes",{get:function(){return this._iSourcePrefab&&this._iSourcePrefab._iValidate(),this._subMeshes},enumerable:!0,configurable:!0}),Object.defineProperty(Mesh.prototype,"uvTransform",{get:function(){return this._uvTransform},set:function(value){this._uvTransform=value},enumerable:!0,configurable:!0}),Mesh.prototype.bakeTransformations=function(){this.geometry.applyTransformation(this._iMatrix3D),this._iMatrix3D.identity()},Mesh.prototype.dispose=function(){_super.prototype.dispose.call(this),this.material=null,this.geometry=null},Mesh.prototype.disposeWithAnimatorAndChildren=function(){this.disposeWithChildren(),this._animator&&this._animator.dispose()},Mesh.prototype.clone=function(){var clone=new Mesh(this._geometry,this._material);clone._iMatrix3D=this._iMatrix3D,clone.pivot=this.pivot,clone.partition=this.partition,clone.bounds=this.bounds.clone(),clone.name=this.name,clone.castsShadows=this.castsShadows,clone.shareAnimationGeometry=this.shareAnimationGeometry,clone.mouseEnabled=this.mouseEnabled,clone.mouseChildren=this.mouseChildren,clone.extra=this.extra;for(var len=this._subMeshes.length,i=0;len>i;++i)clone._subMeshes[i].material=this._subMeshes[i]._iGetExplicitMaterial();len=this.numChildren;var obj;for(i=0;len>i;++i)obj=this.getChildAt(i).clone(),clone.addChild(obj);return this._animator&&(clone.animator=this._animator.clone()),clone},Mesh.prototype.getSubMeshFromSubGeometry=function(subGeometry){return this._subMeshes[this._geometry.subGeometries.indexOf(subGeometry)]},Mesh.prototype.pCreateEntityPartitionNode=function(){return new away.partition.EntityNode(this)},Mesh.prototype.pUpdateBounds=function(){this._pBounds.fromGeometry(this._geometry),_super.prototype.pUpdateBounds.call(this)},Mesh.prototype.onGeometryBoundsInvalid=function(){this.pInvalidateBounds()},Mesh.prototype.onSubGeometryAdded=function(event){this.addSubMesh(event.subGeometry)},Mesh.prototype.onSubGeometryRemoved=function(event){var subMesh,i,subGeom=event.subGeometry,len=this._subMeshes.length;for(i=0;len>i;++i)if(subMesh=this._subMeshes[i],subMesh.subGeometry==subGeom){subMesh.dispose(),this._subMeshes.splice(i,1);break}for(--len;len>i;++i)this._subMeshes[i]._iIndex=i},Mesh.prototype.addSubMesh=function(subGeometry){var SubMeshClass=subGeometry.subMeshClass,subMesh=new SubMeshClass(subGeometry,this,null),len=this._subMeshes.length;subMesh._iIndex=len,this._subMeshes[len]=subMesh,this.pInvalidateBounds()},Mesh.prototype._iTestCollision=function(shortestCollisionDistance,findClosest){return this._pPickingCollider.testMeshCollision(this,this._pPickingCollisionVO,shortestCollisionDistance,findClosest)},Mesh.prototype._iCollectRenderables=function(renderer){this._iSourcePrefab&&this._iSourcePrefab._iValidate();for(var len=this._subMeshes.length,i=0;len>i;i++)this._subMeshes[i]._iCollectRenderable(renderer)},Mesh}(away.containers.DisplayObjectContainer));entities.Mesh=Mesh}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var Shape=function(_super){function Shape(){_super.call(this)}return __extends(Shape,_super),Object.defineProperty(Shape.prototype,"graphics",{get:function(){return this._graphics},enumerable:!0,configurable:!0}),Shape}(away.base.DisplayObject);entities.Shape=Shape}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var Skybox=(away.geom.UVTransform,function(_super){function Skybox(material){_super.call(this),this._pIsEntity=!0,this.material=material}return __extends(Skybox,_super),Object.defineProperty(Skybox.prototype,"animator",{get:function(){return this._animator},enumerable:!0,configurable:!0}),Object.defineProperty(Skybox.prototype,"uvTransform",{get:function(){return this._uvTransform},set:function(value){this._uvTransform=value},enumerable:!0,configurable:!0}),Object.defineProperty(Skybox.prototype,"material",{get:function(){return this._material},set:function(value){value!=this._material&&(this._material&&this._material.iRemoveOwner(this),this._material=value,this._material&&this._material.iAddOwner(this))},enumerable:!0,configurable:!0}),Object.defineProperty(Skybox.prototype,"assetType",{get:function(){return away.library.AssetType.SKYBOX},enumerable:!0,configurable:!0}),Skybox.prototype.pInvalidateBounds=function(){},Skybox.prototype.pCreateEntityPartitionNode=function(){return new away.partition.SkyboxNode(this)},Skybox.prototype.pGetDefaultBoundingVolume=function(){return new away.bounds.NullBounds},Skybox.prototype.pUpdateBounds=function(){this._pBoundsInvalid=!1},Object.defineProperty(Skybox.prototype,"castsShadows",{get:function(){return!1},enumerable:!0,configurable:!0}),Skybox.prototype._iCollectRenderables=function(renderer){this._iSourcePrefab&&this._iSourcePrefab._iValidate(),this._iCollectRenderable(renderer)},Skybox.prototype._iCollectRenderable=function(renderer){renderer.applySkybox(this)},Skybox}(away.base.DisplayObject));entities.Skybox=Skybox}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(entities){var TextField=function(_super){function TextField(){_super.call(this),this._text=""}return __extends(TextField,_super),Object.defineProperty(TextField.prototype,"bottomScrollV",{get:function(){return this._bottomScrollV},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"caretIndex",{get:function(){return this._caretIndex},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"length",{get:function(){return this._length},enumerable:!0,configurable:!0}),TextField.prototype.maxScrollH=function(){return this._maxScrollH},TextField.prototype.maxScrollV=function(){return this._maxScrollV},Object.defineProperty(TextField.prototype,"numLines",{get:function(){return this._numLines},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"selectionBeginIndex",{get:function(){return this._selectionBeginIndex},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"selectionEndIndex",{get:function(){return this._selectionEndIndex},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"text",{get:function(){return this._text},set:function(value){this._text!=value&&(this._text=value)},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"textHeight",{get:function(){return this._textHeight},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"textInteractionMode",{get:function(){return this._textInteractionMode},enumerable:!0,configurable:!0}),Object.defineProperty(TextField.prototype,"textWidth",{get:function(){return this._textWidth},enumerable:!0,configurable:!0}),TextField.prototype.appendText=function(){},TextField.prototype.getCharBoundaries=function(){return this._charBoundaries},TextField.prototype.getCharIndexAtPoint=function(){return this._charIndexAtPoint},TextField.prototype.getFirstCharInParagraph=function(){return this._firstCharInParagraph},TextField.prototype.getImageReference=function(){return this._imageReference},TextField.prototype.getLineIndexAtPoint=function(){return this._lineIndexAtPoint},TextField.prototype.getLineIndexOfChar=function(){return this._lineIndexOfChar},TextField.prototype.getLineLength=function(){return this._lineLength},TextField.prototype.getLineMetrics=function(){return this._lineMetrics},TextField.prototype.getLineOffset=function(){return this._lineOffset},TextField.prototype.getLineText=function(){return this._lineText},TextField.prototype.getParagraphLength=function(){return this._paragraphLength},TextField.prototype.getTextFormat=function(beginIndex,endIndex){return"undefined"==typeof beginIndex&&(beginIndex=-1),"undefined"==typeof endIndex&&(endIndex=-1),this._textFormat},TextField.prototype.replaceSelectedText=function(){},TextField.prototype.replaceText=function(){},TextField.prototype.setSelection=function(){},TextField.prototype.setTextFormat=function(format,beginIndex,endIndex){"undefined"==typeof beginIndex&&(beginIndex=-1),"undefined"==typeof endIndex&&(endIndex=-1)},TextField.isFontCompatible=function(){return!1},TextField}(away.base.DisplayObject);entities.TextField=TextField}(away.entities||(away.entities={}));away.entities}(away||(away={}));var away;!function(away){!function(projections){var CoordinateSystem=function(){function CoordinateSystem(){}return CoordinateSystem.LEFT_HANDED="leftHanded",CoordinateSystem.RIGHT_HANDED="rightHanded",CoordinateSystem}();projections.CoordinateSystem=CoordinateSystem}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var ProjectionBase=function(_super){function ProjectionBase(coordinateSystem){"undefined"==typeof coordinateSystem&&(coordinateSystem="leftHanded"),_super.call(this),this._pMatrix=new away.geom.Matrix3D,this._pScissorRect=new away.geom.Rectangle,this._pViewPort=new away.geom.Rectangle,this._pNear=20,this._pFar=3e3,this._pAspectRatio=1,this._pMatrixInvalid=!0,this._pFrustumCorners=[],this._pOriginX=.5,this._pOriginY=.5,this._unprojectionInvalid=!0,this.coordinateSystem=coordinateSystem}return __extends(ProjectionBase,_super),Object.defineProperty(ProjectionBase.prototype,"coordinateSystem",{get:function(){return this._pCoordinateSystem},set:function(value){this._pCoordinateSystem!=value&&(this._pCoordinateSystem=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"frustumCorners",{get:function(){return this._pFrustumCorners},set:function(frustumCorners){this._pFrustumCorners=frustumCorners},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"matrix",{get:function(){return this._pMatrixInvalid&&(this.pUpdateMatrix(),this._pMatrixInvalid=!1),this._pMatrix},set:function(value){this._pMatrix=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"near",{get:function(){return this._pNear},set:function(value){value!=this._pNear&&(this._pNear=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"originX",{get:function(){return this._pOriginX},set:function(value){this._pOriginX!=value&&(this._pOriginX=value)},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"originY",{get:function(){return this._pOriginY},set:function(value){this._pOriginY!=value&&(this._pOriginY=value)},enumerable:!0,configurable:!0}),Object.defineProperty(ProjectionBase.prototype,"far",{get:function(){return this._pFar},set:function(value){value!=this._pFar&&(this._pFar=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),ProjectionBase.prototype.project=function(point3d){var v=this.matrix.transformVector(point3d);return v.x=v.x/v.w,v.y=-v.y/v.w,v.z=point3d.z,v},Object.defineProperty(ProjectionBase.prototype,"unprojectionMatrix",{get:function(){return this._unprojectionInvalid&&(this._unprojection||(this._unprojection=new away.geom.Matrix3D),this._unprojection.copyFrom(this.matrix),this._unprojection.invert(),this._unprojectionInvalid=!1),this._unprojection},enumerable:!0,configurable:!0}),ProjectionBase.prototype.unproject=function(){throw new away.errors.AbstractMethodError},ProjectionBase.prototype.clone=function(){throw new away.errors.AbstractMethodError},Object.defineProperty(ProjectionBase.prototype,"_iAspectRatio",{get:function(){return this._pAspectRatio},set:function(value){this._pAspectRatio!=value&&(this._pAspectRatio=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),ProjectionBase.prototype.pInvalidateMatrix=function(){this._pMatrixInvalid=!0,this._unprojectionInvalid=!0,this.dispatchEvent(new away.events.ProjectionEvent(away.events.ProjectionEvent.MATRIX_CHANGED,this))},ProjectionBase.prototype.pUpdateMatrix=function(){throw new away.errors.AbstractMethodError},ProjectionBase.prototype._iUpdateScissorRect=function(x,y,width,height){this._pScissorRect.x=x,this._pScissorRect.y=y,this._pScissorRect.width=width,this._pScissorRect.height=height,this.pInvalidateMatrix()},ProjectionBase.prototype._iUpdateViewport=function(x,y,width,height){this._pViewPort.x=x,this._pViewPort.y=y,this._pViewPort.width=width,this._pViewPort.height=height,this.pInvalidateMatrix()},ProjectionBase}(away.events.EventDispatcher);projections.ProjectionBase=ProjectionBase}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var PerspectiveProjection=function(_super){function PerspectiveProjection(fieldOfView,coordinateSystem){"undefined"==typeof fieldOfView&&(fieldOfView=60),"undefined"==typeof coordinateSystem&&(coordinateSystem="leftHanded"),_super.call(this,coordinateSystem),this._fieldOfView=60,this._focalLength=1e3,this._hFieldOfView=60,this._hFocalLength=1e3,this._preserveAspectRatio=!0,this._preserveFocalLength=!1,this.fieldOfView=fieldOfView}return __extends(PerspectiveProjection,_super),Object.defineProperty(PerspectiveProjection.prototype,"preserveAspectRatio",{get:function(){return this._preserveAspectRatio},set:function(value){this._preserveAspectRatio!=value&&(this._preserveAspectRatio=value,this._preserveAspectRatio&&this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"preserveFocalLength",{get:function(){return this._preserveFocalLength},set:function(value){this._preserveFocalLength!=value&&(this._preserveFocalLength=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"fieldOfView",{get:function(){return this._fieldOfView},set:function(value){this._fieldOfView!=value&&(this._fieldOfView=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"focalLength",{get:function(){return this._focalLength},set:function(value){this._focalLength!=value&&(this._focalLength=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"hFieldOfView",{get:function(){return this._hFieldOfView},set:function(value){this._hFieldOfView!=value&&(this._hFieldOfView=value,this._hFocalLength=1/Math.tan(this._hFieldOfView*Math.PI/360),this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),Object.defineProperty(PerspectiveProjection.prototype,"hFocalLength",{get:function(){return this._hFocalLength},set:function(value){this._hFocalLength!=value&&(this._hFocalLength=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),PerspectiveProjection.prototype.unproject=function(nX,nY,sZ){var v=new away.geom.Vector3D(nX,-nY,sZ,1);return v.x*=sZ,v.y*=sZ,v=this.unprojectionMatrix.transformVector(v),v.z=sZ,v},PerspectiveProjection.prototype.clone=function(){var clone=new PerspectiveProjection(this._fieldOfView);return clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone._pCoordinateSystem=this._pCoordinateSystem,clone},PerspectiveProjection.prototype.pUpdateMatrix=function(){var raw=[];this._preserveFocalLength?(this._preserveAspectRatio&&(this._hFocalLength=this._focalLength),this._fieldOfView=360*Math.atan(.5*this._pScissorRect.height/this._focalLength)/Math.PI,this._hFieldOfView=360*Math.atan(.5*this._pScissorRect.width/this._hFocalLength)/Math.PI):(this._focalLength=.5*this._pScissorRect.height/Math.tan(this._fieldOfView*Math.PI/360),this._hFocalLength=this._preserveAspectRatio?this._focalLength:.5*this._pScissorRect.width/Math.tan(this._hFieldOfView*Math.PI/360));var left,right,top,bottom,tanMinX=-this._pOriginX/this._hFocalLength,tanMaxX=(1-this._pOriginX)/this._hFocalLength,tanMinY=-this._pOriginY/this._focalLength,tanMaxY=(1-this._pOriginY)/this._focalLength,center=-((tanMinX-tanMaxX)*this._pScissorRect.x+tanMinX*this._pScissorRect.width),middle=(tanMinY-tanMaxY)*this._pScissorRect.y+tanMinY*this._pScissorRect.height;left=center-(tanMaxX-tanMinX)*this._pViewPort.width,right=center,top=middle,bottom=middle+(tanMaxY-tanMinY)*this._pViewPort.height,raw[0]=2/(right-left),raw[5]=2/(bottom-top),raw[8]=(right+left)/(right-left),raw[9]=(bottom+top)/(bottom-top),raw[10]=(this._pFar+this._pNear)/(this._pFar-this._pNear),raw[11]=1,raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[12]=raw[13]=raw[15]=0,raw[14]=-2*this._pFar*this._pNear/(this._pFar-this._pNear),this._pCoordinateSystem==away.projections.CoordinateSystem.RIGHT_HANDED&&(raw[5]=-raw[5]),this._pMatrix.copyRawDataFrom(raw),this._pFrustumCorners[0]=this._pFrustumCorners[9]=this._pNear*left,this._pFrustumCorners[3]=this._pFrustumCorners[6]=this._pNear*right,this._pFrustumCorners[1]=this._pFrustumCorners[4]=this._pNear*top,this._pFrustumCorners[7]=this._pFrustumCorners[10]=this._pNear*bottom,this._pFrustumCorners[12]=this._pFrustumCorners[21]=this._pFar*left,this._pFrustumCorners[15]=this._pFrustumCorners[18]=this._pFar*right,this._pFrustumCorners[13]=this._pFrustumCorners[16]=this._pFar*top,this._pFrustumCorners[19]=this._pFrustumCorners[22]=this._pFar*bottom,this._pFrustumCorners[2]=this._pFrustumCorners[5]=this._pFrustumCorners[8]=this._pFrustumCorners[11]=this._pNear,this._pFrustumCorners[14]=this._pFrustumCorners[17]=this._pFrustumCorners[20]=this._pFrustumCorners[23]=this._pFar,this._pMatrixInvalid=!1},PerspectiveProjection}(away.projections.ProjectionBase);projections.PerspectiveProjection=PerspectiveProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var FreeMatrixProjection=function(_super){function FreeMatrixProjection(){_super.call(this),this._pMatrix.copyFrom((new away.projections.PerspectiveProjection).matrix)}return __extends(FreeMatrixProjection,_super),Object.defineProperty(FreeMatrixProjection.prototype,"near",{set:function(value){this._pNear=value},enumerable:!0,configurable:!0}),Object.defineProperty(FreeMatrixProjection.prototype,"far",{set:function(value){this._pFar=value},enumerable:!0,configurable:!0}),Object.defineProperty(FreeMatrixProjection.prototype,"iAspectRatio",{set:function(value){this._pAspectRatio=value},enumerable:!0,configurable:!0}),FreeMatrixProjection.prototype.clone=function(){var clone=new FreeMatrixProjection;return clone._pMatrix.copyFrom(this._pMatrix),clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone.pInvalidateMatrix(),clone},FreeMatrixProjection.prototype.pUpdateMatrix=function(){this._pMatrixInvalid=!1},FreeMatrixProjection}(away.projections.ProjectionBase);projections.FreeMatrixProjection=FreeMatrixProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var OrthographicProjection=function(_super){function OrthographicProjection(projectionHeight){"undefined"==typeof projectionHeight&&(projectionHeight=500),_super.call(this),this._projectionHeight=projectionHeight}return __extends(OrthographicProjection,_super),Object.defineProperty(OrthographicProjection.prototype,"projectionHeight",{get:function(){return this._projectionHeight},set:function(value){value!=this._projectionHeight&&(this._projectionHeight=value,this.pInvalidateMatrix())},enumerable:!0,configurable:!0}),OrthographicProjection.prototype.unproject=function(nX,nY,sZ){var v=new away.geom.Vector3D(nX+this.matrix.rawData[12],-nY+this.matrix.rawData[13],sZ,1);return v=this.unprojectionMatrix.transformVector(v),v.z=sZ,v},OrthographicProjection.prototype.clone=function(){var clone=new OrthographicProjection;return clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone.projectionHeight=this._projectionHeight,clone},OrthographicProjection.prototype.pUpdateMatrix=function(){var raw=[];this._yMax=.5*this._projectionHeight,this._xMax=this._yMax*this._pAspectRatio;var left,right,top,bottom;if(0==this._pScissorRect.x&&0==this._pScissorRect.y&&this._pScissorRect.width==this._pViewPort.width&&this._pScissorRect.height==this._pViewPort.height)left=-this._xMax,right=this._xMax,top=-this._yMax,bottom=this._yMax,raw[0]=2/(this._projectionHeight*this._pAspectRatio),raw[5]=2/this._projectionHeight,raw[10]=1/(this._pFar-this._pNear),raw[14]=this._pNear/(this._pNear-this._pFar),raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[8]=raw[9]=raw[11]=raw[12]=raw[13]=0,raw[15]=1;else{var xWidth=this._xMax*(this._pViewPort.width/this._pScissorRect.width),yHgt=this._yMax*(this._pViewPort.height/this._pScissorRect.height),center=this._xMax*(2*this._pScissorRect.x-this._pViewPort.width)/this._pScissorRect.width+this._xMax,middle=-this._yMax*(2*this._pScissorRect.y-this._pViewPort.height)/this._pScissorRect.height-this._yMax;left=center-xWidth,right=center+xWidth,top=middle-yHgt,bottom=middle+yHgt,raw[0]=2/(right-left),raw[5]=-2/(top-bottom),raw[10]=1/(this._pFar-this._pNear),raw[12]=(right+left)/(right-left),raw[13]=(bottom+top)/(bottom-top),raw[14]=this._pNear/(this.near-this.far),raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[8]=raw[9]=raw[11]=0,raw[15]=1}this._pFrustumCorners[0]=this._pFrustumCorners[9]=this._pFrustumCorners[12]=this._pFrustumCorners[21]=left,this._pFrustumCorners[3]=this._pFrustumCorners[6]=this._pFrustumCorners[15]=this._pFrustumCorners[18]=right,this._pFrustumCorners[1]=this._pFrustumCorners[4]=this._pFrustumCorners[13]=this._pFrustumCorners[16]=top,this._pFrustumCorners[7]=this._pFrustumCorners[10]=this._pFrustumCorners[19]=this._pFrustumCorners[22]=bottom,this._pFrustumCorners[2]=this._pFrustumCorners[5]=this._pFrustumCorners[8]=this._pFrustumCorners[11]=this._pNear,this._pFrustumCorners[14]=this._pFrustumCorners[17]=this._pFrustumCorners[20]=this._pFrustumCorners[23]=this._pFar,this._pMatrix.copyRawDataFrom(raw),this._pMatrixInvalid=!1},OrthographicProjection}(away.projections.ProjectionBase);projections.OrthographicProjection=OrthographicProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var OrthographicOffCenterProjection=function(_super){function OrthographicOffCenterProjection(minX,maxX,minY,maxY){_super.call(this),this._minX=minX,this._maxX=maxX,this._minY=minY,this._maxY=maxY}return __extends(OrthographicOffCenterProjection,_super),Object.defineProperty(OrthographicOffCenterProjection.prototype,"minX",{get:function(){return this._minX},set:function(value){this._minX=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(OrthographicOffCenterProjection.prototype,"maxX",{get:function(){return this._maxX},set:function(value){this._maxX=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(OrthographicOffCenterProjection.prototype,"minY",{get:function(){return this._minY},set:function(value){this._minY=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(OrthographicOffCenterProjection.prototype,"maxY",{get:function(){return this._maxY},set:function(value){this._maxY=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),OrthographicOffCenterProjection.prototype.unproject=function(nX,nY,sZ){var v=new away.geom.Vector3D(nX,-nY,sZ,1);return v=this.unprojectionMatrix.transformVector(v),v.z=sZ,v},OrthographicOffCenterProjection.prototype.clone=function(){var clone=new OrthographicOffCenterProjection(this._minX,this._maxX,this._minY,this._maxY);
+return clone._pNear=this._pNear,clone._pFar=this._pFar,clone._pAspectRatio=this._pAspectRatio,clone},OrthographicOffCenterProjection.prototype.pUpdateMatrix=function(){var raw=[],w=1/(this._maxX-this._minX),h=1/(this._maxY-this._minY),d=1/(this._pFar-this._pNear);raw[0]=2*w,raw[5]=2*h,raw[10]=d,raw[12]=-(this._maxX+this._minX)*w,raw[13]=-(this._maxY+this._minY)*h,raw[14]=-this._pNear*d,raw[15]=1,raw[1]=raw[2]=raw[3]=raw[4]=raw[6]=raw[7]=raw[8]=raw[9]=raw[11]=0,this._pMatrix.copyRawDataFrom(raw),this._pFrustumCorners[0]=this._pFrustumCorners[9]=this._pFrustumCorners[12]=this._pFrustumCorners[21]=this._minX,this._pFrustumCorners[3]=this._pFrustumCorners[6]=this._pFrustumCorners[15]=this._pFrustumCorners[18]=this._maxX,this._pFrustumCorners[1]=this._pFrustumCorners[4]=this._pFrustumCorners[13]=this._pFrustumCorners[16]=this._minY,this._pFrustumCorners[7]=this._pFrustumCorners[10]=this._pFrustumCorners[19]=this._pFrustumCorners[22]=this._maxY,this._pFrustumCorners[2]=this._pFrustumCorners[5]=this._pFrustumCorners[8]=this._pFrustumCorners[11]=this._pNear,this._pFrustumCorners[14]=this._pFrustumCorners[17]=this._pFrustumCorners[20]=this._pFrustumCorners[23]=this._pFar,this._pMatrixInvalid=!1},OrthographicOffCenterProjection}(away.projections.ProjectionBase);projections.OrthographicOffCenterProjection=OrthographicOffCenterProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(projections){var ObliqueNearPlaneProjection=function(_super){function ObliqueNearPlaneProjection(baseProjection,plane){_super.call(this),this.baseProjection=baseProjection,this.plane=plane,this._onProjectionMatrixChangedDelegate=away.utils.Delegate.create(this,this.onProjectionMatrixChanged)}return __extends(ObliqueNearPlaneProjection,_super),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"frustumCorners",{get:function(){return this._baseProjection.frustumCorners},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"near",{get:function(){return this._baseProjection.near},set:function(value){this._baseProjection.near=value},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"far",{get:function(){return this._baseProjection.far},set:function(value){this._baseProjection.far=value},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"iAspectRatio",{get:function(){return this._baseProjection._iAspectRatio},set:function(value){this._baseProjection._iAspectRatio=value},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"plane",{get:function(){return this._plane},set:function(value){this._plane=value,this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),Object.defineProperty(ObliqueNearPlaneProjection.prototype,"baseProjection",{set:function(value){this._baseProjection&&this._baseProjection.removeEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this._baseProjection=value,this._baseProjection&&this._baseProjection.addEventListener(away.events.ProjectionEvent.MATRIX_CHANGED,this._onProjectionMatrixChangedDelegate),this.pInvalidateMatrix()},enumerable:!0,configurable:!0}),ObliqueNearPlaneProjection.prototype.onProjectionMatrixChanged=function(){this.pInvalidateMatrix()},ObliqueNearPlaneProjection.prototype.pUpdateMatrix=function(){this._pMatrix.copyFrom(this._baseProjection.matrix);var cx=this._plane.a,cy=this._plane.b,cz=this._plane.c,cw=-this._plane.d+.05,signX=cx>=0?1:-1,signY=cy>=0?1:-1,p=new away.geom.Vector3D(signX,signY,1,1),inverse=this._pMatrix.clone();inverse.invert();var q=inverse.transformVector(p);this._pMatrix.copyRowTo(3,p);var a=(q.x*p.x+q.y*p.y+q.z*p.z+q.w*p.w)/(cx*q.x+cy*q.y+cz*q.z+cw*q.w);this._pMatrix.copyRowFrom(2,new away.geom.Vector3D(cx*a,cy*a,cz*a,cw*a))},ObliqueNearPlaneProjection}(away.projections.ProjectionBase);projections.ObliqueNearPlaneProjection=ObliqueNearPlaneProjection}(away.projections||(away.projections={}));away.projections}(away||(away={}));var away;!function(away){!function(managers){var MouseManager=function(){function MouseManager(){var _this=this;this._viewLookup=new Array,this._nullVector=new away.geom.Vector3D,this._queuedEvents=new Array,this._mouseUp=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_UP),this._mouseClick=new away.events.MouseEvent(away.events.MouseEvent.CLICK),this._mouseOut=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_OUT),this._mouseDown=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_DOWN),this._mouseMove=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_MOVE),this._mouseOver=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_OVER),this._mouseWheel=new away.events.MouseEvent(away.events.MouseEvent.MOUSE_WHEEL),this._mouseDoubleClick=new away.events.MouseEvent(away.events.MouseEvent.DOUBLE_CLICK),this.onClickDelegate=function(event){return _this.onClick(event)},this.onDoubleClickDelegate=function(event){return _this.onDoubleClick(event)},this.onMouseDownDelegate=function(event){return _this.onMouseDown(event)},this.onMouseMoveDelegate=function(event){return _this.onMouseMove(event)},this.onMouseUpDelegate=function(event){return _this.onMouseUp(event)},this.onMouseWheelDelegate=function(event){return _this.onMouseWheel(event)},this.onMouseOverDelegate=function(event){return _this.onMouseOver(event)},this.onMouseOutDelegate=function(event){return _this.onMouseOut(event)}}return MouseManager.getInstance=function(){return this._instance?this._instance:this._instance=new MouseManager},MouseManager.prototype.fireMouseEvents=function(forceMouseMove){this._iCollidingObject!=this._previousCollidingObject&&(this._previousCollidingObject&&this.queueDispatch(this._mouseOut,this._mouseMoveEvent,this._previousCollidingObject),this._iCollidingObject&&this.queueDispatch(this._mouseOver,this._mouseMoveEvent)),forceMouseMove&&this._iCollidingObject&&this.queueDispatch(this._mouseMove,this._mouseMoveEvent);for(var event,dispatcher,len=this._queuedEvents.length,i=0;len>i;++i){for(event=this._queuedEvents[i],dispatcher=event.object;dispatcher&&!dispatcher._iIsMouseEnabled();)dispatcher=dispatcher.parent;dispatcher&&dispatcher.dispatchEvent(event)}this._queuedEvents.length=0,this._previousCollidingObject=this._iCollidingObject,this._iUpdateDirty=!1},MouseManager.prototype.registerView=function(view){view.htmlElement.addEventListener("click",this.onClickDelegate),view.htmlElement.addEventListener("dblclick",this.onDoubleClickDelegate),view.htmlElement.addEventListener("mousedown",this.onMouseDownDelegate),view.htmlElement.addEventListener("mousemove",this.onMouseMoveDelegate),view.htmlElement.addEventListener("mouseup",this.onMouseUpDelegate),view.htmlElement.addEventListener("mousewheel",this.onMouseWheelDelegate),view.htmlElement.addEventListener("mouseover",this.onMouseOverDelegate),view.htmlElement.addEventListener("mouseout",this.onMouseOutDelegate),this._viewLookup.push(view)},MouseManager.prototype.unregisterView=function(view){view.htmlElement.removeEventListener("click",this.onClickDelegate),view.htmlElement.removeEventListener("dblclick",this.onDoubleClickDelegate),view.htmlElement.removeEventListener("mousedown",this.onMouseDownDelegate),view.htmlElement.removeEventListener("mousemove",this.onMouseMoveDelegate),view.htmlElement.removeEventListener("mouseup",this.onMouseUpDelegate),view.htmlElement.removeEventListener("mousewheel",this.onMouseWheelDelegate),view.htmlElement.removeEventListener("mouseover",this.onMouseOverDelegate),view.htmlElement.removeEventListener("mouseout",this.onMouseOutDelegate),this._viewLookup.slice(this._viewLookup.indexOf(view),1)},MouseManager.prototype.queueDispatch=function(event,sourceEvent,collider){"undefined"==typeof collider&&(collider=null),sourceEvent&&(event.ctrlKey=sourceEvent.ctrlKey,event.altKey=sourceEvent.altKey,event.shiftKey=sourceEvent.shiftKey,event.screenX=sourceEvent.clientX,event.screenY=sourceEvent.clientY),null==collider&&(collider=this._iCollidingObject),collider?(event.object=collider.displayObject,event.materialOwner=collider.materialOwner,event.uv=collider.uv,event.localPosition=collider.localPosition?collider.localPosition.clone():null,event.localNormal=collider.localNormal?collider.localNormal.clone():null,event.index=collider.index):(event.uv=null,event.object=null,event.localPosition=this._nullVector,event.localNormal=this._nullVector,event.index=0,event.subGeometryIndex=0),this._queuedEvents.push(event)},MouseManager.prototype.onMouseMove=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseMove,this._mouseMoveEvent=event)},MouseManager.prototype.onMouseOut=function(event){this._iActiveDiv=null,this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseOut,event)},MouseManager.prototype.onMouseOver=function(event){this._iActiveDiv=event.target,this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseOver,event)},MouseManager.prototype.onClick=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseClick,event)},MouseManager.prototype.onDoubleClick=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseDoubleClick,event)},MouseManager.prototype.onMouseDown=function(event){this._iActiveDiv=event.target,this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseDown,event)},MouseManager.prototype.onMouseUp=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseUp,event)},MouseManager.prototype.onMouseWheel=function(event){this.updateColliders(event),this._iCollidingObject&&this.queueDispatch(this._mouseWheel,event)},MouseManager.prototype.updateColliders=function(event){if(!this._iUpdateDirty){for(var view,bounds,mouseX=event.clientX,mouseY=event.clientY,len=this._viewLookup.length,i=0;len>i;i++)if(view=this._viewLookup[i],bounds=view.htmlElement.getBoundingClientRect(),mouseXbounds.right||mouseYbounds.bottom)view._pMouseX=null,view._pMouseY=null;else if(view._pMouseX=mouseX+bounds.left,view._pMouseY=mouseY+bounds.top,view.updateCollider(),view.layeredView&&this._iCollidingObject)break;this._iUpdateDirty=!0}},MouseManager}();managers.MouseManager=MouseManager}(away.managers||(away.managers={}));away.managers}(away||(away={}));var away;!function(away){!function(managers){var RTTBufferManager=function(_super){function RTTBufferManager(se,stageGL){if(_super.call(this),this._viewWidth=-1,this._viewHeight=-1,this._textureWidth=-1,this._textureHeight=-1,this._buffersInvalid=!0,!se)throw new Error("No cheating the multiton!");this._renderToTextureRect=new away.geom.Rectangle,this._stageGL=stageGL}return __extends(RTTBufferManager,_super),RTTBufferManager.getInstance=function(stageGL){if(!stageGL)throw new Error("stageGL key cannot be null!");null==RTTBufferManager._instances&&(RTTBufferManager._instances=new Array);var rttBufferManager=RTTBufferManager.getRTTBufferManagerFromStageGL(stageGL);if(null==rttBufferManager){rttBufferManager=new away.managers.RTTBufferManager(new SingletonEnforcer,stageGL);var vo=new RTTBufferManagerVO;vo.stage3d=stageGL,vo.rttbfm=rttBufferManager,RTTBufferManager._instances.push(vo)}return rttBufferManager},RTTBufferManager.getRTTBufferManagerFromStageGL=function(stageGL){for(var r,l=RTTBufferManager._instances.length,c=0;l>c;c++)if(r=RTTBufferManager._instances[c],r.stage3d===stageGL)return r.rttbfm;return null},RTTBufferManager.deleteRTTBufferManager=function(stageGL){for(var r,l=RTTBufferManager._instances.length,c=0;l>c;c++)if(r=RTTBufferManager._instances[c],r.stage3d===stageGL)return RTTBufferManager._instances.splice(c,1),void 0},Object.defineProperty(RTTBufferManager.prototype,"textureRatioX",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._textureRatioX},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"textureRatioY",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._textureRatioY},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"viewWidth",{get:function(){return this._viewWidth},set:function(value){value!=this._viewWidth&&(this._viewWidth=value,this._buffersInvalid=!0,this._textureWidth=away.utils.TextureUtils.getBestPowerOf2(this._viewWidth),this._textureWidth>this._viewWidth?(this._renderToTextureRect.x=Math.floor(.5*(this._textureWidth-this._viewWidth)),this._renderToTextureRect.width=this._viewWidth):(this._renderToTextureRect.x=0,this._renderToTextureRect.width=this._textureWidth),this.dispatchEvent(new away.events.Event(away.events.Event.RESIZE)))},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"viewHeight",{get:function(){return this._viewHeight},set:function(value){value!=this._viewHeight&&(this._viewHeight=value,this._buffersInvalid=!0,this._textureHeight=away.utils.TextureUtils.getBestPowerOf2(this._viewHeight),this._textureHeight>this._viewHeight?(this._renderToTextureRect.y=Math.floor(.5*(this._textureHeight-this._viewHeight)),this._renderToTextureRect.height=this._viewHeight):(this._renderToTextureRect.y=0,this._renderToTextureRect.height=this._textureHeight),this.dispatchEvent(new away.events.Event(away.events.Event.RESIZE)))},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"renderToTextureVertexBuffer",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._renderToTextureVertexBuffer},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"renderToScreenVertexBuffer",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._renderToScreenVertexBuffer},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"indexBuffer",{get:function(){return this._indexBuffer},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"renderToTextureRect",{get:function(){return this._buffersInvalid&&this.updateRTTBuffers(),this._renderToTextureRect},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"textureWidth",{get:function(){return this._textureWidth},enumerable:!0,configurable:!0}),Object.defineProperty(RTTBufferManager.prototype,"textureHeight",{get:function(){return this._textureHeight},enumerable:!0,configurable:!0}),RTTBufferManager.prototype.dispose=function(){RTTBufferManager.deleteRTTBufferManager(this._stageGL),this._indexBuffer&&(this._indexBuffer.dispose(),this._renderToScreenVertexBuffer.dispose(),this._renderToTextureVertexBuffer.dispose(),this._renderToScreenVertexBuffer=null,this._renderToTextureVertexBuffer=null,this._indexBuffer=null)},RTTBufferManager.prototype.updateRTTBuffers=function(){var textureVerts,screenVerts,x,y,context=this._stageGL.contextGL;null==this._renderToTextureVertexBuffer&&(this._renderToTextureVertexBuffer=context.createVertexBuffer(4,5)),null==this._renderToScreenVertexBuffer&&(this._renderToScreenVertexBuffer=context.createVertexBuffer(4,5)),this._indexBuffer||(this._indexBuffer=context.createIndexBuffer(6),this._indexBuffer.uploadFromArray([2,1,0,3,2,0],0,6)),this._textureRatioX=x=Math.min(this._viewWidth/this._textureWidth,1),this._textureRatioY=y=Math.min(this._viewHeight/this._textureHeight,1);var u1=.5*(1-x),u2=.5*(x+1),v1=.5*(y+1),v2=.5*(1-y);textureVerts=[-x,-y,u1,v1,0,x,-y,u2,v1,1,x,y,u2,v2,2,-x,y,u1,v2,3],screenVerts=[-1,-1,u1,v1,0,1,-1,u2,v1,1,1,1,u2,v2,2,-1,1,u1,v2,3],this._renderToTextureVertexBuffer.uploadFromArray(textureVerts,0,4),this._renderToScreenVertexBuffer.uploadFromArray(screenVerts,0,4),this._buffersInvalid=!1},RTTBufferManager}(away.events.EventDispatcher);managers.RTTBufferManager=RTTBufferManager}(away.managers||(away.managers={}));away.managers}(away||(away={}));var RTTBufferManagerVO=function(){function RTTBufferManagerVO(){}return RTTBufferManagerVO}(),SingletonEnforcer=function(){function SingletonEnforcer(){}return SingletonEnforcer}(),away;!function(away){!function(managers){var StageGLManager=function(_super){function StageGLManager(StageGLManagerSingletonEnforcer){if(_super.call(this),!StageGLManagerSingletonEnforcer)throw new Error("This class is a multiton and cannot be instantiated manually. Use StageGLManager.getInstance instead.");this._stageGLs=new Array(StageGLManager.STAGEGL_MAX_QUANTITY),this._onContextCreatedDelegate=away.utils.Delegate.create(this,this.onContextCreated)}return __extends(StageGLManager,_super),StageGLManager.getInstance=function(){return null==this._instance&&(this._instance=new StageGLManager(new StageGLManagerSingletonEnforcer)),this._instance},StageGLManager.prototype.getStageGLAt=function(index,forceSoftware,profile){if("undefined"==typeof forceSoftware&&(forceSoftware=!1),"undefined"==typeof profile&&(profile="baseline"),0>index||index>=StageGLManager.STAGEGL_MAX_QUANTITY)throw new away.errors.ArgumentError("Index is out of bounds [0.."+StageGLManager.STAGEGL_MAX_QUANTITY+"]");if(!this._stageGLs[index]){StageGLManager._numStageGLs++;var canvas=document.createElement("canvas"),stageGL=this._stageGLs[index]=new away.base.StageGL(canvas,index,this,forceSoftware,profile);stageGL.addEventListener(away.events.StageGLEvent.CONTEXTGL_CREATED,this._onContextCreatedDelegate),stageGL.requestContext(!0,forceSoftware,profile)}return stageGL},StageGLManager.prototype.iRemoveStageGL=function(stageGL){StageGLManager._numStageGLs--,stageGL.removeEventListener(away.events.StageGLEvent.CONTEXTGL_CREATED,this._onContextCreatedDelegate),this._stageGLs[stageGL._iStageGLIndex]=null},StageGLManager.prototype.getFreeStageGL=function(forceSoftware,profile){"undefined"==typeof forceSoftware&&(forceSoftware=!1),"undefined"==typeof profile&&(profile="baseline");for(var i=0,len=this._stageGLs.length;len>i;){if(!this._stageGLs[i])return this.getStageGLAt(i,forceSoftware,profile);++i}return null},Object.defineProperty(StageGLManager.prototype,"hasFreeStageGL",{get:function(){return StageGLManager._numStageGLsi;i++)this.removeListeners(this._loadingSessions[i]),this._loadingSessions[i].stop(),this._loadingSessions[i]=null;this._loadingSessions=null},Loader.prototype.load=function(request,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var token;if(this._useAssetLib){var lib;lib=away.library.AssetLibraryBundle.getInstance(this._assetLibId),token=lib.load(request,context,ns,parser)}else{var loader=new away.net.AssetLoader;this._loadingSessions.push(loader),token=loader.load(request,context,ns,parser)}return token.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),token.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),token._iLoader._iAddErrorHandler(this.onLoadError),token._iLoader._iAddParseErrorHandler(this.onParseError),token},Loader.prototype.loadData=function(data,context,ns,parser){"undefined"==typeof context&&(context=null),"undefined"==typeof ns&&(ns=null),"undefined"==typeof parser&&(parser=null);var token;if(this._useAssetLib){var lib;lib=away.library.AssetLibraryBundle.getInstance(this._assetLibId),token=lib.loadData(data,context,ns,parser)}else{var loader=new away.net.AssetLoader;this._loadingSessions.push(loader),token=loader.loadData(data,"",context,ns,parser)}return token.addEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),token.addEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate),token._iLoader._iAddErrorHandler(this.onLoadError),token._iLoader._iAddParseErrorHandler(this.onParseError),token},Loader.prototype.unload=function(){},Loader.enableParser=function(parserClass){away.net.AssetLoader.enableParser(parserClass)},Loader.enableParsers=function(parserClasses){away.net.AssetLoader.enableParsers(parserClasses)},Loader.prototype.removeListeners=function(dispatcher){dispatcher.removeEventListener(away.events.LoaderEvent.RESOURCE_COMPLETE,this._onResourceCompleteDelegate),dispatcher.removeEventListener(away.events.AssetEvent.ASSET_COMPLETE,this._onAssetCompleteDelegate)},Loader.prototype.onAssetComplete=function(event){this.dispatchEvent(event)},Loader.prototype.onLoadError=function(event){return this.hasEventListener(away.events.IOErrorEvent.IO_ERROR)?(this.dispatchEvent(event),!0):!1},Loader.prototype.onParseError=function(event){return this.hasEventListener(away.events.ParserEvent.PARSE_ERROR)?(this.dispatchEvent(event),!0):!1},Loader.prototype.onResourceComplete=function(event){var content=event.content;this._content=content,content&&this.addChild(content),this.dispatchEvent(event)},Loader}(away.containers.DisplayObjectContainer);containers.Loader=Loader}(away.containers||(away.containers={}));away.containers}(away||(away={}));var away;!function(away){!function(containers){var Scene=function(_super){function Scene(){_super.call(this),this._expandedPartitions=new Array,this._partitions=new Array,this._iCollectionMark=0,this._iSceneGraphRoot=new away.containers.DisplayObjectContainer,this._iSceneGraphRoot._iSetScene(this),this._iSceneGraphRoot._iIsRoot=!0,this._iSceneGraphRoot.partition=new away.partition.Partition(new away.partition.NodeBase)}return __extends(Scene,_super),Scene.prototype.traversePartitions=function(traverser){var i=0,len=this._partitions.length;for(traverser.scene=this;len>i;)this._iCollectionMark++,this._partitions[i++].traverse(traverser)},Object.defineProperty(Scene.prototype,"partition",{get:function(){return this._iSceneGraphRoot.partition},set:function(value){this._iSceneGraphRoot.partition=value,this.dispatchEvent(new away.events.SceneEvent(away.events.SceneEvent.PARTITION_CHANGED,this._iSceneGraphRoot))},enumerable:!0,configurable:!0}),Scene.prototype.contains=function(child){return this._iSceneGraphRoot.contains(child)},Scene.prototype.addChild=function(child){return this._iSceneGraphRoot.addChild(child)},Scene.prototype.removeChild=function(child){this._iSceneGraphRoot.removeChild(child)},Scene.prototype.removeChildAt=function(index){this._iSceneGraphRoot.removeChildAt(index)},Scene.prototype.getChildAt=function(index){return this._iSceneGraphRoot.getChildAt(index)},Object.defineProperty(Scene.prototype,"numChildren",{get:function(){return this._iSceneGraphRoot.numChildren},enumerable:!0,configurable:!0}),Scene.prototype.iRegisterEntity=function(displayObject){displayObject.partition&&this.iRegisterPartition(displayObject.partition),displayObject.isEntity&&displayObject._iAssignedPartition.iMarkForUpdate(displayObject)},Scene.prototype.iRegisterPartition=function(partition){this._expandedPartitions.push(partition),-1==this._partitions.indexOf(partition)&&this._partitions.push(partition)},Scene.prototype.iUnregisterEntity=function(displayObject){displayObject.partition&&this.iUnregisterPartition(displayObject.partition),displayObject.isEntity&&displayObject._iAssignedPartition.iRemoveEntity(displayObject)},Scene.prototype.iUnregisterPartition=function(partition){this._expandedPartitions.splice(this._expandedPartitions.indexOf(partition),1),-1==this._expandedPartitions.indexOf(partition)&&this._partitions.splice(this._partitions.indexOf(partition),1)},Scene}(away.events.EventDispatcher);containers.Scene=Scene}(away.containers||(away.containers={}));away.containers}(away||(away={}));var away;!function(away){!function(containers){var Scene=away.containers.Scene,Camera=away.entities.Camera,CameraEvent=away.events.CameraEvent,SceneEvent=away.events.SceneEvent,RendererEvent=away.events.RendererEvent,MouseManager=(away.geom.Matrix3D,away.geom.Point,away.geom.Rectangle,away.geom.Vector3D,away.gl.ContextGL,away.gl.ContextGLTextureFormat,away.gl.Texture,away.managers.MouseManager),Delegate=(away.render.CSSRendererBase,away.utils.Delegate),View=function(){function View(renderer,scene,camera){"undefined"==typeof scene&&(scene=null),"undefined"==typeof camera&&(camera=null),this._width=0,this._height=0,this._time=0,this._deltaTime=0,this._backgroundColor=0,this._backgroundAlpha=1,this._viewportDirty=!0,this._scissorDirty=!0,this._mousePicker=new away.pick.RaycastPicker,this._onScenePartitionChangedDelegate=Delegate.create(this,this.onScenePartitionChanged),this._onProjectionChangedDelegate=Delegate.create(this,this.onProjectionChanged),this._onViewportUpdatedDelegate=Delegate.create(this,this.onViewportUpdated),this._onScissorUpdatedDelegate=Delegate.create(this,this.onScissorUpdated),this.scene=scene||new Scene,this.camera=camera||new Camera,this.renderer=renderer,document.body.style.margin="0px",this._htmlElement=document.createElement("div"),this._htmlElement.style.position="absolute",document.body.appendChild(this._htmlElement),this._mouseManager=MouseManager.getInstance(),this._mouseManager.registerView(this)}return View.prototype.onScenePartitionChanged=function(){this._pCamera&&(this._pCamera.partition=this.scene.partition)},Object.defineProperty(View.prototype,"mouseX",{get:function(){return this._pMouseX},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"mouseY",{get:function(){return this._pMouseY},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"htmlElement",{get:function(){return this._htmlElement},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"renderer",{get:function(){return this._pRenderer},set:function(value){this._pRenderer!=value&&(this._pRenderer&&(this._pRenderer.dispose(),this._pRenderer.removeEventListener(RendererEvent.VIEWPORT_UPDATED,this._onViewportUpdatedDelegate),this._pRenderer.removeEventListener(RendererEvent.SCISSOR_UPDATED,this._onScissorUpdatedDelegate)),this._pRenderer=value,this._pRenderer.addEventListener(RendererEvent.VIEWPORT_UPDATED,this._onViewportUpdatedDelegate),this._pRenderer.addEventListener(RendererEvent.SCISSOR_UPDATED,this._onScissorUpdatedDelegate),this._pEntityCollector=this._pRenderer._iCreateEntityCollector(),this._pCamera&&(this._pEntityCollector.camera=this._pCamera),this._pRenderer._iBackgroundR=(this._backgroundColor>>16&255)/255,this._pRenderer._iBackgroundG=(this._backgroundColor>>8&255)/255,this._pRenderer._iBackgroundB=(255&this._backgroundColor)/255,this._pRenderer._iBackgroundAlpha=this._backgroundAlpha,this._pRenderer.width=this._width,this._pRenderer.height=this._height,this._pRenderer.shareContext=this._shareContext)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"shareContext",{get:function(){return this._shareContext},set:function(value){this._shareContext!=value&&(this._shareContext=value,this._pRenderer&&(this._pRenderer.shareContext=this._shareContext))},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"backgroundColor",{get:function(){return this._backgroundColor},set:function(value){this._backgroundColor!=value&&(this._backgroundColor=value,this._pRenderer._iBackgroundR=(value>>16&255)/255,this._pRenderer._iBackgroundG=(value>>8&255)/255,this._pRenderer._iBackgroundB=(255&value)/255)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"backgroundAlpha",{get:function(){return this._backgroundAlpha},set:function(value){value>1?value=1:0>value&&(value=0),this._backgroundAlpha!=value&&(this._pRenderer._iBackgroundAlpha=this._backgroundAlpha=value)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"camera",{get:function(){return this._pCamera},set:function(value){this._pCamera!=value&&(this._pCamera&&this._pCamera.removeEventListener(CameraEvent.PROJECTION_CHANGED,this._onProjectionChangedDelegate),this._pCamera=value,this._pEntityCollector&&(this._pEntityCollector.camera=this._pCamera),this._pScene&&(this._pCamera.partition=this._pScene.partition),this._pCamera.addEventListener(CameraEvent.PROJECTION_CHANGED,this._onProjectionChangedDelegate),this._scissorDirty=!0,this._viewportDirty=!0)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"scene",{get:function(){return this._pScene},set:function(value){this._pScene!=value&&(this._pScene&&this._pScene.removeEventListener(SceneEvent.PARTITION_CHANGED,this._onScenePartitionChangedDelegate),this._pScene=value,this._pScene.addEventListener(SceneEvent.PARTITION_CHANGED,this._onScenePartitionChangedDelegate),this._pCamera&&(this._pCamera.partition=this._pScene.partition))},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"deltaTime",{get:function(){return this._deltaTime},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"width",{get:function(){return this._width},set:function(value){this._width!=value&&(this._width=value,this._aspectRatio=this._width/this._height,this._pCamera.projection._iAspectRatio=this._aspectRatio,this._pRenderer.width=value,this._htmlElement.style.width=value+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"height",{get:function(){return this._height},set:function(value){this._height!=value&&(this._height=value,this._aspectRatio=this._width/this._height,this._pCamera.projection._iAspectRatio=this._aspectRatio,this._pRenderer.height=value,this._htmlElement.style.height=value+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"mousePicker",{get:function(){return this._mousePicker},set:function(value){this._mousePicker!=value&&(this._mousePicker=null==value?new away.pick.RaycastPicker:value)},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"x",{get:function(){return this._pRenderer.x},set:function(value){this._pRenderer.x!=value&&(this._pRenderer.x==value,this._htmlElement.style.left=value+"px")},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"y",{get:function(){return this._pRenderer.y},set:function(value){this._pRenderer.y!=value&&(this._pRenderer.y==value,this._htmlElement.style.top=value+"px")
+},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"visible",{get:function(){return"visible"==this._htmlElement.style.visibility},set:function(value){this._htmlElement.style.visibility=value?"visible":"hidden"},enumerable:!0,configurable:!0}),Object.defineProperty(View.prototype,"renderedFacesCount",{get:function(){return 0},enumerable:!0,configurable:!0}),View.prototype.render=function(){this.pUpdateTime(),this._pCamera.projection._iAspectRatio=this._aspectRatio,this._scissorDirty&&(this._scissorDirty=!1,this._pCamera.projection._iUpdateScissorRect(this._pRenderer.scissorRect.x,this._pRenderer.scissorRect.y,this._pRenderer.scissorRect.width,this._pRenderer.scissorRect.height)),this._viewportDirty&&(this._viewportDirty=!1,this._pCamera.projection._iUpdateViewport(this._pRenderer.viewPort.x,this._pRenderer.viewPort.y,this._pRenderer.viewPort.width,this._pRenderer.viewPort.height)),this._shareContext||(this.forceMouseMove&&this._htmlElement==this._mouseManager._iActiveDiv&&!this._mouseManager._iUpdateDirty&&(this._mouseManager._iCollidingObject=this.mousePicker.getViewCollision(this._pMouseX,this._pMouseY,this)),this._mouseManager.fireMouseEvents(this.forceMouseMove)),this._pEntityCollector.clear(),this._pScene.traversePartitions(this._pEntityCollector),this._pRenderer.render(this._pEntityCollector)},View.prototype.pUpdateTime=function(){var time=away.utils.getTimer();0==this._time&&(this._time=time),this._deltaTime=time-this._time,this._time=time},View.prototype.dispose=function(){this._pRenderer.dispose(),this._mouseManager.unregisterView(this),this._mouseManager=null,this._pRenderer=null,this._pEntityCollector=null},Object.defineProperty(View.prototype,"iEntityCollector",{get:function(){return this._pEntityCollector},enumerable:!0,configurable:!0}),View.prototype.onProjectionChanged=function(){this._scissorDirty=!0,this._viewportDirty=!0},View.prototype.onViewportUpdated=function(){this._viewportDirty=!0},View.prototype.onScissorUpdated=function(){this._scissorDirty=!0},View.prototype.project=function(point3d){var v=this._pCamera.project(point3d);return v.x=v.x*this._pRenderer.viewPort.width/2+this._width*this._pCamera.projection.originX,v.y=v.y*this._pRenderer.viewPort.height/2+this._height*this._pCamera.projection.originY,v},View.prototype.unproject=function(sX,sY,sZ){return this._pCamera.unproject(2*(sX-this._width*this._pCamera.projection.originX)/this._pRenderer.viewPort.width,2*(sY-this._height*this._pCamera.projection.originY)/this._pRenderer.viewPort.height,sZ)},View.prototype.getRay=function(sX,sY,sZ){return this._pCamera.getRay((2*sX-this._width)/this._width,(2*sY-this._height)/this._height,sZ)},View.prototype.updateCollider=function(){if(this._shareContext){var collidingObject=this.mousePicker.getViewCollision(this._pMouseX,this._pMouseY,this);(this.layeredView||null==this._mouseManager._iCollidingObject||collidingObject.rayEntryDistancei;)v=vertices[i++],minX>v?minX=v:v>maxX&&(maxX=v),v=vertices[i++],minY>v?minY=v:v>maxY&&(maxY=v),v=vertices[i++],minZ>v?minZ=v:v>maxZ&&(maxZ=v);this.fromExtremes(minX,minY,minZ,maxX,maxY,maxZ)},BoundingVolumeBase.prototype.fromGeometry=function(geometry){var i,j,p,subGeom,boundingPositions,minX,minY,minZ,maxX,maxY,maxZ,subGeoms=geometry.subGeometries,numSubGeoms=subGeoms.length;if(numSubGeoms>0){for(i=0,subGeom=subGeoms[0],boundingPositions=subGeom.getBoundingPositions(),minX=maxX=boundingPositions[i],minY=maxY=boundingPositions[i+1],minZ=maxZ=boundingPositions[i+2],j=numSubGeoms;j--;)for(subGeom=subGeoms[j],boundingPositions=subGeom.getBoundingPositions(),i=boundingPositions.length;i--;)p=boundingPositions[i],minX>p?minX=p:p>maxX&&(maxX=p),p=boundingPositions[i+1],minY>p?minY=p:p>maxY&&(maxY=p),p=boundingPositions[i+2],minZ>p?minZ=p:p>maxZ&&(maxZ=p);this.fromExtremes(minX,minY,minZ,maxX,maxY,maxZ)}else this.fromExtremes(0,0,0,0,0,0)},BoundingVolumeBase.prototype.fromSphere=function(center,radius){this.fromExtremes(center.x-radius,center.y-radius,center.z-radius,center.x+radius,center.y+radius,center.z+radius)},BoundingVolumeBase.prototype.fromExtremes=function(minX,minY,minZ,maxX,maxY,maxZ){this._aabb.x=minX,this._aabb.y=maxY,this._aabb.z=minZ,this._aabb.width=maxX-minX,this._aabb.height=maxY-minY,this._aabb.depth=maxZ-minZ,this._pAabbPointsDirty=!0,this._pBoundingEntity&&this.pUpdateBoundingEntity()},BoundingVolumeBase.prototype.isInFrustum=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.overlaps=function(bounds){return this._aabb.intersects(bounds.aabb)},BoundingVolumeBase.prototype.clone=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.rayIntersection=function(){return-1},BoundingVolumeBase.prototype.containsPoint=function(){return!1},BoundingVolumeBase.prototype.pUpdateAABBPoints=function(){var minX=this._aabb.x,minY=this._aabb.y-this._aabb.height,minZ=this._aabb.z,maxX=this._aabb.x+this._aabb.width,maxY=this._aabb.y,maxZ=this._aabb.z+this._aabb.depth;this._pAabbPoints[0]=minX,this._pAabbPoints[1]=minY,this._pAabbPoints[2]=minZ,this._pAabbPoints[3]=maxX,this._pAabbPoints[4]=minY,this._pAabbPoints[5]=minZ,this._pAabbPoints[6]=minX,this._pAabbPoints[7]=maxY,this._pAabbPoints[8]=minZ,this._pAabbPoints[9]=maxX,this._pAabbPoints[10]=maxY,this._pAabbPoints[11]=minZ,this._pAabbPoints[12]=minX,this._pAabbPoints[13]=minY,this._pAabbPoints[14]=maxZ,this._pAabbPoints[15]=maxX,this._pAabbPoints[16]=minY,this._pAabbPoints[17]=maxZ,this._pAabbPoints[18]=minX,this._pAabbPoints[19]=maxY,this._pAabbPoints[20]=maxZ,this._pAabbPoints[21]=maxX,this._pAabbPoints[22]=maxY,this._pAabbPoints[23]=maxZ,this._pAabbPointsDirty=!1},BoundingVolumeBase.prototype.pUpdateBoundingEntity=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.pCreateBoundingEntity=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.classifyToPlane=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase.prototype.transformFrom=function(){throw new away.errors.AbstractMethodError},BoundingVolumeBase}());bounds.BoundingVolumeBase=BoundingVolumeBase}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(bounds){var NullBounds=function(_super){function NullBounds(alwaysIn){"undefined"==typeof alwaysIn&&(alwaysIn=!0),_super.call(this),this._alwaysIn=alwaysIn,this._aabb.width=this._aabb.height=this._aabb.depth=Number.POSITIVE_INFINITY,this._aabb.x=this._aabb.y=this._aabb.z=this._alwaysIn?Number.NEGATIVE_INFINITY/2:Number.POSITIVE_INFINITY}return __extends(NullBounds,_super),NullBounds.prototype.clone=function(){return new away.bounds.NullBounds(this._alwaysIn)},NullBounds.prototype.pCreateBoundingEntity=function(){return null},NullBounds.prototype.isInFrustum=function(){return this._alwaysIn},NullBounds.prototype.fromSphere=function(){},NullBounds.prototype.fromExtremes=function(){},NullBounds.prototype.classifyToPlane=function(){return away.geom.PlaneClassification.INTERSECT},NullBounds.prototype.transformFrom=function(bounds){this._alwaysIn=bounds._alwaysIn},NullBounds}(away.bounds.BoundingVolumeBase);bounds.NullBounds=NullBounds}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(bounds){var BoundingSphere=function(_super){function BoundingSphere(){_super.call(this),this._radius=0,this._centerX=0,this._centerY=0,this._centerZ=0}return __extends(BoundingSphere,_super),Object.defineProperty(BoundingSphere.prototype,"radius",{get:function(){return this._radius},enumerable:!0,configurable:!0}),BoundingSphere.prototype.nullify=function(){_super.prototype.nullify.call(this),this._centerX=this._centerY=this._centerZ=0,this._radius=0},BoundingSphere.prototype.isInFrustum=function(planes,numPlanes){for(var i=0;numPlanes>i;++i){var plane=planes[i],flippedExtentX=plane.a<0?-this._radius:this._radius,flippedExtentY=plane.b<0?-this._radius:this._radius,flippedExtentZ=plane.c<0?-this._radius:this._radius,projDist=plane.a*(this._centerX+flippedExtentX)+plane.b*(this._centerY+flippedExtentY)+plane.c*(this._centerZ+flippedExtentZ)-plane.d;if(0>projDist)return!1}return!0},BoundingSphere.prototype.fromSphere=function(center,radius){this._centerX=center.x,this._centerY=center.y,this._centerZ=center.z,this._radius=radius,this._aabb.width=this._aabb.height=this._aabb.depth=2*radius,this._aabb.x=this._centerX-radius,this._aabb.y=this._centerY+radius,this._aabb.z=this._centerZ-radius,this._pAabbPointsDirty=!0,this._pBoundingEntity&&this.pUpdateBoundingEntity()},BoundingSphere.prototype.fromExtremes=function(minX,minY,minZ,maxX,maxY,maxZ){this._centerX=.5*(maxX+minX),this._centerY=.5*(maxY+minY),this._centerZ=.5*(maxZ+minZ);var d=maxX-minX,y=maxY-minY,z=maxZ-minZ;y>d&&(d=y),z>d&&(d=z),this._radius=d*Math.sqrt(.5),_super.prototype.fromExtremes.call(this,minX,minY,minZ,maxX,maxY,maxZ)},BoundingSphere.prototype.clone=function(){var clone=new BoundingSphere;return clone.fromSphere(new away.geom.Vector3D(this._centerX,this._centerY,this._centerZ),this._radius),clone},BoundingSphere.prototype.rayIntersection=function(position,direction,targetNormal){if(this.containsPoint(position))return 0;var rayEntryDistance,px=position.x-this._centerX,py=position.y-this._centerY,pz=position.z-this._centerZ,vx=direction.x,vy=direction.y,vz=direction.z,a=vx*vx+vy*vy+vz*vz,b=2*(px*vx+py*vy+pz*vz),c=px*px+py*py+pz*pz-this._radius*this._radius,det=b*b-4*a*c;if(det>=0){var sqrtDet=Math.sqrt(det);if(rayEntryDistance=(-b-sqrtDet)/(2*a),rayEntryDistance>=0)return targetNormal.x=px+rayEntryDistance*vx,targetNormal.y=py+rayEntryDistance*vy,targetNormal.z=pz+rayEntryDistance*vz,targetNormal.normalize(),rayEntryDistance}return-1},BoundingSphere.prototype.containsPoint=function(position){var px=position.x-this._centerX,py=position.y-this._centerY,pz=position.z-this._centerZ,distance=Math.sqrt(px*px+py*py+pz*pz);return distance<=this._radius},BoundingSphere.prototype.pUpdateBoundingEntity=function(){var sc=this._radius;0==sc&&(sc=.001);var transform=this._pBoundingEntity.transform;transform.scale=new away.geom.Vector3D(sc,sc,sc),transform.position=new away.geom.Vector3D(this._centerX,this._centerY,this._centerZ)},BoundingSphere.prototype.pCreateBoundingEntity=function(){return null},BoundingSphere.prototype.classifyToPlane=function(plane){var a=plane.a,b=plane.b,c=plane.c,dd=a*this._centerX+b*this._centerY+c*this._centerZ-plane.d;0>a&&(a=-a),0>b&&(b=-b),0>c&&(c=-c);var rr=(a+b+c)*this._radius;return dd>rr?away.geom.PlaneClassification.FRONT:-rr>dd?away.geom.PlaneClassification.BACK:away.geom.PlaneClassification.INTERSECT},BoundingSphere.prototype.transformFrom=function(bounds,matrix){var sphere=bounds,cx=sphere._centerX,cy=sphere._centerY,cz=sphere._centerZ,raw=new Array(16);matrix.copyRawDataTo(raw);var m11=raw[0],m12=raw[4],m13=raw[8],m14=raw[12],m21=raw[1],m22=raw[5],m23=raw[9],m24=raw[13],m31=raw[2],m32=raw[6],m33=raw[10],m34=raw[14];this._centerX=cx*m11+cy*m12+cz*m13+m14,this._centerY=cx*m21+cy*m22+cz*m23+m24,this._centerZ=cx*m31+cy*m32+cz*m33+m34,0>m11&&(m11=-m11),0>m12&&(m12=-m12),0>m13&&(m13=-m13),0>m21&&(m21=-m21),0>m22&&(m22=-m22),0>m23&&(m23=-m23),0>m31&&(m31=-m31),0>m32&&(m32=-m32),0>m33&&(m33=-m33);var r=sphere._radius,rx=m11+m12+m13,ry=m21+m22+m23,rz=m31+m32+m33;this._radius=r*Math.sqrt(rx*rx+ry*ry+rz*rz),this._aabb.width=this._aabb.height=this._aabb.depth=2*this._radius,this._aabb.x=this._centerX-this._radius,this._aabb.y=this._centerY+this._radius,this._aabb.z=this._centerZ-this._radius},BoundingSphere}(away.bounds.BoundingVolumeBase);bounds.BoundingSphere=BoundingSphere}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(bounds){var AxisAlignedBoundingBox=function(_super){function AxisAlignedBoundingBox(){_super.call(this),this._centerX=0,this._centerY=0,this._centerZ=0,this._halfExtentsX=0,this._halfExtentsY=0,this._halfExtentsZ=0}return __extends(AxisAlignedBoundingBox,_super),AxisAlignedBoundingBox.prototype.nullify=function(){_super.prototype.nullify.call(this),this._centerX=this._centerY=this._centerZ=0,this._halfExtentsX=this._halfExtentsY=this._halfExtentsZ=0},AxisAlignedBoundingBox.prototype.isInFrustum=function(planes,numPlanes){for(var i=0;numPlanes>i;++i){var plane=planes[i],a=plane.a,b=plane.b,c=plane.c,flippedExtentX=0>a?-this._halfExtentsX:this._halfExtentsX,flippedExtentY=0>b?-this._halfExtentsY:this._halfExtentsY,flippedExtentZ=0>c?-this._halfExtentsZ:this._halfExtentsZ,projDist=a*(this._centerX+flippedExtentX)+b*(this._centerY+flippedExtentY)+c*(this._centerZ+flippedExtentZ)-plane.d;if(0>projDist)return!1}return!0},AxisAlignedBoundingBox.prototype.rayIntersection=function(position,direction,targetNormal){if(this.containsPoint(position))return 0;var ix,iy,iz,rayEntryDistance,intersects,px=position.x-this._centerX,py=position.y-this._centerY,pz=position.z-this._centerZ,vx=direction.x,vy=direction.y,vz=direction.z;return 0>vx&&(rayEntryDistance=(this._halfExtentsX-px)/vx,rayEntryDistance>0&&(iy=py+rayEntryDistance*vy,iz=pz+rayEntryDistance*vz,iy>-this._halfExtentsY&&iy-this._halfExtentsZ&&iz0&&(rayEntryDistance=(-this._halfExtentsX-px)/vx,rayEntryDistance>0&&(iy=py+rayEntryDistance*vy,iz=pz+rayEntryDistance*vz,iy>-this._halfExtentsY&&iy-this._halfExtentsZ&&izvy&&(rayEntryDistance=(this._halfExtentsY-py)/vy,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iz=pz+rayEntryDistance*vz,ix>-this._halfExtentsX&&ix-this._halfExtentsZ&&iz0&&(rayEntryDistance=(-this._halfExtentsY-py)/vy,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iz=pz+rayEntryDistance*vz,ix>-this._halfExtentsX&&ix-this._halfExtentsZ&&izvz&&(rayEntryDistance=(this._halfExtentsZ-pz)/vz,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iy=py+rayEntryDistance*vy,iy>-this._halfExtentsY&&iy-this._halfExtentsX&&ix0&&(rayEntryDistance=(-this._halfExtentsZ-pz)/vz,rayEntryDistance>0&&(ix=px+rayEntryDistance*vx,iy=py+rayEntryDistance*vy,iy>-this._halfExtentsY&&iy-this._halfExtentsX&&ix=-this._halfExtentsX&&py<=this._halfExtentsY&&py>=-this._halfExtentsY&&pz<=this._halfExtentsZ&&pz>=-this._halfExtentsZ},AxisAlignedBoundingBox.prototype.fromExtremes=function(minX,minY,minZ,maxX,maxY,maxZ){this._centerX=.5*(maxX+minX),this._centerY=.5*(maxY+minY),this._centerZ=.5*(maxZ+minZ),this._halfExtentsX=.5*(maxX-minX),this._halfExtentsY=.5*(maxY-minY),this._halfExtentsZ=.5*(maxZ-minZ),_super.prototype.fromExtremes.call(this,minX,minY,minZ,maxX,maxY,maxZ)},AxisAlignedBoundingBox.prototype.clone=function(){var clone=new AxisAlignedBoundingBox;return clone.fromExtremes(this._aabb.x,this._aabb.y+this._aabb.height,this._aabb.z,this._aabb.x+this._aabb.width,this._aabb.y,this._aabb.z+this._aabb.depth),clone},Object.defineProperty(AxisAlignedBoundingBox.prototype,"halfExtentsX",{get:function(){return this._halfExtentsX},enumerable:!0,configurable:!0}),Object.defineProperty(AxisAlignedBoundingBox.prototype,"halfExtentsY",{get:function(){return this._halfExtentsY},enumerable:!0,configurable:!0}),Object.defineProperty(AxisAlignedBoundingBox.prototype,"halfExtentsZ",{get:function(){return this._halfExtentsZ},enumerable:!0,configurable:!0}),AxisAlignedBoundingBox.prototype.closestPointToPoint=function(point,target){"undefined"==typeof target&&(target=null);var p;return null==target&&(target=new away.geom.Vector3D),p=point.x,pthis._aabb.x+this._aabb.width&&(p=this._aabb.x+this._aabb.width),target.x=p,p=point.y,pthis._aabb.y&&(p=this._aabb.y),target.y=p,p=point.z,pthis._aabb.z+this._aabb.depth&&(p=this._aabb.z+this._aabb.depth),target.z=p,target},AxisAlignedBoundingBox.prototype.pUpdateBoundingRenderable=function(){this._pBoundingEntity.transform.scale.x=Math.max(2*this._halfExtentsX,.001),this._pBoundingEntity.transform.scale.y=Math.max(2*this._halfExtentsY,.001),this._pBoundingEntity.transform.scale.z=Math.max(2*this._halfExtentsZ,.001),this._pBoundingEntity.transform.position.x=this._centerX,this._pBoundingEntity.transform.position.y=this._centerY,this._pBoundingEntity.transform.position.z=this._centerZ},AxisAlignedBoundingBox.prototype.pCreateBoundingEntity=function(){return null},AxisAlignedBoundingBox.prototype.classifyToPlane=function(plane){var a=plane.a,b=plane.b,c=plane.c,centerDistance=a*this._centerX+b*this._centerY+c*this._centerZ-plane.d;0>a&&(a=-a),0>b&&(b=-b),0>c&&(c=-c);var boundOffset=a*this._halfExtentsX+b*this._halfExtentsY+c*this._halfExtentsZ;return centerDistance>boundOffset?away.geom.PlaneClassification.FRONT:-boundOffset>centerDistance?away.geom.PlaneClassification.BACK:away.geom.PlaneClassification.INTERSECT},AxisAlignedBoundingBox.prototype.transformFrom=function(bounds,matrix){var aabb=bounds,cx=aabb._centerX,cy=aabb._centerY,cz=aabb._centerZ,raw=away.geom.Matrix3DUtils.RAW_DATA_CONTAINER;matrix.copyRawDataTo(raw);var m11=raw[0],m12=raw[4],m13=raw[8],m14=raw[12],m21=raw[1],m22=raw[5],m23=raw[9],m24=raw[13],m31=raw[2],m32=raw[6],m33=raw[10],m34=raw[14];this._centerX=cx*m11+cy*m12+cz*m13+m14,this._centerY=cx*m21+cy*m22+cz*m23+m24,this._centerZ=cx*m31+cy*m32+cz*m33+m34,0>m11&&(m11=-m11),0>m12&&(m12=-m12),0>m13&&(m13=-m13),0>m21&&(m21=-m21),0>m22&&(m22=-m22),0>m23&&(m23=-m23),0>m31&&(m31=-m31),0>m32&&(m32=-m32),0>m33&&(m33=-m33);var hx=aabb._halfExtentsX,hy=aabb._halfExtentsY,hz=aabb._halfExtentsZ;this._halfExtentsX=hx*m11+hy*m12+hz*m13,this._halfExtentsY=hx*m21+hy*m22+hz*m23,this._halfExtentsZ=hx*m31+hy*m32+hz*m33,this._aabb.width=this._aabb.height=this._aabb.depth=2*this._halfExtentsX,this._aabb.x=this._centerX-this._halfExtentsX,this._aabb.y=this._centerY+this._halfExtentsY,this._aabb.z=this._centerZ-this._halfExtentsZ},AxisAlignedBoundingBox}(away.bounds.BoundingVolumeBase);bounds.AxisAlignedBoundingBox=AxisAlignedBoundingBox}(away.bounds||(away.bounds={}));away.bounds}(away||(away={}));var away;!function(away){!function(controllers){var ControllerBase=function(){function ControllerBase(targetObject){"undefined"==typeof targetObject&&(targetObject=null),this._pAutoUpdate=!0,this.targetObject=targetObject}return ControllerBase.prototype.pNotifyUpdate=function(){this._pTargetObject&&this._pTargetObject._iAssignedPartition&&this._pAutoUpdate&&this._pTargetObject._iAssignedPartition.iMarkForUpdate(this._pTargetObject)},Object.defineProperty(ControllerBase.prototype,"targetObject",{get:function(){return this._pTargetObject},set:function(val){this._pTargetObject!=val&&(this._pTargetObject&&this._pAutoUpdate&&(this._pTargetObject._iController=null),this._pTargetObject=val,this._pTargetObject&&this._pAutoUpdate&&(this._pTargetObject._iController=this),this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(ControllerBase.prototype,"autoUpdate",{get:function(){return this._pAutoUpdate},set:function(val){this._pAutoUpdate!=val&&(this._pAutoUpdate=val,this._pTargetObject&&(this._pTargetObject._iController=this._pTargetObject?this:null))},enumerable:!0,configurable:!0}),ControllerBase.prototype.update=function(interpolate){throw"undefined"==typeof interpolate&&(interpolate=!0),new away.errors.AbstractMethodError},ControllerBase}();controllers.ControllerBase=ControllerBase}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var LookAtController=function(_super){function LookAtController(targetObject,lookAtObject){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),_super.call(this,targetObject),this._pOrigin=new away.geom.Vector3D(0,0,0),this._onLookAtObjectChangedDelegate=away.utils.Delegate.create(this,this.onLookAtObjectChanged),lookAtObject?this.lookAtObject=lookAtObject:this.lookAtPosition=new away.geom.Vector3D}return __extends(LookAtController,_super),Object.defineProperty(LookAtController.prototype,"lookAtPosition",{get:function(){return this._pLookAtPosition},set:function(val){this._pLookAtObject&&(this._pLookAtObject.removeEventListener(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this._onLookAtObjectChangedDelegate),this._pLookAtObject=null),this._pLookAtPosition=val,this.pNotifyUpdate()},enumerable:!0,configurable:!0}),Object.defineProperty(LookAtController.prototype,"lookAtObject",{get:function(){return this._pLookAtObject},set:function(val){this._pLookAtPosition&&(this._pLookAtPosition=null),this._pLookAtObject!=val&&(this._pLookAtObject&&this._pLookAtObject.removeEventListener(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this._onLookAtObjectChangedDelegate),this._pLookAtObject=val,this._pLookAtObject&&this._pLookAtObject.addEventListener(away.events.DisplayObjectEvent.SCENETRANSFORM_CHANGED,this._onLookAtObjectChangedDelegate),this.pNotifyUpdate())},enumerable:!0,configurable:!0}),LookAtController.prototype.update=function(interpolate){"undefined"==typeof interpolate&&(interpolate=!0),this._pTargetObject&&(this._pLookAtPosition?this._pTargetObject.lookAt(this._pLookAtPosition):this._pLookAtObject&&this._pTargetObject.lookAt(this._pLookAtObject.scene?this._pLookAtObject.scenePosition:this._pLookAtObject.transform.position))},LookAtController.prototype.onLookAtObjectChanged=function(){this.pNotifyUpdate()},LookAtController}(away.controllers.ControllerBase);controllers.LookAtController=LookAtController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var MathConsts=away.geom.MathConsts,Vector3D=away.geom.Vector3D,HoverController=function(_super){function HoverController(targetObject,lookAtObject,panAngle,tiltAngle,distance,minTiltAngle,maxTiltAngle,minPanAngle,maxPanAngle,steps,yFactor,wrapPanAngle){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),"undefined"==typeof panAngle&&(panAngle=0),"undefined"==typeof tiltAngle&&(tiltAngle=90),"undefined"==typeof distance&&(distance=1e3),"undefined"==typeof minTiltAngle&&(minTiltAngle=-90),"undefined"==typeof maxTiltAngle&&(maxTiltAngle=90),"undefined"==typeof minPanAngle&&(minPanAngle=null),"undefined"==typeof maxPanAngle&&(maxPanAngle=null),"undefined"==typeof steps&&(steps=8),"undefined"==typeof yFactor&&(yFactor=2),"undefined"==typeof wrapPanAngle&&(wrapPanAngle=!1),_super.call(this,targetObject,lookAtObject),this._iCurrentPanAngle=0,this._iCurrentTiltAngle=90,this._panAngle=0,this._tiltAngle=90,this._distance=1e3,this._minPanAngle=-1/0,this._maxPanAngle=1/0,this._minTiltAngle=-90,this._maxTiltAngle=90,this._steps=8,this._yFactor=2,this._wrapPanAngle=!1,this._upAxis=new Vector3D,this.distance=distance,this.panAngle=panAngle,this.tiltAngle=tiltAngle,this.minPanAngle=null!=minPanAngle?minPanAngle:-1/0,this.maxPanAngle=null!=maxPanAngle?maxPanAngle:1/0,this.minTiltAngle=minTiltAngle,this.maxTiltAngle=maxTiltAngle,this.steps=steps,this.yFactor=yFactor,this.wrapPanAngle=wrapPanAngle,this._iCurrentPanAngle=this._panAngle,this._iCurrentTiltAngle=this._tiltAngle}return __extends(HoverController,_super),Object.defineProperty(HoverController.prototype,"steps",{get:function(){return this._steps},set:function(val){val=1>val?1:val,this._steps!=val&&(this._steps=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"panAngle",{get:function(){return this._panAngle},set:function(val){val=Math.max(this._minPanAngle,Math.min(this._maxPanAngle,val)),this._panAngle!=val&&(this._panAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"tiltAngle",{get:function(){return this._tiltAngle},set:function(val){val=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,val)),this._tiltAngle!=val&&(this._tiltAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"distance",{get:function(){return this._distance},set:function(val){this._distance!=val&&(this._distance=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"minPanAngle",{get:function(){return this._minPanAngle},set:function(val){this._minPanAngle!=val&&(this._minPanAngle=val,this.panAngle=Math.max(this._minPanAngle,Math.min(this._maxPanAngle,this._panAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"maxPanAngle",{get:function(){return this._maxPanAngle},set:function(val){this._maxPanAngle!=val&&(this._maxPanAngle=val,this.panAngle=Math.max(this._minPanAngle,Math.min(this._maxPanAngle,this._panAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"minTiltAngle",{get:function(){return this._minTiltAngle},set:function(val){this._minTiltAngle!=val&&(this._minTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"maxTiltAngle",{get:function(){return this._maxTiltAngle},set:function(val){this._maxTiltAngle!=val&&(this._maxTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"yFactor",{get:function(){return this._yFactor},set:function(val){this._yFactor!=val&&(this._yFactor=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(HoverController.prototype,"wrapPanAngle",{get:function(){return this._wrapPanAngle},set:function(val){this._wrapPanAngle!=val&&(this._wrapPanAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),HoverController.prototype.update=function(interpolate){if("undefined"==typeof interpolate&&(interpolate=!0),this._tiltAngle!=this._iCurrentTiltAngle||this._panAngle!=this._iCurrentPanAngle){if(this.pNotifyUpdate(),this._wrapPanAngle){for(this._panAngle<0?(this._iCurrentPanAngle+=this._panAngle%360+360-this._panAngle,this._panAngle=this._panAngle%360+360):(this._iCurrentPanAngle+=this._panAngle%360-this._panAngle,this._panAngle=this._panAngle%360);this._panAngle-this._iCurrentPanAngle<-180;)this._iCurrentPanAngle-=360;for(;this._panAngle-this._iCurrentPanAngle>180;)this._iCurrentPanAngle+=360}interpolate?(this._iCurrentTiltAngle+=(this._tiltAngle-this._iCurrentTiltAngle)/(this.steps+1),this._iCurrentPanAngle+=(this._panAngle-this._iCurrentPanAngle)/(this.steps+1)):(this._iCurrentPanAngle=this._panAngle,this._iCurrentTiltAngle=this._tiltAngle),Math.abs(this.tiltAngle-this._iCurrentTiltAngle)<.01&&Math.abs(this._panAngle-this._iCurrentPanAngle)<.01&&(this._iCurrentTiltAngle=this._tiltAngle,this._iCurrentPanAngle=this._panAngle)}var pos=this.lookAtObject?this.lookAtObject.transform.position:this.lookAtPosition?this.lookAtPosition:this._pOrigin;this.targetObject.x=pos.x+this.distance*Math.sin(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS),this.targetObject.y=pos.y+this.distance*Math.sin(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS)*this.yFactor,this.targetObject.z=pos.z+this.distance*Math.cos(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS),this._upAxis.x=-Math.sin(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.sin(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS),this._upAxis.y=Math.cos(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS),this._upAxis.z=-Math.cos(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.sin(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS),this._pTargetObject&&(this._pLookAtPosition?this._pTargetObject.lookAt(this._pLookAtPosition,this._upAxis):this._pLookAtObject&&this._pTargetObject.lookAt(this._pLookAtObject.scene?this._pLookAtObject.scenePosition:this._pLookAtObject.transform.position,this._upAxis))},HoverController}(away.controllers.LookAtController);controllers.HoverController=HoverController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var FirstPersonController=function(_super){function FirstPersonController(targetObject,panAngle,tiltAngle,minTiltAngle,maxTiltAngle,steps,wrapPanAngle){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof panAngle&&(panAngle=0),"undefined"==typeof tiltAngle&&(tiltAngle=90),"undefined"==typeof minTiltAngle&&(minTiltAngle=-90),"undefined"==typeof maxTiltAngle&&(maxTiltAngle=90),"undefined"==typeof steps&&(steps=8),"undefined"==typeof wrapPanAngle&&(wrapPanAngle=!1),_super.call(this,targetObject),this._iCurrentPanAngle=0,this._iCurrentTiltAngle=90,this._panAngle=0,this._tiltAngle=90,this._minTiltAngle=-90,this._maxTiltAngle=90,this._steps=8,this._walkIncrement=0,this._strafeIncrement=0,this._wrapPanAngle=!1,this.fly=!1,this.panAngle=panAngle,this.tiltAngle=tiltAngle,this.minTiltAngle=minTiltAngle,this.maxTiltAngle=maxTiltAngle,this.steps=steps,this.wrapPanAngle=wrapPanAngle,this._iCurrentPanAngle=this._panAngle,this._iCurrentTiltAngle=this._tiltAngle}return __extends(FirstPersonController,_super),Object.defineProperty(FirstPersonController.prototype,"steps",{get:function(){return this._steps
+},set:function(val){val=1>val?1:val,this._steps!=val&&(this._steps=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"panAngle",{get:function(){return this._panAngle},set:function(val){this._panAngle!=val&&(this._panAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"tiltAngle",{get:function(){return this._tiltAngle},set:function(val){val=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,val)),this._tiltAngle!=val&&(this._tiltAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"minTiltAngle",{get:function(){return this._minTiltAngle},set:function(val){this._minTiltAngle!=val&&(this._minTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"maxTiltAngle",{get:function(){return this._maxTiltAngle},set:function(val){this._maxTiltAngle!=val&&(this._maxTiltAngle=val,this.tiltAngle=Math.max(this._minTiltAngle,Math.min(this._maxTiltAngle,this._tiltAngle)))},enumerable:!0,configurable:!0}),Object.defineProperty(FirstPersonController.prototype,"wrapPanAngle",{get:function(){return this._wrapPanAngle},set:function(val){this._wrapPanAngle!=val&&(this._wrapPanAngle=val,this.pNotifyUpdate())},enumerable:!0,configurable:!0}),FirstPersonController.prototype.update=function(interpolate){if("undefined"==typeof interpolate&&(interpolate=!0),this._tiltAngle!=this._iCurrentTiltAngle||this._panAngle!=this._iCurrentPanAngle){if(this.pNotifyUpdate(),this._wrapPanAngle){for(this._panAngle<0?(this._iCurrentPanAngle+=this._panAngle%360+360-this._panAngle,this._panAngle=this._panAngle%360+360):(this._iCurrentPanAngle+=this._panAngle%360-this._panAngle,this._panAngle=this._panAngle%360);this._panAngle-this._iCurrentPanAngle<-180;)this._iCurrentPanAngle-=360;for(;this._panAngle-this._iCurrentPanAngle>180;)this._iCurrentPanAngle+=360}interpolate?(this._iCurrentTiltAngle+=(this._tiltAngle-this._iCurrentTiltAngle)/(this.steps+1),this._iCurrentPanAngle+=(this._panAngle-this._iCurrentPanAngle)/(this.steps+1)):(this._iCurrentTiltAngle=this._tiltAngle,this._iCurrentPanAngle=this._panAngle),Math.abs(this.tiltAngle-this._iCurrentTiltAngle)<.01&&Math.abs(this._panAngle-this._iCurrentPanAngle)<.01&&(this._iCurrentTiltAngle=this._tiltAngle,this._iCurrentPanAngle=this._panAngle)}this.targetObject.rotationX=this._iCurrentTiltAngle,this.targetObject.rotationY=this._iCurrentPanAngle,this._walkIncrement&&(this.fly?this.targetObject.transform.moveForward(this._walkIncrement):(this.targetObject.x+=this._walkIncrement*Math.sin(this._panAngle*away.geom.MathConsts.DEGREES_TO_RADIANS),this.targetObject.z+=this._walkIncrement*Math.cos(this._panAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)),this._walkIncrement=0),this._strafeIncrement&&(this.targetObject.transform.moveRight(this._strafeIncrement),this._strafeIncrement=0)},FirstPersonController.prototype.incrementWalk=function(val){0!=val&&(this._walkIncrement+=val,this.pNotifyUpdate())},FirstPersonController.prototype.incrementStrafe=function(val){0!=val&&(this._strafeIncrement+=val,this.pNotifyUpdate())},FirstPersonController}(away.controllers.ControllerBase);controllers.FirstPersonController=FirstPersonController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var FollowController=function(_super){function FollowController(targetObject,lookAtObject,tiltAngle,distance){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),"undefined"==typeof tiltAngle&&(tiltAngle=45),"undefined"==typeof distance&&(distance=700),_super.call(this,targetObject,lookAtObject,0,tiltAngle,distance)}return __extends(FollowController,_super),FollowController.prototype.update=function(interpolate){"undefined"==typeof interpolate&&(interpolate=!0),interpolate=interpolate,this.lookAtObject&&(this.panAngle=this._pLookAtObject.rotationY-180,_super.prototype.update.call(this))},FollowController}(away.controllers.HoverController);controllers.FollowController=FollowController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(controllers){var SpringController=function(_super){function SpringController(targetObject,lookAtObject,stiffness,mass,damping){"undefined"==typeof targetObject&&(targetObject=null),"undefined"==typeof lookAtObject&&(lookAtObject=null),"undefined"==typeof stiffness&&(stiffness=1),"undefined"==typeof mass&&(mass=40),"undefined"==typeof damping&&(damping=4),_super.call(this,targetObject,lookAtObject),this.positionOffset=new away.geom.Vector3D(0,500,-1e3),this.stiffness=stiffness,this.damping=damping,this.mass=mass,this._velocity=new away.geom.Vector3D,this._dv=new away.geom.Vector3D,this._stretch=new away.geom.Vector3D,this._force=new away.geom.Vector3D,this._acceleration=new away.geom.Vector3D,this._desiredPosition=new away.geom.Vector3D}return __extends(SpringController,_super),SpringController.prototype.update=function(interpolate){"undefined"==typeof interpolate&&(interpolate=!0);var offs;this._pLookAtObject&&this._pTargetObject&&(offs=this._pLookAtObject.transform.matrix3D.deltaTransformVector(this.positionOffset),this._desiredPosition.x=this._pLookAtObject.x+offs.x,this._desiredPosition.y=this._pLookAtObject.y+offs.y,this._desiredPosition.z=this._pLookAtObject.z+offs.z,this._stretch=this._pTargetObject.transform.position.add(this._desiredPosition),this._stretch.scaleBy(-this.stiffness),this._dv.copyFrom(this._velocity),this._dv.scaleBy(this.damping),this._force.x=this._stretch.x-this._dv.x,this._force.y=this._stretch.y-this._dv.y,this._force.z=this._stretch.z-this._dv.z,this._acceleration.copyFrom(this._force),this._acceleration.scaleBy(1/this.mass),this._velocity.incrementBy(this._acceleration),this._pTargetObject.transform.position=this._pTargetObject.transform.position.add(this._velocity),_super.prototype.update.call(this))},SpringController}(away.controllers.LookAtController);controllers.SpringController=SpringController}(away.controllers||(away.controllers={}));away.controllers}(away||(away={}));var away;!function(away){!function(materials){var BlendMode=away.base.BlendMode,AssetType=(away.events.MaterialEvent,away.geom.Matrix3D,away.library.AssetType),CSSMaterialBase=(away.utils.Delegate,function(_super){function CSSMaterialBase(texture,smooth,repeat){"undefined"==typeof texture&&(texture=null),"undefined"==typeof smooth&&(smooth=!0),"undefined"==typeof repeat&&(repeat=!1),_super.call(this),this._iRenderOrderId=0,this._bothSides=!1,this._pBlendMode=BlendMode.NORMAL,this._repeat=!1,this._smooth=!0,this._iMaterialId=Number(this.id),this.texture=texture,this.smooth=smooth,this.repeat=repeat,this._owners=new Array}return __extends(CSSMaterialBase,_super),Object.defineProperty(CSSMaterialBase.prototype,"height",{get:function(){return this._height},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"imageElement",{get:function(){return this._imageElement},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"imageStyle",{get:function(){return this._imageStyle},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"repeat",{get:function(){return this._repeat},set:function(value){this._repeat=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"smooth",{get:function(){return this._smooth},set:function(value){this._smooth=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"texture",{get:function(){return this._texture},set:function(value){if(this._texture!=value&&(this._texture=value,value instanceof away.textures.ImageTexture)){this._imageElement=value.htmlImageElement;var node=document.createElement("style");node.type="text/css",document.getElementsByTagName("head")[0].appendChild(node);var sheet=document.styleSheets[document.styleSheets.length-1];sheet.insertRule(".material"+this.id+"{ }",0);var style=sheet.cssRules[0].style;style.backgroundImage="url("+this._imageElement.src+")",style.backgroundSize="100% 100%",style.position="absolute",style.width=this._imageElement.width+"px",style.height=this._imageElement.height+"px",style.transformOrigin=style["-webkit-transform-origin"]=style["-moz-transform-origin"]=style["-o-transform-origin"]=style["-ms-transform-origin"]="0% 0%",this._height=this._imageElement.height,this._width=this._imageElement.width,this.notifySizeChanged()}},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"width",{get:function(){return this._width},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"assetType",{get:function(){return AssetType.MATERIAL},enumerable:!0,configurable:!0}),CSSMaterialBase.prototype.dispose=function(){},Object.defineProperty(CSSMaterialBase.prototype,"bothSides",{get:function(){return this._bothSides},set:function(value){this._bothSides=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"blendMode",{get:function(){return this._pBlendMode},set:function(value){this._pBlendMode=value},enumerable:!0,configurable:!0}),Object.defineProperty(CSSMaterialBase.prototype,"requiresBlending",{get:function(){return this._pBlendMode!=away.base.BlendMode.NORMAL},enumerable:!0,configurable:!0}),CSSMaterialBase.prototype.iAddOwner=function(owner){var index=this._owners.indexOf(owner);-1==index&&this._owners.push(owner)},CSSMaterialBase.prototype.iRemoveOwner=function(owner){var index=this._owners.indexOf(owner);-1!=index&&this._owners.splice(index,1)},Object.defineProperty(CSSMaterialBase.prototype,"iOwners",{get:function(){return this._owners},enumerable:!0,configurable:!0}),CSSMaterialBase.prototype.notifySizeChanged=function(){this._sizeChanged||(this._sizeChanged=new away.events.MaterialEvent(away.events.MaterialEvent.SIZE_CHANGED)),this.dispatchEvent(this._sizeChanged)},CSSMaterialBase}(away.library.NamedAssetBase));materials.CSSMaterialBase=CSSMaterialBase}(away.materials||(away.materials={}));away.materials}(away||(away={}));var away;!function(away){!function(prefabs){var AbstractMethodError=(away.base.DisplayObject,away.errors.AbstractMethodError),PrefabBase=function(_super){function PrefabBase(){_super.call(this),this._pObjects=new Array}return __extends(PrefabBase,_super),PrefabBase.prototype.getNewObject=function(){var object=this._pCreateObject();return this._pObjects.push(object),object},PrefabBase.prototype._pCreateObject=function(){throw new AbstractMethodError},PrefabBase.prototype._iValidate=function(){},PrefabBase}(away.library.NamedAssetBase);prefabs.PrefabBase=PrefabBase}(away.prefabs||(away.prefabs={}));away.prefabs}(away||(away={}));var away;!function(away){!function(animators){var AnimationNodeBase=function(_super){function AnimationNodeBase(){_super.call(this)}return __extends(AnimationNodeBase,_super),Object.defineProperty(AnimationNodeBase.prototype,"stateClass",{get:function(){return this._pStateClass},enumerable:!0,configurable:!0}),AnimationNodeBase.prototype.dispose=function(){},Object.defineProperty(AnimationNodeBase.prototype,"assetType",{get:function(){return away.library.AssetType.ANIMATION_NODE},enumerable:!0,configurable:!0}),AnimationNodeBase}(away.library.NamedAssetBase);animators.AnimationNodeBase=AnimationNodeBase}(away.animators||(away.animators={}));away.animators}(away||(away={}));var away;!function(away){!function(textures){var TextureProxyBase=function(_super){function TextureProxyBase(){_super.call(this),this._pFormat=away.gl.ContextGLTextureFormat.BGRA,this._pHasMipmaps=!1,this._textures=new Array(8),this._dirty=new Array(8)}return __extends(TextureProxyBase,_super),Object.defineProperty(TextureProxyBase.prototype,"hasMipMaps",{get:function(){return this._pHasMipmaps},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"format",{get:function(){return this._pFormat},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"assetType",{get:function(){return away.library.AssetType.TEXTURE},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"width",{get:function(){return this._pWidth},enumerable:!0,configurable:!0}),Object.defineProperty(TextureProxyBase.prototype,"height",{get:function(){return this._pHeight},enumerable:!0,configurable:!0}),TextureProxyBase.prototype.getTextureForStageGL=function(stageGL){var contextIndex=stageGL._iStageGLIndex,tex=this._textures[contextIndex],context=stageGL.contextGL;return tex&&this._dirty[contextIndex]==context||(this._textures[contextIndex]=tex=this.pCreateTexture(context),this._dirty[contextIndex]=context,this.pUploadContent(tex)),tex},TextureProxyBase.prototype.pUploadContent=function(){throw new away.errors.AbstractMethodError},TextureProxyBase.prototype.pSetSize=function(width,height){(this._pWidth!=width||this._pHeight!=height)&&this.pInvalidateSize(),this._pWidth=width,this._pHeight=height},TextureProxyBase.prototype.invalidateContent=function(){for(var i=0;8>i;++i)this._dirty[i]=null},TextureProxyBase.prototype.pInvalidateSize=function(){for(var tex,i=0;8>i;++i)tex=this._textures[i],tex&&(tex.dispose(),this._textures[i]=null,this._dirty[i]=null)},TextureProxyBase.prototype.pCreateTexture=function(){throw new away.errors.AbstractMethodError},TextureProxyBase.prototype.dispose=function(){for(var i=0;8>i;++i)this._textures[i]&&this._textures[i].dispose()},TextureProxyBase}(away.library.NamedAssetBase);textures.TextureProxyBase=TextureProxyBase}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var Texture2DBase=function(_super){function Texture2DBase(){_super.call(this)}return __extends(Texture2DBase,_super),Texture2DBase.prototype.pCreateTexture=function(context){return context.createTexture(this.width,this.height,away.gl.ContextGLTextureFormat.BGRA,!1)},Texture2DBase}(away.textures.TextureProxyBase);textures.Texture2DBase=Texture2DBase}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var CubeTextureBase=function(_super){function CubeTextureBase(){_super.call(this)}return __extends(CubeTextureBase,_super),Object.defineProperty(CubeTextureBase.prototype,"size",{get:function(){return this.width},enumerable:!0,configurable:!0}),CubeTextureBase.prototype.pCreateTexture=function(context){return context.createCubeTexture(this.width,away.gl.ContextGLTextureFormat.BGRA,!1)},CubeTextureBase}(away.textures.TextureProxyBase);textures.CubeTextureBase=CubeTextureBase}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ContextGLTextureFormat=away.gl.ContextGLTextureFormat,ATFData=(away.utils.ByteArray,function(){function ATFData(data){var sign=data.readUTFBytes(3);if("ATF"!=sign)throw new Error("ATF parsing error, unknown format "+sign);data.position=255==data[6]?12:6;var tdata=data.readUnsignedByte(),_type=tdata>>7,_format=127&tdata;switch(_format){case 0:case 1:this.format=ContextGLTextureFormat.BGRA;break;case 2:case 3:this.format=ContextGLTextureFormat.COMPRESSED;break;case 4:case 5:this.format=ContextGLTextureFormat.COMPRESSED_ALPHA;break;default:throw new Error("Invalid ATF format")}switch(_type){case 0:this.type=ATFData.TYPE_NORMAL;break;case 1:this.type=ATFData.TYPE_CUBE;break;default:throw new Error("Invalid ATF type")}this.width=Math.pow(2,data.readUnsignedByte()),this.height=Math.pow(2,data.readUnsignedByte()),this.numTextures=data.readUnsignedByte(),this.data=data}return ATFData.TYPE_NORMAL=0,ATFData.TYPE_CUBE=1,ATFData}());textures.ATFData=ATFData}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ATFCubeTexture=(away.gl.ContextGL,away.gl.CubeTexture,away.gl.TextureBase,away.utils.ByteArray,function(_super){function ATFCubeTexture(byteArray){if(_super.call(this),this.atfData=new away.textures.ATFData(byteArray),this._atfData.type!=away.textures.ATFData.TYPE_CUBE)throw new Error("ATF isn't cubetexture");this._pFormat=this._atfData.format,this._pHasMipmaps=this._atfData.numTextures>1}return __extends(ATFCubeTexture,_super),Object.defineProperty(ATFCubeTexture.prototype,"atfData",{get:function(){return this._atfData},set:function(value){this._atfData=value,this.invalidateContent(),this.pSetSize(value.width,value.height)},enumerable:!0,configurable:!0}),ATFCubeTexture.prototype.pUploadContent=function(texture){texture.uploadCompressedTextureFromByteArray(this._atfData.data,0,!1)},ATFCubeTexture.prototype.pCreateTexture=function(context){return context.createCubeTexture(this._atfData.width,this._atfData.format,!1)},ATFCubeTexture}(away.textures.CubeTextureBase));textures.ATFCubeTexture=ATFCubeTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ATFTexture=(away.gl.ContextGL,away.gl.Texture,away.gl.TextureBase,away.utils.ByteArray,function(_super){function ATFTexture(byteArray){_super.call(this),this.atfData=new away.textures.ATFData(byteArray),this._pFormat=this._atfData.format,this._pHasMipmaps=this._atfData.numTextures>1}return __extends(ATFTexture,_super),Object.defineProperty(ATFTexture.prototype,"atfData",{get:function(){return this._atfData},set:function(value){this._atfData=value,this.invalidateContent(),this.pSetSize(value.width,value.height)},enumerable:!0,configurable:!0}),ATFTexture.prototype.pUploadContent=function(texture){texture.uploadCompressedTextureFromByteArray(this._atfData.data,0,!1)},ATFTexture.prototype.pCreateTexture=function(context){return context.createTexture(this._pWidth,this._pHeight,this.atfData.format,!1)},ATFTexture}(away.textures.Texture2DBase));textures.ATFTexture=ATFTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ImageTexture=function(_super){function ImageTexture(htmlImageElement,generateMipmaps){"undefined"==typeof generateMipmaps&&(generateMipmaps=!0),_super.call(this),this.htmlImageElement=htmlImageElement,this._generateMipmaps=generateMipmaps}return __extends(ImageTexture,_super),Object.defineProperty(ImageTexture.prototype,"htmlImageElement",{get:function(){return this._htmlImageElement},set:function(value){if(value!=this._htmlImageElement){if(!away.utils.TextureUtils.isHTMLImageElementValid(value))throw new away.errors.Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(value.width,value.height),this._htmlImageElement=value,this._generateMipmaps&&this.getMipMapHolder()}},enumerable:!0,configurable:!0}),ImageTexture.prototype.pUploadContent=function(texture){if(this._generateMipmaps)away.textures.MipmapGenerator.generateHTMLImageElementMipMaps(this._htmlImageElement,texture,this._mipMapHolder,!0);else{var tx=texture;tx.uploadFromHTMLImageElement(this._htmlImageElement,0)}},ImageTexture.prototype.getMipMapHolder=function(){var newW=this._htmlImageElement.width,newH=this._htmlImageElement.height;if(this._mipMapHolder){if(this._mipMapHolder.width==newW&&this._htmlImageElement.height==newH)return;this.freeMipMapHolder()}ImageTexture._mipMaps[newW]||(ImageTexture._mipMaps[newW]=[],ImageTexture._mipMapUses[newW]=[]),ImageTexture._mipMaps[newW][newH]?(ImageTexture._mipMapUses[newW][newH]=ImageTexture._mipMapUses[newW][newH]+1,this._mipMapHolder=ImageTexture._mipMaps[newW][newH]):(this._mipMapHolder=ImageTexture._mipMaps[newW][newH]=new away.base.BitmapData(newW,newH,!0),ImageTexture._mipMapUses[newW][newH]=1)},ImageTexture.prototype.freeMipMapHolder=function(){var holderWidth=this._mipMapHolder.width,holderHeight=this._mipMapHolder.height;0==--ImageTexture._mipMapUses[holderWidth][holderHeight]&&(ImageTexture._mipMaps[holderWidth][holderHeight].dispose(),ImageTexture._mipMaps[holderWidth][holderHeight]=null)},ImageTexture.prototype.dispose=function(){_super.prototype.dispose.call(this),this._mipMapHolder&&this.freeMipMapHolder()},ImageTexture._mipMaps=[],ImageTexture._mipMapUses=[],ImageTexture}(away.textures.Texture2DBase);textures.ImageTexture=ImageTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var BitmapTexture=function(_super){function BitmapTexture(bitmapData,generateMipmaps){"undefined"==typeof generateMipmaps&&(generateMipmaps=!0),_super.call(this),this.bitmapData=bitmapData,this._generateMipmaps=generateMipmaps}return __extends(BitmapTexture,_super),Object.defineProperty(BitmapTexture.prototype,"bitmapData",{get:function(){return this._bitmapData},set:function(value){if(value!=this._bitmapData){if(!away.utils.TextureUtils.isBitmapDataValid(value))throw new Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapData=value,this._generateMipmaps&&this.getMipMapHolder()}},enumerable:!0,configurable:!0}),BitmapTexture.prototype.pUploadContent=function(texture){if(this._generateMipmaps)away.textures.MipmapGenerator.generateMipMaps(this._bitmapData,texture,this._mipMapHolder,!0);else{var tx=texture;tx.uploadFromBitmapData(this._bitmapData,0)}},BitmapTexture.prototype.getMipMapHolder=function(){var newW,newH;if(newW=this._bitmapData.width,newH=this._bitmapData.height,this._mipMapHolder){if(this._mipMapHolder.width==newW&&this._bitmapData.height==newH)return;this.freeMipMapHolder()}BitmapTexture._mipMaps[newW]||(BitmapTexture._mipMaps[newW]=[],BitmapTexture._mipMapUses[newW]=[]),BitmapTexture._mipMaps[newW][newH]?(BitmapTexture._mipMapUses[newW][newH]=BitmapTexture._mipMapUses[newW][newH]+1,this._mipMapHolder=BitmapTexture._mipMaps[newW][newH]):(this._mipMapHolder=BitmapTexture._mipMaps[newW][newH]=new away.base.BitmapData(newW,newH,!0),BitmapTexture._mipMapUses[newW][newH]=1)},BitmapTexture.prototype.freeMipMapHolder=function(){var holderWidth=this._mipMapHolder.width,holderHeight=this._mipMapHolder.height;0==--BitmapTexture._mipMapUses[holderWidth][holderHeight]&&(BitmapTexture._mipMaps[holderWidth][holderHeight].dispose(),BitmapTexture._mipMaps[holderWidth][holderHeight]=null)},BitmapTexture.prototype.dispose=function(){_super.prototype.dispose.call(this),this._mipMapHolder&&this.freeMipMapHolder()},BitmapTexture._mipMaps=[],BitmapTexture._mipMapUses=[],BitmapTexture}(away.textures.Texture2DBase);textures.BitmapTexture=BitmapTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var RenderTexture=function(_super){function RenderTexture(width,height){_super.call(this),this.pSetSize(width,height)}return __extends(RenderTexture,_super),Object.defineProperty(RenderTexture.prototype,"width",{get:function(){return this._pWidth},set:function(value){if(value!=this._pWidth){if(!away.utils.TextureUtils.isDimensionValid(value))throw new Error("Invalid size: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(value,this._pHeight)}},enumerable:!0,configurable:!0}),Object.defineProperty(RenderTexture.prototype,"height",{get:function(){return this._pHeight},set:function(value){if(value!=this._pHeight){if(!away.utils.TextureUtils.isDimensionValid(value))throw new Error("Invalid size: Width and height must be power of 2 and cannot exceed 2048");this.invalidateContent(),this.pSetSize(this._pWidth,value)}},enumerable:!0,configurable:!0}),RenderTexture.prototype.pUploadContent=function(texture){var bmp=new away.base.BitmapData(this.width,this.height,!1,16711680);texture.generateFromRenderBuffer(bmp),bmp.dispose()},RenderTexture.prototype.pCreateTexture=function(context){return context.createTexture(this.width,this.height,away.gl.ContextGLTextureFormat.BGRA,!0)},RenderTexture}(away.textures.Texture2DBase);textures.RenderTexture=RenderTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var ImageCubeTexture=function(_super){function ImageCubeTexture(posX,negX,posY,negY,posZ,negZ){_super.call(this),this._useMipMaps=!1,this._bitmapDatas=new Array(6),this.testSize(this._bitmapDatas[0]=posX),this.testSize(this._bitmapDatas[1]=negX),this.testSize(this._bitmapDatas[2]=posY),this.testSize(this._bitmapDatas[3]=negY),this.testSize(this._bitmapDatas[4]=posZ),this.testSize(this._bitmapDatas[5]=negZ),this.pSetSize(posX.width,posX.height)}return __extends(ImageCubeTexture,_super),Object.defineProperty(ImageCubeTexture.prototype,"positiveX",{get:function(){return this._bitmapDatas[0]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[0]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"negativeX",{get:function(){return this._bitmapDatas[1]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[1]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"positiveY",{get:function(){return this._bitmapDatas[2]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[2]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"negativeY",{get:function(){return this._bitmapDatas[3]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[3]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"positiveZ",{get:function(){return this._bitmapDatas[4]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[4]=value},enumerable:!0,configurable:!0}),Object.defineProperty(ImageCubeTexture.prototype,"negativeZ",{get:function(){return this._bitmapDatas[5]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[5]=value},enumerable:!0,configurable:!0}),ImageCubeTexture.prototype.testSize=function(value){if(value.width!=value.height)throw new Error("BitmapData should have equal width and height!");if(!away.utils.TextureUtils.isHTMLImageElementValid(value))throw new Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048")},ImageCubeTexture.prototype.pUploadContent=function(texture){for(var i=0;6>i;++i)if(this._useMipMaps);else{var tx=texture;tx.uploadFromHTMLImageElement(this._bitmapDatas[i],i,0)}},ImageCubeTexture}(away.textures.CubeTextureBase);textures.ImageCubeTexture=ImageCubeTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var BitmapCubeTexture=function(_super){function BitmapCubeTexture(posX,negX,posY,negY,posZ,negZ){_super.call(this),this._useMipMaps=!1,this._bitmapDatas=new Array(6),this.testSize(this._bitmapDatas[0]=posX),this.testSize(this._bitmapDatas[1]=negX),this.testSize(this._bitmapDatas[2]=posY),this.testSize(this._bitmapDatas[3]=negY),this.testSize(this._bitmapDatas[4]=posZ),this.testSize(this._bitmapDatas[5]=negZ),this.pSetSize(posX.width,posX.height)}return __extends(BitmapCubeTexture,_super),Object.defineProperty(BitmapCubeTexture.prototype,"positiveX",{get:function(){return this._bitmapDatas[0]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[0]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"negativeX",{get:function(){return this._bitmapDatas[1]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[1]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"positiveY",{get:function(){return this._bitmapDatas[2]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[2]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"negativeY",{get:function(){return this._bitmapDatas[3]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[3]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"positiveZ",{get:function(){return this._bitmapDatas[4]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[4]=value},enumerable:!0,configurable:!0}),Object.defineProperty(BitmapCubeTexture.prototype,"negativeZ",{get:function(){return this._bitmapDatas[5]},set:function(value){this.testSize(value),this.invalidateContent(),this.pSetSize(value.width,value.height),this._bitmapDatas[5]=value},enumerable:!0,configurable:!0}),BitmapCubeTexture.prototype.testSize=function(value){if(value.width!=value.height)throw new Error("BitmapData should have equal width and height!");if(!away.utils.TextureUtils.isBitmapDataValid(value))throw new Error("Invalid bitmapData: Width and height must be power of 2 and cannot exceed 2048")},BitmapCubeTexture.prototype.pUploadContent=function(texture){for(var i=0;6>i;++i)if(this._useMipMaps);else{var tx=texture;tx.uploadFromBitmapData(this._bitmapDatas[i],i,0)}},BitmapCubeTexture}(away.textures.CubeTextureBase);textures.BitmapCubeTexture=BitmapCubeTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var MipmapGenerator=function(){function MipmapGenerator(){}return MipmapGenerator.generateHTMLImageElementMipMaps=function(source,target,mipmap,alpha,side){"undefined"==typeof mipmap&&(mipmap=null),"undefined"==typeof alpha&&(alpha=!1),"undefined"==typeof side&&(side=-1),MipmapGenerator._rect.width=source.width,MipmapGenerator._rect.height=source.height,MipmapGenerator._source=new away.base.BitmapData(source.width,source.height,alpha),MipmapGenerator._source.drawImage(source,MipmapGenerator._rect,MipmapGenerator._rect),MipmapGenerator.generateMipMaps(MipmapGenerator._source,target,mipmap),MipmapGenerator._source.dispose(),MipmapGenerator._source=null},MipmapGenerator.generateMipMaps=function(source,target,mipmap,alpha,side){"undefined"==typeof mipmap&&(mipmap=null),"undefined"==typeof alpha&&(alpha=!1),"undefined"==typeof side&&(side=-1);var w=source.width,h=source.height,regen=null!=mipmap,i=0;for(mipmap||(mipmap=new away.base.BitmapData(w,h,alpha)),MipmapGenerator._rect.width=w,MipmapGenerator._rect.height=h;w>=1||h>=1;)alpha&&mipmap.fillRect(MipmapGenerator._rect,0),MipmapGenerator._matrix.a=MipmapGenerator._rect.width/source.width,MipmapGenerator._matrix.d=MipmapGenerator._rect.height/source.height,mipmap.width=MipmapGenerator._rect.width,mipmap.height=MipmapGenerator._rect.height,mipmap.copyPixels(source,source.rect,MipmapGenerator._rect),target instanceof away.gl.Texture?target.uploadFromBitmapData(mipmap,i++):target.uploadFromBitmapData(mipmap,side,i++),w>>=1,h>>=1,MipmapGenerator._rect.width=w>1?w:1,MipmapGenerator._rect.height=h>1?h:1;regen||mipmap.dispose()},MipmapGenerator._matrix=new away.geom.Matrix,MipmapGenerator._rect=new away.geom.Rectangle,MipmapGenerator}();textures.MipmapGenerator=MipmapGenerator}(away.textures||(away.textures={}));away.textures}(away||(away={}));var away;!function(away){!function(textures){var BitmapData=away.base.BitmapData,BitmapDataChannel=away.base.BitmapDataChannel,Point=(away.gl.TextureBase,away.geom.Point),SpecularBitmapTexture=(away.geom.Rectangle,function(_super){function SpecularBitmapTexture(specularMap,glossMap){"undefined"==typeof specularMap&&(specularMap=null),"undefined"==typeof glossMap&&(glossMap=null);
+var bmd;bmd=specularMap?specularMap:glossMap,bmd=bmd?new BitmapData(bmd.width,bmd.height,!1,16777215):new BitmapData(1,1,!1,16777215),_super.call(this,bmd),this.specularMap=specularMap,this.glossMap=glossMap}return __extends(SpecularBitmapTexture,_super),Object.defineProperty(SpecularBitmapTexture.prototype,"specularMap",{get:function(){return this._specularMap},set:function(value){this._specularMap=value,this.invalidateContent(),this.testSize()},enumerable:!0,configurable:!0}),Object.defineProperty(SpecularBitmapTexture.prototype,"glossMap",{get:function(){return this._glossMap},set:function(value){this._glossMap=value,this.invalidateContent(),this.testSize()},enumerable:!0,configurable:!0}),SpecularBitmapTexture.prototype.testSize=function(){var w,h;if(this._specularMap?(w=this._specularMap.width,h=this._specularMap.height):this._glossMap?(w=this._glossMap.width,h=this._glossMap.height):(w=1,h=1),w!=this.bitmapData.width&&h!=this.bitmapData.height){var oldBitmap=this.bitmapData;this.bitmapData=new BitmapData(this._specularMap.width,this._specularMap.height,!1,16777215),oldBitmap.dispose()}},SpecularBitmapTexture.prototype.pUploadContent=function(texture){var rect=this._specularMap.rect,origin=new Point;this.bitmapData.fillRect(rect,16777215),this._glossMap&&this.bitmapData.copyChannel(this._glossMap,rect,origin,BitmapDataChannel.GREEN,BitmapDataChannel.GREEN),this._specularMap&&this.bitmapData.copyChannel(this._specularMap,rect,origin,BitmapDataChannel.RED,BitmapDataChannel.RED),_super.prototype.pUploadContent.call(this,texture)},SpecularBitmapTexture.prototype.dispose=function(){this.bitmapData.dispose(),this.bitmapData=null},SpecularBitmapTexture}(away.textures.BitmapTexture));textures.SpecularBitmapTexture=SpecularBitmapTexture}(away.textures||(away.textures={}));away.textures}(away||(away={}));var aglsl;!function(aglsl){var Sampler=function(){function Sampler(){this.lodbias=0,this.dim=0,this.readmode=0,this.special=0,this.wrap=0,this.mipmap=0,this.filter=0}return Sampler}();aglsl.Sampler=Sampler}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Token=function(){function Token(){this.dest=new aglsl.Destination,this.opcode=0,this.a=new aglsl.Destination,this.b=new aglsl.Destination}return Token}();aglsl.Token=Token}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Header=function(){function Header(){this.progid=0,this.version=0,this.type=""}return Header}();aglsl.Header=Header}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var OpLUT=function(){function OpLUT(s,flags,dest,a,b,matrixwidth,matrixheight,ndwm,scaler,dm,lod){this.s=s,this.flags=flags,this.dest=dest,this.a=a,this.b=b,this.matrixwidth=matrixwidth,this.matrixheight=matrixheight,this.ndwm=ndwm,this.scalar=scaler,this.dm=dm,this.lod=lod}return OpLUT}();aglsl.OpLUT=OpLUT}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Description=function(){function Description(){this.regread=[[],[],[],[],[],[],[]],this.regwrite=[[],[],[],[],[],[],[]],this.hasindirect=!1,this.writedepth=!1,this.hasmatrix=!1,this.samplers=[],this.tokens=[],this.header=new aglsl.Header}return Description}();aglsl.Description=Description}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Destination=function(){function Destination(){this.mask=0,this.regnum=0,this.regtype=0,this.dim=0}return Destination}();aglsl.Destination=Destination}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var ContextGL=function(){function ContextGL(){this.enableErrorChecking=!1,this.resources=[],this.driverInfo="Call getter function instead"}return ContextGL.maxvertexconstants=128,ContextGL.maxfragconstants=28,ContextGL.maxtemp=8,ContextGL.maxstreams=8,ContextGL.maxtextures=8,ContextGL.defaultsampler=new aglsl.Sampler,ContextGL}();aglsl.ContextGL=ContextGL}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var Mapping=function(){function Mapping(){}return Mapping.agal2glsllut=[new aglsl.OpLUT("%dest = %cast(%a);\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a + %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a - %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a * %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a / %b);\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(1.0) / %a;\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(min(%a,%b));\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(max(%a,%b));\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(fract(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(sqrt(abs(%a)));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(inversesqrt(abs(%a)));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(pow(abs(%a),%b));\n",0,!0,!0,!0,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(log2(abs(%a)));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(exp2(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(normalize(vec3( %a ) ));\n",0,!0,!0,!1,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(sin(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(cos(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(cross(vec3(%a),vec3(%b)));\n",0,!0,!0,!0,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec3(%a),vec3(%b)));\n",0,!0,!0,!0,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec4(%a),vec4(%b)));\n",0,!0,!0,!0,null,null,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(abs(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(%a * -1.0);\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(clamp(%a,0.0,1.0));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec3(%a),vec3(%b)));\n",null,!0,!0,!0,3,3,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec4(%a),vec4(%b)));\n",null,!0,!0,!0,4,4,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dot(vec4(%a),vec4(%b)));\n",null,!0,!0,!0,4,3,!0,null,null,null),new aglsl.OpLUT("%dest = %cast(dFdx(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("%dest = %cast(dFdx(%a));\n",0,!0,!0,!1,null,null,null,null,null,null),new aglsl.OpLUT("if (float(%a)==float(%b)) {;\n",0,!1,!0,!0,null,null,null,!0,null,null),new aglsl.OpLUT("if (float(%a)!=float(%b)) {;\n",0,!1,!0,!0,null,null,null,!0,null,null),new aglsl.OpLUT("if (float(%a)>=float(%b)) {;\n",0,!1,!0,!0,null,null,null,!0,null,null),new aglsl.OpLUT("if (float(%a)0){var optsi=line.search(/<.*>/g),opts=null;-1!=optsi&&(opts=line.slice(optsi).match(/([\w\.\-\+]+)/gi),line=line.slice(0,optsi));var tokens=line.match(/([\w\.\+\[\]]+)/gi);if(!tokens||tokens.length<1)return line.length>=3&&console.log("Warning: bad line "+linenr+": "+line),void 0;switch(tokens[0]){case"part":this.addHeader(tokens[1],Number(tokens[2]));break;case"endpart":if(!this.cur)throw"Unexpected endpart";return this.cur.data.position=0,this.cur=null,void 0;default:if(!this.cur)return console.log("Warning: bad line "+linenr+": "+line+" (Outside of any part definition)"),void 0;if("comment"==this.cur.name)return;var op=aglsl.assembler.OpcodeMap.map[tokens[0]];if(!op)throw"Bad opcode "+tokens[0]+" "+linenr+": "+line;this.emitOpcode(this.cur,op.opcode);var ti=1;if(op.dest&&"none"!=op.dest){if(!this.emitDest(this.cur,tokens[ti++],op.dest))throw"Bad destination register "+tokens[ti-1]+" "+linenr+": "+line}else this.emitZeroDword(this.cur);if(op.a&&"none"!=op.a.format){if(!this.emitSource(this.cur,tokens[ti++],op.a))throw"Bad source register "+tokens[ti-1]+" "+linenr+": "+line}else this.emitZeroQword(this.cur);if(op.b&&"none"!=op.b.format){if("sampler"==op.b.format){if(!this.emitSampler(this.cur,tokens[ti++],op.b,opts))throw"Bad sampler register "+tokens[ti-1]+" "+linenr+": "+line}else if(!this.emitSource(this.cur,tokens[ti++],op.b))throw"Bad source register "+tokens[ti-1]+" "+linenr+": "+line}else this.emitZeroQword(this.cur)}}},AGALMiniAssembler.prototype.emitHeader=function(pr){switch(pr.data.writeUnsignedByte(160),pr.data.writeUnsignedInt(pr.version),pr.version>=16&&pr.data.writeUnsignedByte(0),pr.data.writeUnsignedByte(161),pr.name){case"fragment":pr.data.writeUnsignedByte(1);break;case"vertex":pr.data.writeUnsignedByte(0);break;case"cpu":pr.data.writeUnsignedByte(2);break;default:pr.data.writeUnsignedByte(255)}},AGALMiniAssembler.prototype.emitOpcode=function(pr,opcode){pr.data.writeUnsignedInt(opcode)},AGALMiniAssembler.prototype.emitZeroDword=function(pr){pr.data.writeUnsignedInt(0)},AGALMiniAssembler.prototype.emitZeroQword=function(pr){pr.data.writeUnsignedInt(0),pr.data.writeUnsignedInt(0)},AGALMiniAssembler.prototype.emitDest=function(pr,token){var reg=token.match(/([fov]?[tpocidavs])(\d*)(\.[xyzw]{1,4})?/i);if(!aglsl.assembler.RegMap.map[reg[1]])return!1;var em={num:reg[2]?reg[2]:0,code:aglsl.assembler.RegMap.map[reg[1]].code,mask:this.stringToMask(reg[3])};return pr.data.writeUnsignedShort(em.num),pr.data.writeUnsignedByte(em.mask),pr.data.writeUnsignedByte(em.code),!0},AGALMiniAssembler.prototype.stringToMask=function(s){if(!s)return 15;var r=0;return-1!=s.indexOf("x")&&(r|=1),-1!=s.indexOf("y")&&(r|=2),-1!=s.indexOf("z")&&(r|=4),-1!=s.indexOf("w")&&(r|=8),r},AGALMiniAssembler.prototype.stringToSwizzle=function(s){if(!s)return 228;var chartoindex={x:0,y:1,z:2,w:3},sw=0;if("."!=s.charAt(0))throw"Missing . for swizzle";return s.length>1&&(sw|=chartoindex[s.charAt(1)]),sw|=s.length>2?chartoindex[s.charAt(2)]<<2:(3&sw)<<2,sw|=s.length>3?chartoindex[s.charAt(3)]<<4:(12&sw)<<2,sw|=s.length>4?chartoindex[s.charAt(4)]<<6:(48&sw)<<2},AGALMiniAssembler.prototype.emitSampler=function(pr,token,opsrc,opts){var reg=token.match(/fs(\d*)/i);if(!reg||!reg[1])return!1;pr.data.writeUnsignedShort(parseInt(reg[1])),pr.data.writeUnsignedByte(0),pr.data.writeUnsignedByte(0);for(var samplerbits=5,sampleroptset=0,i=0;i>o.shift&o.mask)&&console.log("Warning, duplicate sampler option"),sampleroptset|=o.mask<=16&&(bytes.readUnsignedByte(),header.version>>=1),161!=bytes.readUnsignedByte())throw"Bad AGAL: Missing 0xa1 magic byte.";switch(header.progid=bytes.readUnsignedByte(),header.progid){case 1:header.type="fragment";break;case 0:header.type="vertex";break;case 2:header.type="cpu";break;default:header.type=""}for(var desc=new aglsl.Description,tokens=[];bytes.position>4,s.readmode&=15,s.special=bytes.readUnsignedByte(),s.wrap=s.special>>4,s.special&=15,s.mipmap=bytes.readUnsignedByte(),s.filter=s.mipmap>>4,s.mipmap&=15,desc.samplers[s.regnum]=s):(s.indexregtype=bytes.readUnsignedByte(),s.indexselect=bytes.readUnsignedByte(),s.indirectflag=bytes.readUnsignedByte()),s.indirectflag&&(desc.hasindirect=!0),!s.indirectflag&&mh)for(var mhi=0;mh>mhi;mhi++)desc.regread[s.regtype][s.regnum+mhi]=desc.regread[s.regtype][s.regnum]},AGALTokenizer}();aglsl.AGALTokenizer=AGALTokenizer}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var AGLSLParser=function(){function AGLSLParser(){}return AGLSLParser.prototype.parse=function(desc){var header="",body="";header+="precision highp float;\n";var tag=desc.header.type[0];if("vertex"==desc.header.type&&(header+="uniform float yflip;\n"),desc.hasindirect)header+="uniform vec4 "+tag+"carrr["+aglsl.ContextGL.maxvertexconstants+"];\n";else for(var i=0;isl;sl++){var line=" "+lutentry.s;if(desc.tokens[i].dest){if(lutentry.matrixheight){if(1!=(desc.tokens[i].dest.mask>>sl&1))continue;var destregstring=this.regtostring(desc.tokens[i].dest.regtype,desc.tokens[i].dest.regnum,desc,tag),destcaststring="float",destmaskstring=["x","y","z","w"][sl];destregstring+="."+destmaskstring}else{var destcaststring,destmaskstring,destregstring=this.regtostring(desc.tokens[i].dest.regtype,desc.tokens[i].dest.regnum,desc,tag);if(15!=desc.tokens[i].dest.mask){var ndest=0;switch(destmaskstring="",1&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="x"),2&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="y"),4&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="z"),8&desc.tokens[i].dest.mask&&(ndest++,destmaskstring+="w"),destregstring+="."+destmaskstring,ndest){case 1:destcaststring="float";break;case 2:destcaststring="vec2";break;case 3:destcaststring="vec3";break;default:throw"Unexpected destination mask"}}else destcaststring="vec4",destmaskstring="xyzw"}line=line.replace("%dest",destregstring),line=line.replace("%cast",destcaststring),line=line.replace("%dm",destmaskstring)}var dwm=15;if(!lutentry.ndwm&&lutentry.dest&&desc.tokens[i].dest&&(dwm=desc.tokens[i].dest.mask),desc.tokens[i].a&&(line=line.replace("%a",this.sourcetostring(desc.tokens[i].a,0,dwm,lutentry.scalar,desc,tag))),desc.tokens[i].b&&(line=line.replace("%b",this.sourcetostring(desc.tokens[i].b,sl,dwm,lutentry.scalar,desc,tag)),5==desc.tokens[i].b.regtype)){var texdim=["2D","Cube","3D"][desc.tokens[i].b.dim],texsize=["vec2","vec3","vec3"][desc.tokens[i].b.dim];line=line.replace("%texdim",texdim),line=line.replace("%texsize",texsize);var texlod="";line=line.replace("%lod",texlod)}body+=line}}return"vertex"==desc.header.type&&(body+=" gl_Position = vec4(outpos.x, outpos.y, outpos.z*2.0 - outpos.w, outpos.w);\n"),desc.writedepth&&(body+=" gl_FragDepth = clamp(tmp_FragDepth,0.0,1.0);\n"),body+="}\n",header+body},AGLSLParser.prototype.regtostring=function(regtype,regnum,desc,tag){switch(regtype){case 0:return"va"+regnum;case 1:return desc.hasindirect&&"vertex"==desc.header.type?"vcarrr["+regnum+"]":tag+"c"+regnum;case 2:return tag+"t"+regnum;case 3:return"vertex"==desc.header.type?"outpos":"gl_FragColor";case 4:return"vi"+regnum;case 5:return"fs"+regnum;case 6:return"tmp_FragDepth";default:throw"Unknown register type"}},AGLSLParser.prototype.sourcetostring=function(s,subline,dwm,isscalar,desc,tag){var r,swiz=["x","y","z","w"];if(s.indirectflag){r="vcarrr[int("+this.regtostring(s.indexregtype,s.regnum,desc,tag)+"."+swiz[s.indexselect]+")";var realofs=subline+s.indexoffset;0>realofs&&(r+=realofs.toString()),realofs>0&&(r+="+"+realofs.toString()),r+="]"}else r=this.regtostring(s.regtype,s.regnum+subline,desc,tag);return 5==s.regtype?r:isscalar?r+"."+swiz[s.swizzle>>0&3]:228==s.swizzle&&15==dwm?r:(r+=".",1&dwm&&(r+=swiz[s.swizzle>>0&3]),2&dwm&&(r+=swiz[s.swizzle>>2&3]),4&dwm&&(r+=swiz[s.swizzle>>4&3]),8&dwm&&(r+=swiz[s.swizzle>>6&3]),r)},AGLSLParser}();aglsl.AGLSLParser=AGLSLParser}(aglsl||(aglsl={}));var aglsl;!function(aglsl){var AGLSLCompiler=function(){function AGLSLCompiler(){}return AGLSLCompiler.prototype.compile=function(programType,source){var data,concatSource,agalMiniAssembler=new aglsl.assembler.AGALMiniAssembler,tokenizer=new aglsl.AGALTokenizer;switch(programType){case"vertex":concatSource="part vertex 1\n"+source+"endpart",agalMiniAssembler.assemble(concatSource),data=agalMiniAssembler.r.vertex.data;break;case"fragment":concatSource="part fragment 1\n"+source+"endpart",agalMiniAssembler.assemble(concatSource),data=agalMiniAssembler.r.fragment.data;break;default:throw"Unknown ContextGLProgramType"}var description=tokenizer.decribeAGALByteArray(data),parser=new aglsl.AGLSLParser;return this.glsl=parser.parse(description),this.glsl},AGLSLCompiler}();aglsl.AGLSLCompiler=AGLSLCompiler}(aglsl||(aglsl={})),away.Debug.THROW_ERRORS=!1,away.Debug.LOG_PI_ERRORS=!1;var away;!function(away){var AwayJS=function(_super){function AwayJS(){_super.call(this)}return __extends(AwayJS,_super),AwayJS}(away.events.EventDispatcher);away.AwayJS=AwayJS}(away||(away={}));
\ No newline at end of file
diff --git a/src/away/_definitions.ts b/src/away/_definitions.ts
index 404b0e36..d797c40e 100644
--- a/src/away/_definitions.ts
+++ b/src/away/_definitions.ts
@@ -28,6 +28,7 @@
///
///
///
+///
///
///
///
@@ -40,6 +41,7 @@
///
///
///
+///
///
///
@@ -77,6 +79,32 @@
///
///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+///
+
///
///
///
@@ -84,6 +112,7 @@
///
///
///
+///
///
///
///
@@ -91,13 +120,21 @@
///
///
///
+///
+///
+///
+///
///
///
+///
+///
///
///
///
///
///
+///
+///
///
///
@@ -106,6 +143,7 @@
///
///
///
+///
///
///
@@ -117,6 +155,7 @@
///
///
///
+///
///
///
@@ -130,28 +169,6 @@
///
///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-///
-
///
///
///
@@ -196,7 +213,10 @@
///
///
///
+///
+///
///
+///
///
///
@@ -231,6 +251,10 @@
///
///
+///
+
+///
+///
///
///
diff --git a/src/away/animators/IAnimationSet.ts b/src/away/animators/IAnimationSet.ts
new file mode 100644
index 00000000..454d8169
--- /dev/null
+++ b/src/away/animators/IAnimationSet.ts
@@ -0,0 +1,50 @@
+///
+
+module away.animators
+{
+
+ /**
+ * Provides an interface for data set classes that hold animation data for use in animator classes.
+ *
+ * @see away3d.animators.AnimatorBase
+ */
+ export interface IAnimationSet
+ {
+ /**
+ * Check to determine whether a state is registered in the animation set under the given name.
+ *
+ * @param stateName The name of the animation state object to be checked.
+ */
+ hasAnimation(name:string):boolean;
+
+ /**
+ * Retrieves the animation state object registered in the animation data set under the given name.
+ *
+ * @param stateName The name of the animation state object to be retrieved.
+ */
+ getAnimation(name:string):AnimationNodeBase;
+
+ /**
+ * Indicates whether the properties of the animation data contained within the set combined with
+ * the vertex registers aslready in use on shading materials allows the animation data to utilise
+ * GPU calls.
+ */
+ usesCPU:boolean; // GET
+
+ /**
+ * Called by the material to reset the GPU indicator before testing whether register space in the shader
+ * is available for running GPU-based animation code.
+ *
+ * @private
+ */
+ resetGPUCompatibility();
+
+ /**
+ * Called by the animator to void the GPU indicator when register space in the shader
+ * is no longer available for running GPU-based animation code.
+ *
+ * @private
+ */
+ cancelGPUCompatibility();
+ }
+}
diff --git a/src/away/animators/IAnimator.ts b/src/away/animators/IAnimator.ts
index f7f7d57b..24721b97 100644
--- a/src/away/animators/IAnimator.ts
+++ b/src/away/animators/IAnimator.ts
@@ -7,8 +7,13 @@ module away.animators
*
* @see away.animators.IAnimationSet
*/
- export interface IAnimator
+ export interface IAnimator extends away.library.IAsset
{
+ /**
+ *
+ */
+ animationSet:away.animators.IAnimationSet;
+
/**
*
*/
@@ -32,5 +37,12 @@ module away.animators
* @private
*/
removeOwner(mesh:away.entities.IEntity);
+
+ /**
+ * //TODO
+ *
+ * @param sourceSubGeometry
+ */
+ getRenderableSubGeometry(renderable:away.pool.IRenderable, sourceSubGeometry:away.base.SubGeometryBase):away.base.SubGeometryBase;
}
}
diff --git a/src/away/animators/nodes/AnimationNodeBase.ts b/src/away/animators/nodes/AnimationNodeBase.ts
new file mode 100644
index 00000000..c2ff6577
--- /dev/null
+++ b/src/away/animators/nodes/AnimationNodeBase.ts
@@ -0,0 +1,41 @@
+///
+
+module away.animators
+{
+
+ /**
+ * Provides an abstract base class for nodes in an animation blend tree.
+ */
+ export class AnimationNodeBase extends away.library.NamedAssetBase implements away.library.IAsset
+ {
+ public _pStateClass:any;
+
+ public get stateClass():any
+ {
+ return this._pStateClass;
+ }
+
+ /**
+ * Creates a new AnimationNodeBase object.
+ */
+ constructor()
+ {
+ super();
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public dispose()
+ {
+ }
+
+ /**
+ * @inheritDoc
+ */
+ public get assetType():string
+ {
+ return away.library.AssetType.ANIMATION_NODE;
+ }
+ }
+}
diff --git a/src/away/bounds/BoundingVolumeBase.ts b/src/away/bounds/BoundingVolumeBase.ts
index 544d3f96..cc0d8d0f 100644
--- a/src/away/bounds/BoundingVolumeBase.ts
+++ b/src/away/bounds/BoundingVolumeBase.ts
@@ -2,19 +2,27 @@
module away.bounds
{
+ import Geometry = away.base.Geometry;
+ import SubGeometryBase = away.base.SubGeometryBase;
+ import IEntity = away.entities.IEntity;
+ import Box = away.geom.Box;
+ import Matrix3D = away.geom.Matrix3D;
+ import Plane3D = away.geom.Plane3D;
+ import Vector3D = away.geom.Vector3D;
+
export class BoundingVolumeBase
{
- public _aabb:away.geom.Box;
+ public _aabb:Box;
public _pAabbPoints:Array = new Array();
public _pAabbPointsDirty:boolean = true;
- public _pBoundingEntity:away.entities.IEntity;
+ public _pBoundingEntity:IEntity;
constructor()
{
- this._aabb = new away.geom.Box();
+ this._aabb = new Box();
}
- public get aabb():away.geom.Box
+ public get aabb():Box
{
return this._aabb;
}
@@ -27,7 +35,7 @@ module away.bounds
return this._pAabbPoints;
}
- public get boundingEntity():away.entities.IEntity
+ public get boundingEntity():IEntity
{
if (!this._pBoundingEntity) {
this._pBoundingEntity = this.pCreateBoundingEntity();
@@ -91,7 +99,64 @@ module away.bounds
this.fromExtremes(minX, minY, minZ, maxX, maxY, maxZ);
}
- public fromSphere(center:away.geom.Vector3D, radius:number)
+ /**
+ * Updates the bounds to fit a Geometry object.
+ *
+ * @param geometry The Geometry object to be bounded.
+ */
+ public fromGeometry(geometry:Geometry):void
+ {
+ var i:number, j:number, p:number;
+ var subGeoms:Array = geometry.subGeometries;
+ var subGeom:SubGeometryBase;
+ var boundingPositions:Array;
+ var numSubGeoms:number = subGeoms.length;
+ var minX:number, minY:number, minZ:number;
+ var maxX:number, maxY:number, maxZ:number;
+
+ if (numSubGeoms > 0) {
+ i = 0;
+ subGeom = subGeoms[0];
+ boundingPositions = subGeom.getBoundingPositions();
+ minX = maxX = boundingPositions[i];
+ minY = maxY = boundingPositions[i + 1];
+ minZ = maxZ = boundingPositions[i + 2];
+
+ j = numSubGeoms;
+ while (j--) {
+ subGeom = subGeoms[j];
+ boundingPositions = subGeom.getBoundingPositions();
+ i = boundingPositions.length;
+ while (i--) {
+ p = boundingPositions[i];
+ if (p < minX)
+ minX = p;
+ else if (p > maxX)
+ maxX = p;
+
+ p = boundingPositions[i + 1];
+
+ if (p < minY)
+ minY = p;
+ else if (p > maxY)
+ maxY = p;
+
+ p = boundingPositions[i + 2];
+
+ if (p < minZ)
+ minZ = p;
+ else if (p > maxZ)
+ maxZ = p;
+ }
+ }
+
+ this.fromExtremes(minX, minY, minZ, maxX, maxY, maxZ);
+ } else {
+ this.fromExtremes(0, 0, 0, 0, 0, 0);
+ }
+ }
+
+ public fromSphere(center:Vector3D, radius:number)
{
this.fromExtremes(center.x - radius, center.y - radius, center.z - radius, center.x + radius, center.y + radius, center.z + radius);
}
@@ -110,27 +175,27 @@ module away.bounds
this.pUpdateBoundingEntity();
}
- public isInFrustum(planes:Array, numPlanes:number):boolean
+ public isInFrustum(planes:Array, numPlanes:number):boolean
{
throw new away.errors.AbstractMethodError();
}
- public overlaps(bounds:away.bounds.BoundingVolumeBase):boolean
+ public overlaps(bounds:BoundingVolumeBase):boolean
{
return this._aabb.intersects(bounds.aabb);
}
- public clone():away.bounds.BoundingVolumeBase
+ public clone():BoundingVolumeBase
{
throw new away.errors.AbstractMethodError();
}
- public rayIntersection(position:away.geom.Vector3D, direction:away.geom.Vector3D, targetNormal:away.geom.Vector3D):number
+ public rayIntersection(position:Vector3D, direction:Vector3D, targetNormal:Vector3D):number
{
return -1;
}
- public containsPoint(position:away.geom.Vector3D):boolean
+ public containsPoint(position:Vector3D):boolean
{
return false;
}
@@ -176,17 +241,17 @@ module away.bounds
throw new away.errors.AbstractMethodError();
}
- public pCreateBoundingEntity():away.entities.IEntity
+ public pCreateBoundingEntity():IEntity
{
throw new away.errors.AbstractMethodError();
}
- public classifyToPlane(plane:away.geom.Plane3D):number
+ public classifyToPlane(plane:Plane3D):number
{
throw new away.errors.AbstractMethodError();
}
- public transformFrom(bounds:away.bounds.BoundingVolumeBase, matrix:away.geom.Matrix3D)
+ public transformFrom(bounds:BoundingVolumeBase, matrix:Matrix3D)
{
throw new away.errors.AbstractMethodError();
}
diff --git a/src/away/containers/Scene.ts b/src/away/containers/Scene.ts
index e625c079..178a93cb 100644
--- a/src/away/containers/Scene.ts
+++ b/src/away/containers/Scene.ts
@@ -86,7 +86,7 @@ module away.containers
this.iRegisterPartition(displayObject.partition);
if (displayObject.isEntity)
- displayObject._iAssignedPartition.iMarkForUpdate( displayObject);
+ displayObject._iAssignedPartition.iMarkForUpdate(displayObject);
}
/**
@@ -110,7 +110,7 @@ module away.containers
this.iUnregisterPartition(displayObject.partition);
if (displayObject.isEntity)
- displayObject._iAssignedPartition.iRemoveEntity( displayObject);
+ displayObject._iAssignedPartition.iRemoveEntity(displayObject);
}
/**
diff --git a/src/away/containers/View.ts b/src/away/containers/View.ts
index e0484a5b..4fad597d 100644
--- a/src/away/containers/View.ts
+++ b/src/away/containers/View.ts
@@ -536,8 +536,8 @@ module away.containers
public project(point3d:Vector3D):Vector3D
{
var v:away.geom.Vector3D = this._pCamera.project(point3d);
- v.x = (v.x*this._pRenderer.viewPort.width + this._width*this._pCamera.projection.originX)/2.0;
- v.y = (v.y*this._pRenderer.viewPort.height + this._height*this._pCamera.projection.originY)/2.0;
+ v.x = v.x*this._pRenderer.viewPort.width/2 + this._width*this._pCamera.projection.originX;
+ v.y = v.y*this._pRenderer.viewPort.height/2 + this._height*this._pCamera.projection.originY;
return v;
}
diff --git a/src/away/controllers/ControllerBase.ts b/src/away/controllers/ControllerBase.ts
index 308bc292..23f11c0a 100644
--- a/src/away/controllers/ControllerBase.ts
+++ b/src/away/controllers/ControllerBase.ts
@@ -6,9 +6,9 @@ module away.controllers
{
public _pAutoUpdate:boolean = true;
- public _pTargetObject:away.entities.IEntity;
+ public _pTargetObject:away.base.DisplayObject;
- constructor(targetObject:away.entities.IEntity = null)
+ constructor(targetObject:away.base.DisplayObject = null)
{
this.targetObject = targetObject;
}
@@ -20,12 +20,12 @@ module away.controllers
}
}
- public get targetObject():away.entities.IEntity
+ public get targetObject():away.base.DisplayObject
{
return this._pTargetObject;
}
- public set targetObject(val:away.entities.IEntity)
+ public set targetObject(val:away.base.DisplayObject)
{
if (this._pTargetObject == val) {
return;
diff --git a/src/away/controllers/FirstPersonController.ts b/src/away/controllers/FirstPersonController.ts
index 0180d9e6..261e0817 100644
--- a/src/away/controllers/FirstPersonController.ts
+++ b/src/away/controllers/FirstPersonController.ts
@@ -149,7 +149,7 @@ module away.controllers
/**
* Creates a new HoverController object.
*/
- constructor(targetObject:away.entities.IEntity = null, panAngle:number = 0, tiltAngle:number = 90, minTiltAngle:number = -90, maxTiltAngle:number = 90, steps:number = 8, wrapPanAngle:boolean = false)
+ constructor(targetObject:away.base.DisplayObject = null, panAngle:number = 0, tiltAngle:number = 90, minTiltAngle:number = -90, maxTiltAngle:number = 90, steps:number = 8, wrapPanAngle:boolean = false)
{
super(targetObject);
diff --git a/src/away/controllers/FollowController.ts b/src/away/controllers/FollowController.ts
index 1442a261..277327b9 100644
--- a/src/away/controllers/FollowController.ts
+++ b/src/away/controllers/FollowController.ts
@@ -11,7 +11,7 @@ module away.controllers
*/
export class FollowController extends away.controllers.HoverController
{
- constructor(targetObject:away.entities.IEntity = null, lookAtObject:away.base.DisplayObject = null, tiltAngle:number = 45, distance:number = 700)
+ constructor(targetObject:away.base.DisplayObject = null, lookAtObject:away.base.DisplayObject = null, tiltAngle:number = 45, distance:number = 700)
{
super(targetObject, lookAtObject, 0, tiltAngle, distance);
}
diff --git a/src/away/controllers/HoverController.ts b/src/away/controllers/HoverController.ts
index 1a2646a8..537c0999 100644
--- a/src/away/controllers/HoverController.ts
+++ b/src/away/controllers/HoverController.ts
@@ -2,6 +2,8 @@
module away.controllers
{
+ import MathConsts = away.geom.MathConsts;
+ import Vector3D = away.geom.Vector3D;
/**
* Extended camera used to hover round a specified target object.
@@ -23,6 +25,7 @@ module away.controllers
private _steps:number = 8;
private _yFactor:number = 2;
private _wrapPanAngle:boolean = false;
+ private _upAxis:Vector3D = new Vector3D();
/**
* Fractional step taken each time the hover() method is called. Defaults to 8.
@@ -228,7 +231,7 @@ module away.controllers
/**
* Creates a new HoverController object.
*/
- constructor(targetObject:away.entities.IEntity = null, lookAtObject:away.base.DisplayObject = null, panAngle:number = 0, tiltAngle:number = 90, distance:number = 1000, minTiltAngle:number = -90, maxTiltAngle:number = 90, minPanAngle:number = null, maxPanAngle:number = null, steps:number = 8, yFactor:number = 2, wrapPanAngle:boolean = false)
+ constructor(targetObject:away.base.DisplayObject = null, lookAtObject:away.base.DisplayObject = null, panAngle:number = 0, tiltAngle:number = 90, distance:number = 1000, minTiltAngle:number = -90, maxTiltAngle:number = 90, minPanAngle:number = null, maxPanAngle:number = null, steps:number = 8, yFactor:number = 2, wrapPanAngle:boolean = false)
{
super(targetObject, lookAtObject);
@@ -296,12 +299,21 @@ module away.controllers
}
}
- var pos:away.geom.Vector3D = (this.lookAtObject)? this.lookAtObject.transform.position : (this.lookAtPosition)? this.lookAtPosition : this._pOrigin;
- this.targetObject.x = pos.x + this.distance*Math.sin(this._iCurrentPanAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*away.geom.MathConsts.DEGREES_TO_RADIANS);
- this.targetObject.y = pos.y + this.distance*Math.sin(this._iCurrentTiltAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)*this.yFactor;
- this.targetObject.z = pos.z + this.distance*Math.cos(this._iCurrentPanAngle*away.geom.MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*away.geom.MathConsts.DEGREES_TO_RADIANS);
+ var pos:Vector3D = (this.lookAtObject)? this.lookAtObject.transform.position : (this.lookAtPosition)? this.lookAtPosition : this._pOrigin;
+ this.targetObject.x = pos.x + this.distance*Math.sin(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS);
+ this.targetObject.y = pos.y + this.distance*Math.sin(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS)*this.yFactor;
+ this.targetObject.z = pos.z + this.distance*Math.cos(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.cos(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS);
- super.update();
+ this._upAxis.x = -Math.sin(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.sin(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS);
+ this._upAxis.y = Math.cos(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS);
+ this._upAxis.z = -Math.cos(this._iCurrentPanAngle*MathConsts.DEGREES_TO_RADIANS)*Math.sin(this._iCurrentTiltAngle*MathConsts.DEGREES_TO_RADIANS);
+
+ if (this._pTargetObject) {
+ if (this._pLookAtPosition)
+ this._pTargetObject.lookAt(this._pLookAtPosition, this._upAxis);
+ else if (this._pLookAtObject)
+ this._pTargetObject.lookAt(this._pLookAtObject.scene? this._pLookAtObject.scenePosition : this._pLookAtObject.transform.position, this._upAxis);
+ }
}
}
}
diff --git a/src/away/controllers/LookAtController.ts b/src/away/controllers/LookAtController.ts
index 241e5841..321f5e1e 100644
--- a/src/away/controllers/LookAtController.ts
+++ b/src/away/controllers/LookAtController.ts
@@ -10,7 +10,7 @@ module away.controllers
private _onLookAtObjectChangedDelegate:Function;
- constructor(targetObject:away.entities.IEntity = null, lookAtObject:away.base.DisplayObject = null)
+ constructor(targetObject:away.base.DisplayObject = null, lookAtObject:away.base.DisplayObject = null)
{
super(targetObject);
diff --git a/src/away/controllers/SpringController.ts b/src/away/controllers/SpringController.ts
index 54ef4574..8a0bccbb 100644
--- a/src/away/controllers/SpringController.ts
+++ b/src/away/controllers/SpringController.ts
@@ -39,7 +39,7 @@ module away.controllers
*/
public positionOffset:away.geom.Vector3D = new away.geom.Vector3D(0, 500, -1000);
- constructor(targetObject:away.entities.IEntity = null, lookAtObject:away.base.DisplayObject = null, stiffness:number = 1, mass:number = 40, damping:number = 4)
+ constructor(targetObject:away.base.DisplayObject = null, lookAtObject:away.base.DisplayObject = null, stiffness:number = 1, mass:number = 40, damping:number = 4)
{
super(targetObject, lookAtObject);
diff --git a/src/away/core/base/DisplayObject.ts b/src/away/core/base/DisplayObject.ts
index 23300980..a7ba4868 100644
--- a/src/away/core/base/DisplayObject.ts
+++ b/src/away/core/base/DisplayObject.ts
@@ -138,6 +138,7 @@ module away.base
private _mouseY:number;
private _root:away.containers.DisplayObjectContainer;
private _bounds:away.geom.Rectangle;
+ private _boundsVisible:boolean;
private _depth:number;
private _height:number;
private _width:number;
@@ -205,8 +206,6 @@ module away.base
public _pIgnoreTransform:boolean = false;
- private _showBounds:boolean;
- private _boundsIsShown:boolean;
private _shaderPickingDetails:boolean;
public _pPickingCollisionVO:away.pick.PickingCollisionVO;
@@ -220,6 +219,8 @@ module away.base
public _pRenderables:Array = new Array();
+ public _iSourcePrefab:away.prefabs.PrefabBase;
+
/**
*
*/
@@ -272,16 +273,17 @@ module away.base
public set bounds(value:away.bounds.BoundingVolumeBase)
{
- if (this._showBounds)
- this.removeBounds();
+ if (this._pBounds == value)
+ return;
this._pBounds = value;
+
this._worldBounds = value.clone();
this.pInvalidateBounds();
- if (this._showBounds)
- this.addBounds();
+ if (this._boundsVisible)
+ this._partitionNode._iUpdateEntityBounds();
}
/**
@@ -1080,22 +1082,19 @@ module away.base
/**
*
*/
- public get showBounds():boolean
+ public get boundsVisible():boolean
{
- return this._showBounds;
+ return this._boundsVisible;
}
- public set showBounds(value:boolean)
+ public set boundsVisible(value:boolean)
{
- if (value == this._showBounds)
+ if (value == this._boundsVisible)
return;
- this._showBounds = value;
+ this._boundsVisible = value;
-// if (this._showBounds)
-// this.addChild(this._pBounds.boundingEntity);
-// else
-// this.removeBounds();
+ this._partitionNode.boundsVisible = value;
}
/**
@@ -1196,6 +1195,12 @@ module away.base
*/
public get worldBounds():away.bounds.BoundingVolumeBase
{
+ // Since this getter is invoked every iteration of the render loop, and
+ // the prefab construct could affect the bounds of the entity, the prefab is
+ // validated here to give it a chance to rebuild.
+ if (this._iSourcePrefab)
+ this._iSourcePrefab._iValidate();
+
if (this._worldBoundsInvalid) {
this._worldBoundsInvalid = false;
this._worldBounds.transformFrom(this.bounds, this.sceneTransform);
@@ -2205,17 +2210,6 @@ module away.base
this.notifySceneChange();
}
- /**
- * @private
- */
- private addBounds()
- {
- if (!this._boundsIsShown) {
- this._boundsIsShown = true;
-// this.addChild(this._pBounds.boundingEntity);//TODO turn this into a Node-based bounding Entity
- }
- }
-
/**
* @private
*/
@@ -2360,17 +2354,5 @@ module away.base
if (this._listenToScaleChanged)
this.notifyScaleChanged();
}
-
- /**
- * @private
- */
- private removeBounds()
- {
- if (this._boundsIsShown) {
- this._boundsIsShown = false;
-// this.removeChild(this._pBounds.boundingEntity);
- this._pBounds.disposeRenderable();
- }
- }
}
}
diff --git a/src/away/core/base/Geometry.ts b/src/away/core/base/Geometry.ts
new file mode 100644
index 00000000..06ce0578
--- /dev/null
+++ b/src/away/core/base/Geometry.ts
@@ -0,0 +1,152 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ *
+ * Geometry is a collection of SubGeometries, each of which contain the actual geometrical data such as vertices,
+ * normals, uvs, etc. It also contains a reference to an animation class, which defines how the geometry moves.
+ * A Geometry object is assigned to a Mesh, a scene graph occurence of the geometry, which in turn assigns
+ * the SubGeometries to its respective TriangleSubMesh objects.
+ *
+ *
+ *
+ * @see away.core.base.SubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.Geometry
+ */
+ export class Geometry extends away.library.NamedAssetBase implements away.library.IAsset
+ {
+ private _subGeometries:away.base.SubGeometryBase[];//Vector.;//private var _subGeometries:Vector.;
+
+ public get assetType():string
+ {
+ return away.library.AssetType.GEOMETRY;
+ }
+
+ /**
+ * A collection of TriangleSubGeometry objects, each of which contain geometrical data such as vertices, normals, etc.
+ */
+ public get subGeometries():away.base.SubGeometryBase[]//Vector.
+ {
+ return this._subGeometries;
+ }
+
+ public getSubGeometries():away.base.SubGeometryBase[]//Vector.
+ {
+ return this._subGeometries;
+ }
+
+ /**
+ * Creates a new Geometry object.
+ */
+ constructor()
+ {
+ super();
+
+ this._subGeometries = new Array();
+ }
+
+ public applyTransformation(transform:away.geom.Matrix3D)
+ {
+ var len:number = this._subGeometries.length;
+ for (var i:number = 0; i < len; ++i)
+ this._subGeometries[i].applyTransformation(transform);
+ }
+
+ /**
+ * Adds a new TriangleSubGeometry object to the list.
+ * @param subGeometry The TriangleSubGeometry object to be added.
+ */
+ public addSubGeometry(subGeometry:away.base.SubGeometryBase)
+ {
+ this._subGeometries.push(subGeometry);
+
+ subGeometry.parentGeometry = this;
+
+ if (this.hasEventListener(away.events.GeometryEvent.SUB_GEOMETRY_ADDED))
+ this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.SUB_GEOMETRY_ADDED, subGeometry));
+
+ this.iInvalidateBounds(subGeometry);
+ }
+
+ /**
+ * Removes a new TriangleSubGeometry object from the list.
+ * @param subGeometry The TriangleSubGeometry object to be removed.
+ */
+ public removeSubGeometry(subGeometry:SubGeometryBase)
+ {
+ this._subGeometries.splice(this._subGeometries.indexOf(subGeometry), 1);
+
+ subGeometry.parentGeometry = null;
+
+ if (this.hasEventListener(away.events.GeometryEvent.SUB_GEOMETRY_REMOVED))
+ this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.SUB_GEOMETRY_REMOVED, subGeometry));
+
+ this.iInvalidateBounds(subGeometry);
+ }
+
+ /**
+ * Clones the geometry.
+ * @return An exact duplicate of the current Geometry object.
+ */
+ public clone():Geometry
+ {
+ var clone:Geometry = new Geometry();
+ var len:number = this._subGeometries.length;
+
+ for (var i:number = 0; i < len; ++i)
+ clone.addSubGeometry(this._subGeometries[i].clone());
+
+ return clone;
+ }
+
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ public scale(scale:number)
+ {
+ var numSubGeoms:number = this._subGeometries.length;
+ for (var i:number = 0; i < numSubGeoms; ++i)
+ this._subGeometries[i].scale(scale);
+ }
+
+ /**
+ * Clears all resources used by the Geometry object, including SubGeometries.
+ */
+ public dispose()
+ {
+ var numSubGeoms:number = this._subGeometries.length;
+
+ for (var i:number = 0; i < numSubGeoms; ++i) {
+ var subGeom:SubGeometryBase = this._subGeometries[0];
+ this.removeSubGeometry(subGeom);
+ subGeom.dispose();
+ }
+ }
+
+ /**
+ * Scales the uv coordinates (tiling)
+ * @param scaleU The amount by which to scale on the u axis. Default is 1;
+ * @param scaleV The amount by which to scale on the v axis. Default is 1;
+ */
+ public scaleUV(scaleU:number = 1, scaleV:number = 1)
+ {
+ var numSubGeoms:number = this._subGeometries.length;
+
+ for (var i:number = 0; i < numSubGeoms; ++i)
+ this._subGeometries[i].scaleUV(scaleU, scaleV);
+ }
+
+ public iInvalidateBounds(subGeom:SubGeometryBase)
+ {
+ if (this.hasEventListener(away.events.GeometryEvent.BOUNDS_INVALID))
+ this.dispatchEvent(new away.events.GeometryEvent(away.events.GeometryEvent.BOUNDS_INVALID, subGeom));
+ }
+ }
+}
diff --git a/src/away/core/base/IMaterialOwner.ts b/src/away/core/base/IMaterialOwner.ts
index 09712167..c33b9ac8 100644
--- a/src/away/core/base/IMaterialOwner.ts
+++ b/src/away/core/base/IMaterialOwner.ts
@@ -17,11 +17,6 @@ module away.base
*/
animator:away.animators.IAnimator; // in most cases, this will in fact be null
- /**
- *
- */
- id:string;
-
/**
* The material with which to render the object.
*/
@@ -30,21 +25,28 @@ module away.base
/**
*
*/
- uvTransform:away.geom.UVTransform; // GET
+ uvTransform:away.geom.UVTransform; // GET / SET
/**
*
+ * @param renderable
+ * @private
*/
- _iSetUVMatrixComponents(offsetU:number, offsetV:number, scaleU:number, scaleV:number, rotationUV:number);
+ _iAddRenderable(renderable:away.pool.IRenderable):away.pool.IRenderable;
+
/**
*
+ * @param renderable
+ * @private
*/
- _iAddRenderable(renderable:away.pool.IRenderable):away.pool.IRenderable;
+ _iRemoveRenderable(renderable:away.pool.IRenderable):away.pool.IRenderable;
/**
*
+ * @param renderer
+ * @private
*/
- _iRemoveRenderable(renderable:away.pool.IRenderable):away.pool.IRenderable;
+ _iCollectRenderable(renderer:away.render.IRenderer)
}
}
diff --git a/src/away/core/base/ISubMesh.ts b/src/away/core/base/ISubMesh.ts
new file mode 100644
index 00000000..9873b5e0
--- /dev/null
+++ b/src/away/core/base/ISubMesh.ts
@@ -0,0 +1,26 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * ISubMeshClass is an interface for the constructable class definition SubMesh that is used to
+ * create apply a marterial to a SubGeometry class
+ *
+ * @class away.base.ISubMeshClass
+ */
+ export interface ISubMesh extends IMaterialOwner
+ {
+ subGeometry:SubGeometryBase;
+
+ parentMesh:away.entities.Mesh;
+
+ _iIndex:number;
+
+ _iInvalidateRenderableGeometry();
+
+ _iGetExplicitMaterial():away.materials.IMaterial;
+ }
+}
\ No newline at end of file
diff --git a/src/away/core/base/ISubMeshClass.ts b/src/away/core/base/ISubMeshClass.ts
new file mode 100644
index 00000000..fc64aff9
--- /dev/null
+++ b/src/away/core/base/ISubMeshClass.ts
@@ -0,0 +1,21 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * ISubMeshClass is an interface for the constructable class definition ISubMesh that is used to
+ * apply a material to a SubGeometry class
+ *
+ * @class away.base.ISubMeshClass
+ */
+ export interface ISubMeshClass
+ {
+ /**
+ *
+ */
+ new(subGeometry:SubGeometryBase, parentMesh:away.entities.Mesh, material?:away.materials.IMaterial):ISubMesh;
+ }
+}
diff --git a/src/away/core/base/LineSubGeometry.ts b/src/away/core/base/LineSubGeometry.ts
new file mode 100644
index 00000000..d87dfc70
--- /dev/null
+++ b/src/away/core/base/LineSubGeometry.ts
@@ -0,0 +1,438 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ export class LineSubGeometry extends SubGeometryBase
+ {
+ public static VERTEX_DATA:string = "vertices";
+ public static START_POSITION_DATA:string = "startPositions";
+ public static END_POSITION_DATA:string = "endPositions";
+ public static THICKNESS_DATA:string = "thickness";
+ public static COLOR_DATA:string = "colors";
+
+ public static POSITION_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ public static COLOR_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_4;
+ public static THICKNESS_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_1;
+
+ private _positionsDirty:boolean = true;
+ private _boundingPositionDirty = true;
+ private _thicknessDirty:boolean = true;
+ private _colorsDirty:boolean = true;
+
+ private _startPositions:Array;
+ private _endPositions:Array;
+ private _boundingPositions:Array
+ private _thickness:Array;
+ private _startColors:Array;
+ private _endColors:Array;
+
+ private _numSegments:number;
+
+ private _positionsUpdated:away.events.SubGeometryEvent;
+ private _thicknessUpdated:away.events.SubGeometryEvent;
+ private _colorUpdated:away.events.SubGeometryEvent;
+
+ public _pUpdateStrideOffset()
+ {
+ this._pOffset[LineSubGeometry.VERTEX_DATA] = 0;
+
+ var stride:number = 0;
+ this._pOffset[LineSubGeometry.START_POSITION_DATA] = stride;
+ stride += 3;
+
+ this._pOffset[LineSubGeometry.END_POSITION_DATA] = stride;
+ stride += 3;
+
+ this._pOffset[LineSubGeometry.THICKNESS_DATA] = stride;
+ stride += 1;
+
+ this._pOffset[LineSubGeometry.COLOR_DATA] = stride;
+ stride += 4;
+
+ this._pStride[LineSubGeometry.VERTEX_DATA] = stride;
+ this._pStride[LineSubGeometry.START_POSITION_DATA] = stride;
+ this._pStride[LineSubGeometry.END_POSITION_DATA] = stride;
+ this._pStride[LineSubGeometry.THICKNESS_DATA] = stride;
+ this._pStride[LineSubGeometry.COLOR_DATA] = stride;
+
+ var len:number = this._pNumVertices*stride;
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(len);
+ else if (this._pVertices.length != len)
+ this._pVertices.length = len;
+
+ this._pStrideOffsetDirty = false;
+ }
+
+ /**
+ *
+ */
+ public get vertices():Array
+ {
+ if (this._positionsDirty)
+ this.updatePositions(this._startPositions, this._endPositions);
+
+ if (this._thicknessDirty)
+ this.updateThickness(this._thickness);
+
+ if (this._colorsDirty)
+ this.updateColors(this._startColors, this._endColors);
+
+ return this._pVertices;
+ }
+
+ /**
+ *
+ */
+ public get startPositions():Array
+ {
+ if (this._positionsDirty)
+ this.updatePositions(this._startPositions, this._endPositions);
+
+ return this._startPositions;
+ }
+
+ /**
+ *
+ */
+ public get endPositions():Array
+ {
+ if (this._positionsDirty)
+ this.updatePositions(this._startPositions, this._endPositions);
+
+ return this._endPositions;
+ }
+
+ /**
+ *
+ */
+ public get thickness():Array
+ {
+ if (this._thicknessDirty)
+ this.updateThickness(this._thickness);
+
+ return this._thickness;
+ }
+
+ /**
+ *
+ */
+ public get startColors():Array
+ {
+ if (this._colorsDirty)
+ this.updateColors(this._startColors, this._endColors);
+
+ return this._startColors;
+ }
+
+ /**
+ *
+ */
+ public get endColors():Array
+ {
+ if (this._colorsDirty)
+ this.updateColors(this._startColors, this._endColors);
+
+ return this._endColors;
+ }
+
+ /**
+ * The total amount of segments in the TriangleSubGeometry.
+ */
+ public get numSegments():number
+ {
+ return this._numSegments;
+ }
+
+ /**
+ *
+ */
+ constructor()
+ {
+ super(true);
+
+ this._pSubMeshClass = LineSubMesh;
+ }
+
+ public getBoundingPositions():Array
+ {
+ if (this._boundingPositionDirty)
+ this._boundingPositions = this.startPositions.concat(this.endPositions);
+
+ return this._boundingPositions;
+ }
+
+ /**
+ *
+ */
+ public updatePositions(startValues:Array, endValues:Array)
+ {
+ var i:number;
+ var j:number;
+ var values:Array
+ var index:number;
+ var stride:number;
+ var positions:Array;
+ var indices:Array;
+
+ this._startPositions = startValues;
+
+ if (this._startPositions == null)
+ this._startPositions = new Array();
+
+ this._endPositions = endValues;
+
+ if (this._endPositions == null)
+ this._endPositions = new Array();
+
+ this._boundingPositionDirty = true;
+
+ this._numSegments = this._startPositions.length/3;
+
+ this._pNumVertices = this._numSegments*4;
+
+ var lenV:number = this._pNumVertices*this.getStride(LineSubGeometry.VERTEX_DATA);
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(lenV);
+ else if (this._pVertices.length != lenV)
+ this._pVertices.length = lenV;
+
+ i = 0;
+ j = 0;
+ index = this.getOffset(LineSubGeometry.START_POSITION_DATA);
+ stride = this.getStride(LineSubGeometry.START_POSITION_DATA);
+ positions = this._pVertices;
+ indices = new Array();
+
+ while (i < startValues.length) {
+ values = (index/stride & 1)? endValues : startValues;
+ positions[index] = values[i];
+ positions[index + 1] = values[i + 1];
+ positions[index + 2] = values[i + 2];
+
+ values = (index/stride & 1)? startValues : endValues;
+ positions[index + 3] = values[i];
+ positions[index + 4] = values[i + 1];
+ positions[index + 5] = values[i + 2];
+
+ if (++j == 4) {
+ var o:number = index/stride - 3;
+ indices.push(o, o + 1, o + 2, o + 3, o + 2, o + 1);
+ j = 0;
+ i += 3;
+ }
+
+ index += stride;
+ }
+
+ this.updateIndices(indices);
+
+ this.pInvalidateBounds();
+
+ this.notifyPositionsUpdate();
+
+ this._positionsDirty = false;
+ }
+
+ /**
+ * Updates the thickness.
+ */
+ public updateThickness(values:Array)
+ {
+ var i:number;
+ var j:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var thickness:Array;
+
+ this._thickness = values;
+
+ if (values != null) {
+ i = 0;
+ j = 0;
+ offset = this.getOffset(LineSubGeometry.THICKNESS_DATA);
+ stride = this.getStride(LineSubGeometry.THICKNESS_DATA);
+ thickness = this._pVertices;
+
+ index = offset
+ while (i < values.length) {
+ thickness[index] = (Math.floor(0.5*(index - offset)/stride + 0.5) & 1)? -values[i] : values[i];
+
+ if (++j == 4) {
+ j = 0;
+ i++;
+ }
+ index += stride;
+ }
+ }
+
+ this.notifyThicknessUpdate();
+
+ this._thicknessDirty = false;
+ }
+
+ /**
+ *
+ */
+ public updateColors(startValues:Array, endValues:Array)
+ {
+ var i:number;
+ var j:number;
+ var values:Array
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var colors:Array;
+
+ this._startColors = startValues;
+
+ this._endColors = endValues;
+
+ //default to white
+ if (this._startColors == null) {
+ this._startColors = new Array(this._numSegments*4);
+
+ i = 0;
+ while (i < this._startColors.length)
+ this._startColors[i++] = 1;
+ }
+
+ if (this._endColors == null) {
+ this._endColors = new Array(this._numSegments*4);
+
+ i = 0;
+ while (i < this._endColors.length)
+ this._endColors[i++] = 1;
+ }
+
+ i = 0;
+ j = 0;
+ offset = this.getOffset(LineSubGeometry.COLOR_DATA);
+ stride = this.getStride(LineSubGeometry.COLOR_DATA);
+ colors = this._pVertices;
+
+ index = offset;
+
+ while (i < this._startColors.length) {
+ values = ((index - offset)/stride & 1)? this._endColors : this._startColors;
+ colors[index] = values[i];
+ colors[index + 1] = values[i + 1];
+ colors[index + 2] = values[i + 2];
+ colors[index + 3] = values[i + 3];
+
+ if (++j == 4) {
+ j = 0;
+ i += 4;
+ }
+
+ index += stride;
+ }
+
+ this.notifyColorsUpdate();
+
+ this._colorsDirty = false;
+ }
+
+ /**
+ *
+ */
+ public dispose()
+ {
+ super.dispose();
+
+ this._startPositions = null;
+ this._endPositions = null;
+ this._thickness = null;
+ this._startColors = null;
+ this._endColors = null;
+ }
+
+ /**
+ * @protected
+ */
+ public pInvalidateBounds()
+ {
+ if (this.parentGeometry)
+ this.parentGeometry.iInvalidateBounds(this);
+ }
+
+ /**
+ * The Geometry object that 'owns' this TriangleSubGeometry object.
+ *
+ * @private
+ */
+ public parentGeometry:away.base.Geometry;
+
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ public clone():LineSubGeometry
+ {
+ var clone:LineSubGeometry = new LineSubGeometry();
+ clone.updateIndices(this._pIndices.concat());
+ clone.updatePositions(this._startPositions.concat(), this._endPositions.concat());
+ clone.updateThickness(this._thickness.concat());
+ clone.updatePositions(this._startPositions.concat(), this._endPositions.concat());
+
+ return clone;
+ }
+
+ public _pNotifyVerticesUpdate()
+ {
+ this._pStrideOffsetDirty = true;
+
+ this.notifyPositionsUpdate();
+ this.notifyThicknessUpdate();
+ this.notifyColorsUpdate();
+ }
+
+ private notifyPositionsUpdate()
+ {
+ if (this._positionsDirty)
+ return;
+
+ this._positionsDirty = true;
+
+ if (!this._positionsUpdated)
+ this._positionsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.POSITION_DATA);
+
+ this.dispatchEvent(this._positionsUpdated);
+ }
+
+ private notifyThicknessUpdate()
+ {
+ if (this._thicknessDirty)
+ return;
+
+ this._thicknessDirty = true;
+
+ if (!this._thicknessUpdated)
+ this._thicknessUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, LineSubGeometry.THICKNESS_DATA);
+
+ this.dispatchEvent(this._thicknessUpdated);
+ }
+
+ private notifyColorsUpdate()
+ {
+ if (this._colorsDirty)
+ return;
+
+ this._colorsDirty = true;
+
+ if (!this._colorUpdated)
+ this._colorUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, LineSubGeometry.COLOR_DATA);
+
+ this.dispatchEvent(this._colorUpdated);
+ }
+ }
+}
diff --git a/src/away/core/base/LineSubMesh.ts b/src/away/core/base/LineSubMesh.ts
new file mode 100644
index 00000000..1a96d812
--- /dev/null
+++ b/src/away/core/base/LineSubMesh.ts
@@ -0,0 +1,67 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * LineSubMesh wraps a LineSubGeometry as a scene graph instantiation. A LineSubMesh is owned by a Mesh object.
+ *
+ *
+ * @see away.base.LineSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.LineSubMesh
+ */
+ export class LineSubMesh extends SubMeshBase implements ISubMesh
+ {
+ private _subGeometry:LineSubGeometry;
+
+ /**
+ *
+ */
+ public get assetType():string
+ {
+ return away.library.AssetType.LINE_SUB_MESH;
+ }
+
+ /**
+ * The LineSubGeometry object which provides the geometry data for this LineSubMesh.
+ */
+ public get subGeometry():LineSubGeometry
+ {
+ return this._subGeometry;
+ }
+
+ /**
+ * Creates a new LineSubMesh object
+ * @param subGeometry The LineSubGeometry object which provides the geometry data for this LineSubMesh.
+ * @param parentMesh The Mesh object to which this LineSubMesh belongs.
+ * @param material An optional material used to render this LineSubMesh.
+ */
+ constructor(subGeometry:LineSubGeometry, parentMesh:away.entities.Mesh, material:away.materials.IMaterial = null)
+ {
+ super();
+
+ this._pParentMesh = parentMesh;
+ this._subGeometry = subGeometry;
+ this.material = material;
+ }
+
+ /**
+ *
+ */
+ public dispose()
+ {
+ this.material = null;
+
+ super.dispose();
+ }
+
+ public _iCollectRenderable(renderer:away.render.IRenderer)
+ {
+ renderer.applyLineSubMesh(this);
+ }
+ }
+}
diff --git a/src/away/core/base/StageGL.ts b/src/away/core/base/StageGL.ts
index 9be9c7cc..4864dab9 100644
--- a/src/away/core/base/StageGL.ts
+++ b/src/away/core/base/StageGL.ts
@@ -514,6 +514,68 @@ module away.base
this._bufferClear = newBufferClear;
}
+ /**
+ * Assigns an attribute stream
+ *
+ * @param index The attribute stream index for the vertex shader
+ * @param buffer
+ * @param offset
+ * @param stride
+ * @param format
+ */
+ public activateBuffer(index:number, buffer:away.gl.VertexData, offset:number, format:string)
+ {
+ if (!buffer.stageGLs[this._iStageGLIndex])
+ buffer.stageGLs[this._iStageGLIndex] = this;
+
+ if (!buffer.buffers[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex] = this._contextGL.createVertexBuffer(buffer.data.length/buffer.dataPerVertex, buffer.dataPerVertex);
+ buffer.invalid[this._iStageGLIndex] = true;
+ }
+
+ if (buffer.invalid[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex].uploadFromArray(buffer.data, 0, buffer.data.length/buffer.dataPerVertex);
+ buffer.invalid[this._iStageGLIndex] = false;
+ }
+
+ this._contextGL.setVertexBufferAt(index, buffer.buffers[this._iStageGLIndex], offset, format);
+ }
+
+ public disposeVertexData(buffer:away.gl.VertexData)
+ {
+ buffer.buffers[this._iStageGLIndex].dispose();
+ buffer.buffers[this._iStageGLIndex] = null;
+ }
+
+ /**
+ * Retrieves the VertexBuffer object that contains triangle indices.
+ * @param context The ContextGL for which we request the buffer
+ * @return The VertexBuffer object that contains triangle indices.
+ */
+ public getIndexBuffer(buffer:away.gl.IndexData):away.gl.IndexBuffer
+ {
+ if (!buffer.stageGLs[this._iStageGLIndex])
+ buffer.stageGLs[this._iStageGLIndex] = this;
+
+ if (!buffer.buffers[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex] = this._contextGL.createIndexBuffer(buffer.data.length/3);
+ buffer.invalid[this._iStageGLIndex] = true;
+ }
+
+ if (buffer.invalid[this._iStageGLIndex]) {
+ buffer.buffers[this._iStageGLIndex].uploadFromArray(buffer.data, 0, buffer.data.length/3);
+ buffer.invalid[this._iStageGLIndex] = false;
+ }
+
+ return buffer.buffers[this._iStageGLIndex];
+ }
+
+ public disposeIndexData(buffer:away.gl.IndexData)
+ {
+ buffer.buffers[this._iStageGLIndex].dispose();
+ buffer.buffers[this._iStageGLIndex] = null;
+ }
+
/*
* Access to fire mouseevents across multiple layered view3D instances
*/
diff --git a/src/away/core/base/SubGeometryBase.ts b/src/away/core/base/SubGeometryBase.ts
new file mode 100644
index 00000000..ea819798
--- /dev/null
+++ b/src/away/core/base/SubGeometryBase.ts
@@ -0,0 +1,216 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ export class SubGeometryBase extends away.library.NamedAssetBase
+ {
+ public _pStrideOffsetDirty:boolean = true;
+
+ public _pIndices:Array /*uint*/;
+ public _pVertices:Array;
+
+ private _numIndices:number;
+ private _numTriangles:number;
+ public _pNumVertices:number;
+
+ public _pConcatenateArrays:boolean = true;
+
+ private _indicesUpdated:away.events.SubGeometryEvent;
+
+ public _pStride:Object = new Object();
+ public _pOffset:Object = new Object();
+
+ public _pUpdateStrideOffset()
+ {
+ throw new away.errors.AbstractMethodError();
+ }
+
+ public _pSubMeshClass:ISubMeshClass;
+
+ public get subMeshClass():ISubMeshClass
+ {
+ return this._pSubMeshClass;
+ }
+
+ /**
+ *
+ */
+ public get concatenateArrays():boolean
+ {
+ return this._pConcatenateArrays;
+ }
+
+ public set concatenateArrays(value:boolean)
+ {
+ if (this._pConcatenateArrays == value)
+ return;
+
+ this._pConcatenateArrays = value;
+
+ this._pStrideOffsetDirty = true;
+
+ if (value)
+ this._pNotifyVerticesUpdate();
+ }
+
+ /**
+ * The raw index data that define the faces.
+ */
+ public get indices():Array
+ {
+ return this._pIndices;
+ }
+
+ /**
+ *
+ */
+ public get vertices():Array
+ {
+ this.updateVertices();
+
+ return this._pVertices;
+ }
+
+ /**
+ * The total amount of triangles in the TriangleSubGeometry.
+ */
+ public get numTriangles():number
+ {
+ return this._numTriangles;
+ }
+
+ public get numVertices():number
+ {
+ return this._pNumVertices;
+ }
+
+ /**
+ *
+ */
+ constructor(concatenatedArrays:boolean)
+ {
+ super();
+
+ this._pConcatenateArrays = concatenatedArrays;
+ }
+
+ /**
+ *
+ */
+ public getStride(dataType:string)
+ {
+ if (this._pStrideOffsetDirty)
+ this._pUpdateStrideOffset();
+
+ return this._pStride[dataType];
+ }
+
+ /**
+ *
+ */
+ public getOffset(dataType:string)
+ {
+ if (this._pStrideOffsetDirty)
+ this._pUpdateStrideOffset();
+
+ return this._pOffset[dataType];
+ }
+
+ public updateVertices()
+ {
+ throw new away.errors.AbstractMethodError();
+ }
+
+ /**
+ *
+ */
+ public dispose()
+ {
+ this._pIndices = null;
+ this._pVertices = null;
+ }
+
+ /**
+ * Updates the face indices of the TriangleSubGeometry.
+ *
+ * @param indices The face indices to upload.
+ */
+ public updateIndices(indices:Array)
+ {
+ this._pIndices = indices;
+ this._numIndices = indices.length;
+
+ this._numTriangles = this._numIndices/3;
+
+ this.notifyIndicesUpdate();
+ }
+
+ /**
+ * @protected
+ */
+ public pInvalidateBounds()
+ {
+ if (this.parentGeometry)
+ this.parentGeometry.iInvalidateBounds(this);
+ }
+
+ /**
+ * The Geometry object that 'owns' this TriangleSubGeometry object.
+ *
+ * @private
+ */
+ public parentGeometry:away.base.Geometry;
+
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ public clone():SubGeometryBase
+ {
+ throw new away.errors.AbstractMethodError();
+ }
+
+ public applyTransformation(transform:away.geom.Matrix3D)
+ {
+
+ }
+
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ public scale(scale:number)
+ {
+
+ }
+
+ public scaleUV(scaleU:number = 1, scaleV:number = 1)
+ {
+
+ }
+
+ public getBoundingPositions():Array
+ {
+ throw new away.errors.AbstractMethodError();
+ }
+
+ private notifyIndicesUpdate()
+ {
+ if (!this._indicesUpdated)
+ this._indicesUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.INDICES_UPDATED);
+
+ this.dispatchEvent(this._indicesUpdated);
+ }
+
+ public _pNotifyVerticesUpdate()
+ {
+ throw new away.errors.AbstractMethodError();
+ }
+ }
+}
diff --git a/src/away/core/base/SubMeshBase.ts b/src/away/core/base/SubMeshBase.ts
new file mode 100644
index 00000000..9a78cbb0
--- /dev/null
+++ b/src/away/core/base/SubMeshBase.ts
@@ -0,0 +1,154 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * SubMeshBase wraps a TriangleSubGeometry as a scene graph instantiation. A SubMeshBase is owned by a Mesh object.
+ *
+ *
+ * @see away.base.TriangleSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.SubMeshBase
+ */
+ export class SubMeshBase extends away.library.NamedAssetBase
+ {
+ public _pParentMesh:away.entities.Mesh;
+ public _uvTransform:away.geom.UVTransform;
+
+ public _iIndex:number = 0;
+
+ public _material:away.materials.IMaterial;
+ private _renderables:Array = new Array();
+
+ //TODO test shader picking
+// public get shaderPickingDetails():boolean
+// {
+//
+// return this.sourceEntity.shaderPickingDetails;
+// }
+
+ /**
+ * The animator object that provides the state for the TriangleSubMesh's animation.
+ */
+ public get animator():away.animators.IAnimator
+ {
+ return this._pParentMesh.animator;
+ }
+
+ /**
+ * The material used to render the current TriangleSubMesh. If set to null, its parent Mesh's material will be used instead.
+ */
+ public get material():away.materials.IMaterial
+ {
+ return this._material || this._pParentMesh.material;
+ }
+
+ public set material(value:away.materials.IMaterial)
+ {
+ if (this.material)
+ this.material.iRemoveOwner(this);
+
+ this._material = value;
+
+ if (this.material)
+ this.material.iAddOwner(this);
+ }
+
+ /**
+ * The scene transform object that transforms from model to world space.
+ */
+ public get sceneTransform():away.geom.Matrix3D
+ {
+ return this._pParentMesh.sceneTransform;
+ }
+
+ /**
+ * The entity that that initially provided the IRenderable to the render pipeline (ie: the owning Mesh object).
+ */
+ public get parentMesh():away.entities.Mesh
+ {
+ return this._pParentMesh;
+ }
+
+ /**
+ *
+ */
+ public get uvTransform():away.geom.UVTransform
+ {
+ return this._uvTransform || this._pParentMesh.uvTransform;
+ }
+
+ public set uvTransform(value:away.geom.UVTransform)
+ {
+ this._uvTransform = value;
+ }
+
+ /**
+ * Creates a new SubMeshBase object
+ */
+ constructor()
+ {
+ super();
+ }
+
+ /**
+ *
+ */
+ public dispose()
+ {
+ this.material = null;
+
+ var len:number = this._renderables.length;
+ for (var i:number = 0; i < len; i++)
+ this._renderables[i].dispose();
+ }
+
+ /**
+ *
+ * @param camera
+ * @returns {away.geom.Matrix3D}
+ */
+ public getRenderSceneTransform(camera:away.entities.Camera):away.geom.Matrix3D
+ {
+ return this._pParentMesh.getRenderSceneTransform(camera);
+ }
+
+ public _iAddRenderable(renderable:away.pool.IRenderable):away.pool.IRenderable
+ {
+ this._renderables.push(renderable);
+
+ return renderable;
+ }
+
+
+ public _iRemoveRenderable(renderable:away.pool.IRenderable):away.pool.IRenderable
+ {
+ var index:number = this._renderables.indexOf(renderable);
+
+ this._renderables.splice(index, 1);
+
+ return renderable;
+ }
+
+ public _iInvalidateRenderableGeometry()
+ {
+ var len:number = this._renderables.length;
+ for (var i:number = 0; i < len; i++)
+ this._renderables[i].invalidateGeometry();
+ }
+
+ public _iCollectRenderable(renderer:away.render.IRenderer)
+ {
+ throw new away.errors.AbstractMethodError();
+ }
+
+ public _iGetExplicitMaterial():away.materials.IMaterial
+ {
+ return this._material;
+ }
+ }
+}
diff --git a/src/away/core/base/TriangleSubGeometry.ts b/src/away/core/base/TriangleSubGeometry.ts
new file mode 100644
index 00000000..5692ee72
--- /dev/null
+++ b/src/away/core/base/TriangleSubGeometry.ts
@@ -0,0 +1,1454 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * @class away.base.TriangleSubGeometry
+ */
+ export class TriangleSubGeometry extends SubGeometryBase
+ {
+ public static VERTEX_DATA:string = "vertices";
+ public static POSITION_DATA:string = "positions";
+ public static NORMAL_DATA:string = "vertexNormals";
+ public static TANGENT_DATA:string = "vertexTangents";
+ public static UV_DATA:string = "uvs";
+ public static SECONDARY_UV_DATA:string = "secondaryUVs";
+ public static JOINT_INDEX_DATA:string = "jointIndices";
+ public static JOINT_WEIGHT_DATA:string = "jointWeights";
+
+ public static POSITION_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ public static NORMAL_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ public static TANGENT_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_3;
+ public static UV_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_2;
+ public static SECONDARY_UV_FORMAT:string = away.gl.ContextGLVertexBufferFormat.FLOAT_2;
+
+ private _positionsDirty:boolean = true;
+ private _faceNormalsDirty:boolean = true;
+ private _faceTangentsDirty:boolean = true;
+ private _vertexNormalsDirty:boolean = true;
+ private _vertexTangentsDirty:boolean = true;
+ private _uvsDirty:boolean = true;
+ private _secondaryUVsDirty:boolean = true;
+ private _jointIndicesDirty:boolean = true;
+ private _jointWeightsDirty:boolean = true;
+
+ private _positions:Array;
+ private _vertexNormals:Array;
+ private _vertexTangents:Array;
+ private _uvs:Array;
+ private _secondaryUVs:Array;
+ private _jointIndices:Array;
+ private _jointWeights:Array;
+
+ private _useCondensedIndices:boolean;
+ private _condensedJointIndices:Array;
+ private _condensedIndexLookUp:Array;
+ private _numCondensedJoints:number;
+
+ private _jointsPerVertex:number;
+
+ private _concatenateArrays:boolean = true;
+ private _autoDeriveNormals:boolean = true;
+ private _autoDeriveTangents:boolean = true;
+ private _autoDeriveUVs:boolean = false;
+ private _useFaceWeights:boolean = false;
+
+ private _faceNormals:Array;
+ private _faceTangents:Array;
+ private _faceWeights:Array;
+
+ private _scaleU:number = 1;
+ private _scaleV:number = 1;
+
+ private _positionsUpdated:away.events.SubGeometryEvent;
+ private _normalsUpdated:away.events.SubGeometryEvent;
+ private _tangentsUpdated:away.events.SubGeometryEvent;
+ private _uvsUpdated:away.events.SubGeometryEvent;
+ private _secondaryUVsUpdated:away.events.SubGeometryEvent;
+ private _jointIndicesUpdated:away.events.SubGeometryEvent;
+ private _jointWeightsUpdated:away.events.SubGeometryEvent;
+
+ /**
+ *
+ */
+ public get scaleU():number
+ {
+ return this._scaleU;
+ }
+
+ /**
+ *
+ */
+ public get scaleV():number
+ {
+ return this._scaleV;
+ }
+
+ /**
+ * Offers the option of enabling GPU accelerated animation on skeletons larger than 32 joints
+ * by condensing the number of joint index values required per mesh. Only applicable to
+ * skeleton animations that utilise more than one mesh object. Defaults to false.
+ */
+ public get useCondensedIndices():boolean
+ {
+ return this._useCondensedIndices;
+ }
+
+ public set useCondensedIndices(value:boolean)
+ {
+ if (this._useCondensedIndices == value)
+ return;
+
+ this._useCondensedIndices = value;
+
+ this.notifyJointIndicesUpdate();
+ }
+
+ public _pUpdateStrideOffset()
+ {
+ if (this._concatenateArrays) {
+ this._pOffset[TriangleSubGeometry.VERTEX_DATA] = 0;
+
+ //always have positions
+ this._pOffset[TriangleSubGeometry.POSITION_DATA] = 0;
+ var stride:number = 3;
+
+ if (this._vertexNormals != null) {
+ this._pOffset[TriangleSubGeometry.NORMAL_DATA] = stride;
+ stride += 3;
+ }
+
+ if (this._vertexTangents != null) {
+ this._pOffset[TriangleSubGeometry.TANGENT_DATA] = stride;
+ stride += 3;
+ }
+
+ if (this._uvs != null) {
+ this._pOffset[TriangleSubGeometry.UV_DATA] = stride;
+ stride += 2;
+ }
+
+ if (this._secondaryUVs != null) {
+ this._pOffset[TriangleSubGeometry.SECONDARY_UV_DATA] = stride;
+ stride += 2;
+ }
+
+ if (this._jointIndices != null) {
+ this._pOffset[TriangleSubGeometry.JOINT_INDEX_DATA] = stride;
+ stride += this._jointsPerVertex;
+ }
+
+ if (this._jointWeights != null) {
+ this._pOffset[TriangleSubGeometry.JOINT_WEIGHT_DATA] = stride;
+ stride += this._jointsPerVertex;
+ }
+
+ this._pStride[TriangleSubGeometry.VERTEX_DATA] = stride;
+ this._pStride[TriangleSubGeometry.POSITION_DATA] = stride;
+ this._pStride[TriangleSubGeometry.NORMAL_DATA] = stride;
+ this._pStride[TriangleSubGeometry.TANGENT_DATA] = stride;
+ this._pStride[TriangleSubGeometry.UV_DATA] = stride;
+ this._pStride[TriangleSubGeometry.SECONDARY_UV_DATA] = stride;
+ this._pStride[TriangleSubGeometry.JOINT_INDEX_DATA] = stride;
+ this._pStride[TriangleSubGeometry.JOINT_WEIGHT_DATA] = stride;
+
+ var len:number = this._pNumVertices*stride;
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(len);
+ else if (this._pVertices.length != len)
+ this._pVertices.length = len;
+
+ } else {
+ this._pOffset[TriangleSubGeometry.POSITION_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.NORMAL_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.TANGENT_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.UV_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.SECONDARY_UV_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.JOINT_INDEX_DATA] = 0;
+ this._pOffset[TriangleSubGeometry.JOINT_WEIGHT_DATA] = 0;
+
+ this._pStride[TriangleSubGeometry.POSITION_DATA] = 3;
+ this._pStride[TriangleSubGeometry.NORMAL_DATA] = 3;
+ this._pStride[TriangleSubGeometry.TANGENT_DATA] = 3;
+ this._pStride[TriangleSubGeometry.UV_DATA] = 2;
+ this._pStride[TriangleSubGeometry.SECONDARY_UV_DATA] = 2;
+ this._pStride[TriangleSubGeometry.JOINT_INDEX_DATA] = this._jointsPerVertex;
+ this._pStride[TriangleSubGeometry.JOINT_WEIGHT_DATA] = this._jointsPerVertex;
+ }
+
+ this._pStrideOffsetDirty = false;
+ }
+
+ /**
+ *
+ */
+ public get jointsPerVertex():number
+ {
+ return this._jointsPerVertex;
+ }
+
+ public set jointsPerVertex(value:number)
+ {
+ if (this._jointsPerVertex == value)
+ return;
+
+ this._jointsPerVertex = value;
+
+ this._pStrideOffsetDirty = true;
+
+ if (this._pConcatenateArrays)
+ this._pNotifyVerticesUpdate();
+ }
+
+ /**
+ * Defines whether a UV buffer should be automatically generated to contain dummy UV coordinates.
+ * Set to true if a geometry lacks UV data but uses a material that requires it, or leave as false
+ * in cases where UV data is explicitly defined or the material does not require UV data.
+ */
+ public get autoDeriveUVs():boolean
+ {
+ return this._autoDeriveUVs;
+ }
+
+ public set autoDeriveUVs(value:boolean)
+ {
+ if (this._autoDeriveUVs == value)
+ return;
+
+ this._autoDeriveUVs = value;
+
+ if (value)
+ this.notifyUVsUpdate();
+ }
+
+ /**
+ * True if the vertex normals should be derived from the geometry, false if the vertex normals are set
+ * explicitly.
+ */
+ public get autoDeriveNormals():boolean
+ {
+ return this._autoDeriveNormals;
+ }
+
+ public set autoDeriveNormals(value:boolean)
+ {
+ if (this._autoDeriveNormals == value)
+ return;
+
+ this._autoDeriveNormals = value;
+
+ if (value)
+ this.notifyNormalsUpdate();
+ }
+
+ /**
+ * True if the vertex tangents should be derived from the geometry, false if the vertex normals are set
+ * explicitly.
+ */
+ public get autoDeriveTangents():boolean
+ {
+ return this._autoDeriveTangents;
+ }
+
+ public set autoDeriveTangents(value:boolean)
+ {
+ if (this._autoDeriveTangents == value)
+ return;
+
+ this._autoDeriveTangents = value;
+
+ if (value)
+ this.notifyTangentsUpdate();
+ }
+
+ /**
+ *
+ */
+ public get vertices():Array
+ {
+ if (this._positionsDirty)
+ this.updatePositions(this._positions);
+
+ if (this._vertexNormalsDirty)
+ this.updateVertexNormals(this._vertexNormals);
+
+ if (this._vertexTangentsDirty)
+ this.updateVertexTangents(this._vertexTangents);
+
+ if (this._uvsDirty)
+ this.updateUVs(this._uvs);
+
+ if (this._secondaryUVsDirty)
+ this.updateSecondaryUVs(this._secondaryUVs);
+
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ if (this._jointWeightsDirty)
+ this.updateJointWeights(this._jointWeights);
+
+ return this._pVertices;
+ }
+
+ /**
+ *
+ */
+ public get positions():Array
+ {
+ if (this._positionsDirty)
+ this.updatePositions(this._positions);
+
+ return this._positions;
+ }
+
+ /**
+ *
+ */
+ public get vertexNormals():Array
+ {
+ if (this._vertexNormalsDirty)
+ this.updateVertexNormals(this._vertexNormals);
+
+ return this._vertexNormals;
+ }
+
+ /**
+ *
+ */
+ public get vertexTangents():Array
+ {
+ if (this._vertexTangentsDirty)
+ this.updateVertexTangents(this._vertexTangents);
+
+ return this._vertexTangents;
+ }
+
+ /**
+ * The raw data of the face normals, in the same order as the faces are listed in the index list.
+ */
+ public get faceNormals():Array
+ {
+ if (this._faceNormalsDirty)
+ this.updateFaceNormals();
+
+ return this._faceNormals;
+ }
+
+ /**
+ * The raw data of the face tangets, in the same order as the faces are listed in the index list.
+ */
+ public get faceTangents():Array
+ {
+ if (this._faceTangentsDirty)
+ this.updateFaceTangents();
+
+ return this._faceTangents;
+ }
+
+ /**
+ *
+ */
+ public get uvs():Array
+ {
+ if (this._uvsDirty)
+ this.updateUVs(this._uvs);
+
+ return this._uvs;
+ }
+
+ /**
+ *
+ */
+ public get secondaryUVs():Array
+ {
+ if (this._secondaryUVsDirty)
+ this.updateSecondaryUVs(this._secondaryUVs);
+
+ return this._secondaryUVs;
+ }
+
+ /**
+ *
+ */
+ public get jointIndices():Array
+ {
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ if (this._useCondensedIndices)
+ return this._condensedJointIndices;
+
+ return this._jointIndices;
+ }
+
+ /**
+ *
+ */
+ public get jointWeights():Array
+ {
+ if (this._jointWeightsDirty)
+ this.updateJointWeights(this._jointWeights);
+
+ return this._jointWeights;
+ }
+
+ /**
+ * Indicates whether or not to take the size of faces into account when auto-deriving vertex normals and tangents.
+ */
+ public get useFaceWeights():boolean
+ {
+ return this._useFaceWeights;
+ }
+
+ public set useFaceWeights(value:boolean)
+ {
+ if (this._useFaceWeights == value)
+ return;
+
+ this._useFaceWeights = value;
+
+ if (this._autoDeriveNormals)
+ this.notifyNormalsUpdate();
+
+ if (this._autoDeriveTangents)
+ this.notifyTangentsUpdate();
+
+ this._faceNormalsDirty = true;
+ }
+
+ public get numCondensedJoints():number
+ {
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ return this._numCondensedJoints;
+ }
+
+ public get condensedIndexLookUp():Array
+ {
+ if (this._jointIndicesDirty)
+ this.updateJointIndices(this._jointIndices);
+
+ return this._condensedIndexLookUp;
+ }
+
+ /**
+ *
+ */
+ constructor(concatenatedArrays:boolean)
+ {
+ super(concatenatedArrays);
+
+ this._pSubMeshClass = TriangleSubMesh;
+ }
+
+ public getBoundingPositions():Array
+ {
+ if (this._positionsDirty)
+ this.updatePositions(this._positions);
+
+ return this._positions;
+ }
+
+ /**
+ *
+ */
+ public updatePositions(values:Array)
+ {
+ var i:number;
+ var index:number;
+ var stride:number;
+ var positions:Array;
+
+ this._positions = values;
+
+ if (this._positions == null)
+ this._positions = new Array();
+
+ this._pNumVertices = this._positions.length/3;
+
+ if (this._concatenateArrays) {
+ var len:number = this._pNumVertices*this.getStride(TriangleSubGeometry.VERTEX_DATA);
+
+ if (this._pVertices == null)
+ this._pVertices = new Array(len);
+ else if (this._pVertices.length != len)
+ this._pVertices.length = len;
+
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.POSITION_DATA);
+ stride = this.getStride(TriangleSubGeometry.POSITION_DATA);
+ positions = this._pVertices;
+
+ while (i < values.length) {
+ positions[index] = values[i++];
+ positions[index + 1] = values[i++];
+ positions[index + 2] = values[i++];
+ index += stride;
+ }
+ }
+
+ if (this._autoDeriveNormals)
+ this.notifyNormalsUpdate();
+
+ if (this._autoDeriveTangents)
+ this.notifyTangentsUpdate();
+
+ if (this._autoDeriveUVs)
+ this.notifyUVsUpdate()
+
+ this.pInvalidateBounds();
+
+ this.notifyPositionsUpdate();
+
+ this._positionsDirty = false;
+ }
+
+ /**
+ * Updates the vertex normals based on the geometry.
+ */
+ public updateVertexNormals(values:Array)
+ {
+ var i:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var normals:Array;
+
+ if (!this._autoDeriveNormals) {
+ if ((this._vertexNormals == null || values == null) && (this._vertexNormals != null || values != null)) {
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ this._vertexNormals = values;
+
+ if (values != null && this._concatenateArrays) {
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.NORMAL_DATA);
+ stride = this.getStride(TriangleSubGeometry.NORMAL_DATA);
+ normals = this._pVertices;
+
+ while (i < values.length) {
+ normals[index] = values[i++];
+ normals[index + 1] = values[i++];
+ normals[index + 2] = values[i++];
+ index += stride;
+ }
+ }
+ } else {
+ if (this._vertexNormals == null) {
+ this._vertexNormals = new Array(this._positions.length);
+
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ if (this._faceNormalsDirty)
+ this.updateFaceNormals();
+
+ offset = this.getOffset(TriangleSubGeometry.NORMAL_DATA);
+ stride = this.getStride(TriangleSubGeometry.NORMAL_DATA);
+
+ //autoderived normals
+ normals = this._concatenateArrays? this._pVertices : this._vertexNormals;
+
+ var f1:number = 0;
+ var f2:number = 1;
+ var f3:number = 2;
+
+ index = offset;
+
+ //clear normal values
+ var lenV:number = normals.length;
+ while (index < lenV) {
+ normals[index] = 0;
+ normals[index + 1] = 0;
+ normals[index + 2] = 0;
+ index += stride;
+ }
+
+ var k:number = 0;
+ var lenI:number = this._pIndices.length;
+ var weight:number;
+
+ i = 0;
+
+ //collect face normals
+ while (i < lenI) {
+ weight = this._useFaceWeights? this._faceWeights[k++] : 1;
+ index = offset + this._pIndices[i++]*stride;
+ normals[index] += this._faceNormals[f1]*weight;
+ normals[index + 1] += this._faceNormals[f2]*weight;
+ normals[index + 2] += this._faceNormals[f3]*weight;
+ index = offset + this._pIndices[i++]*stride;
+ normals[index] += this._faceNormals[f1]*weight;
+ normals[index + 1] += this._faceNormals[f2]*weight;
+ normals[index + 2] += this._faceNormals[f3]*weight;
+ index = offset + this._pIndices[i++]*stride;
+ normals[index] += this._faceNormals[f1]*weight;
+ normals[index + 1] += this._faceNormals[f2]*weight;
+ normals[index + 2] += this._faceNormals[f3]*weight;
+ f1 += 3;
+ f2 += 3;
+ f3 += 3;
+ }
+
+ i = 0;
+ index = offset;
+
+ //average normals collections
+ while (index < lenV) {
+ var vx:number = normals[index];
+ var vy:number = normals[index + 1];
+ var vz:number = normals[index + 2];
+ var d:number = 1.0/Math.sqrt(vx*vx + vy*vy + vz*vz);
+
+ if (this._concatenateArrays) {
+ this._vertexNormals[i++] = normals[index] = vx*d;
+ this._vertexNormals[i++] = normals[index + 1] = vy*d;
+ this._vertexNormals[i++] = normals[index + 2] = vz*d;
+ } else {
+ normals[index] = vx*d;
+ normals[index + 1] = vy*d;
+ normals[index + 2] = vz*d;
+ }
+
+ index += stride;
+ }
+ }
+
+ this.notifyNormalsUpdate();
+
+ this._vertexNormalsDirty = false;
+ }
+
+ /**
+ * Updates the vertex tangents based on the geometry.
+ */
+ public updateVertexTangents(values:Array)
+ {
+ var i:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var tangents:Array;
+
+ if (!this._autoDeriveTangents) {
+ if ((this._vertexTangents == null || values == null) && (this._vertexTangents != null || values != null)) {
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+
+ this._vertexTangents = values;
+
+ if (values != null && this._concatenateArrays) {
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.TANGENT_DATA);
+ stride = this.getStride(TriangleSubGeometry.TANGENT_DATA);
+ tangents = this._pVertices;
+
+ while (i < values.length) {
+ tangents[index] = values[i++];
+ tangents[index + 1] = values[i++];
+ tangents[index + 2] = values[i++];
+ index += stride;
+ }
+ }
+ } else {
+ if (this._vertexTangents == null) {
+ this._vertexTangents = new Array(this._positions.length);
+
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ if (this._faceTangentsDirty)
+ this.updateFaceTangents();
+
+ offset = this.getOffset(TriangleSubGeometry.TANGENT_DATA);
+ stride = this.getStride(TriangleSubGeometry.TANGENT_DATA);
+
+ //autoderived tangents
+ tangents = this._concatenateArrays? this._pVertices : this._vertexTangents;
+
+ index = offset;
+
+ //clear tangent values
+ var lenV:number = tangents.length;
+ while (index < lenV) {
+ tangents[index] = 0;
+ tangents[index + 1] = 0;
+ tangents[index + 2] = 0;
+
+ index += stride;
+ }
+
+ var k:number = 0;
+ var weight:number;
+ var f1:number = 0;
+ var f2:number = 1;
+ var f3:number = 2;
+
+ i = 0;
+
+ //collect face tangents
+ var lenI:number = this._pIndices.length;
+ while (i < lenI) {
+ weight = this._useFaceWeights? this._faceWeights[k++] : 1;
+ index = offset + this._pIndices[i++]*stride;
+ tangents[index++] += this._faceTangents[f1]*weight;
+ tangents[index++] += this._faceTangents[f2]*weight;
+ tangents[index] += this._faceTangents[f3]*weight;
+ index = offset + this._pIndices[i++]*stride;
+ tangents[index++] += this._faceTangents[f1]*weight;
+ tangents[index++] += this._faceTangents[f2]*weight;
+ tangents[index] += this._faceTangents[f3]*weight;
+ index = offset + this._pIndices[i++]*stride;
+ tangents[index++] += this._faceTangents[f1]*weight;
+ tangents[index++] += this._faceTangents[f2]*weight;
+ tangents[index] += this._faceTangents[f3]*weight;
+ f1 += 3;
+ f2 += 3;
+ f3 += 3;
+ }
+
+ i = 0;
+ index = offset;
+
+ //average tangents collections
+ while (index < lenV) {
+ var vx:number = tangents[index];
+ var vy:number = tangents[index + 1];
+ var vz:number = tangents[index + 2];
+ var d:number = 1.0/Math.sqrt(vx*vx + vy*vy + vz*vz);
+
+ if (this._concatenateArrays) {
+ this._vertexTangents[i++] = tangents[index] = vx*d;
+ this._vertexTangents[i++] = tangents[index + 1] = vy*d;
+ this._vertexTangents[i++] = tangents[index + 2] = vz*d;
+ } else {
+ tangents[index] = vx*d;
+ tangents[index + 1] = vy*d;
+ tangents[index + 2] = vz*d;
+ }
+
+ index += stride;
+ }
+ }
+
+ this.notifyTangentsUpdate();
+
+ this._vertexTangentsDirty = false;
+ }
+
+ /**
+ * Updates the uvs based on the geometry.
+ */
+ public updateUVs(values:Array)
+ {
+ var i:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var uvs:Array;
+
+ if (!this._autoDeriveUVs) {
+ if ((this._uvs == null || values == null) && (this._uvs != null || values != null)) {
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ this._uvs = values;
+
+ if (values != null && this._concatenateArrays) {
+ i = 0;
+ index = this.getOffset(TriangleSubGeometry.UV_DATA);
+ stride = this.getStride(TriangleSubGeometry.UV_DATA);
+ uvs = this._pVertices;
+
+ while (i < values.length) {
+ uvs[index] = values[i++];
+ uvs[index + 1] = values[i++];
+ index += stride;
+ }
+ }
+
+ } else {
+ if (this._uvs == null) {
+ this._uvs = new Array(this._positions.length*2/3);
+
+ if (this._concatenateArrays)
+ this._pNotifyVerticesUpdate();
+ else
+ this._pStrideOffsetDirty = true;
+ }
+
+ offset = this.getOffset(TriangleSubGeometry.UV_DATA);
+ stride = this.getStride(TriangleSubGeometry.UV_DATA);
+
+ //autoderived uvs
+ uvs = this._concatenateArrays? this._pVertices : this._uvs;
+
+ i = 0;
+ index = offset;
+ var uvIdx:number = 0;
+
+ //clear uv values
+ var lenV:number = uvs.length;
+ while (index < lenV) {
+ if (this._concatenateArrays) {
+ this._uvs[i++] = uvs[index] = uvIdx*.5;
+ this._uvs[i++] = uvs[index + 1] = 1.0 - (uvIdx & 1);
+ } else {
+ uvs[index] = uvIdx*.5;
+ uvs[index + 1] = 1.0 - (uvIdx & 1);
+ }
+
+ if (++uvIdx == 3)
+ uvIdx = 0;
+
+ index += stride;
+ }
+ }
+
+ if (this._autoDeriveTangents)
+ this.notifyTangentsUpdate();
+
+ this.notifyUVsUpdate();
+
+ this._uvsDirty = false;
+ }
+
+ /**
+ * Updates the secondary uvs based on the geometry.
+ */
+ public updateSecondaryUVs(values:Array)
+ {
+ var i:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var uvs:Array;
+
+ if (this._concatenateArrays && (this._secondaryUVs == null || values == null) && (this._secondaryUVs != null || values != null))
+ this._pNotifyVerticesUpdate();
+
+ this._secondaryUVs = values;
+
+ if (values != null && this._concatenateArrays) {
+ offset = this.getOffset(TriangleSubGeometry.SECONDARY_UV_DATA);
+ stride = this.getStride(TriangleSubGeometry.SECONDARY_UV_DATA);
+
+ i = 0;
+ index = offset;
+ uvs = this._pVertices;
+
+ while (i < values.length) {
+ uvs[index] = values[i++];
+ uvs[index + 1] = values[i++];
+ index += stride;
+ }
+ }
+
+ this.notifySecondaryUVsUpdate();
+
+ this._secondaryUVsDirty = false;
+ }
+
+ /**
+ * Updates the joint indices
+ */
+ public updateJointIndices(values:Array)
+ {
+ var i:number;
+ var j:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var jointIndices:Array;
+
+ if (this._concatenateArrays && (this._jointIndices == null || values == null) && (this._jointIndices != null || values != null))
+ this._pNotifyVerticesUpdate();
+
+ this._jointIndices = values;
+
+ if (values != null) {
+ offset = this.getOffset(TriangleSubGeometry.JOINT_INDEX_DATA);
+ stride = this.getStride(TriangleSubGeometry.JOINT_INDEX_DATA);
+ if (this._useCondensedIndices) {
+ i = 0;
+ j = 0;
+ index = offset;
+ jointIndices = this._concatenateArrays? this._pVertices : this._condensedJointIndices;
+ var oldIndex:number;
+ var newIndex:number = 0;
+ var dic:Object = new Object();
+
+ if (!this._concatenateArrays)
+ this._condensedJointIndices = new Array(values.length);
+
+ this._condensedIndexLookUp = new Array();
+
+ while (i < values.length) {
+ for (j = 0; j < this._jointsPerVertex; j++) {
+ oldIndex = values[i++];
+
+ // if we encounter a new index, assign it a new condensed index
+ if (dic[oldIndex] == undefined) {
+ dic[oldIndex] = newIndex*3; //3 required for the three vectors that store the matrix
+ this._condensedIndexLookUp[newIndex++] = oldIndex;
+ }
+ jointIndices[index + j] = dic[oldIndex];
+ }
+ index += stride;
+ }
+ this._numCondensedJoints = newIndex;
+ } else if (this._concatenateArrays) {
+
+ i = 0;
+ index = offset;
+ jointIndices = this._pVertices;
+
+ while (i < values.length) {
+ j = 0;
+ while (j < this._jointsPerVertex)
+ jointIndices[index + j++] = values[i++];
+ index += stride;
+ }
+ }
+ }
+
+ this.notifyJointIndicesUpdate();
+
+ this._jointIndicesDirty = false;
+ }
+
+ /**
+ * Updates the joint weights.
+ */
+ public updateJointWeights(values:Array)
+ {
+ var i:number;
+ var j:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var jointWeights:Array;
+
+ if (this._concatenateArrays && (this._jointWeights == null || values == null) && (this._jointWeights != null || values != null))
+ this._pNotifyVerticesUpdate();
+
+ this._jointWeights = values;
+
+ if (values != null && this._concatenateArrays) {
+ offset = this.getOffset(TriangleSubGeometry.JOINT_WEIGHT_DATA);
+ stride = this.getStride(TriangleSubGeometry.JOINT_WEIGHT_DATA);
+
+ i = 0;
+ index = offset;
+ jointWeights = this._pVertices;
+
+ while (i < values.length) {
+ j = 0;
+ while (j < this._jointsPerVertex)
+ jointWeights[index + j++] = values[i++];
+ index += stride;
+ }
+ }
+
+ this.notifyJointWeightsUpdate();
+
+ this._jointWeightsDirty = false;
+ }
+
+ /**
+ *
+ */
+ public dispose()
+ {
+ super.dispose();
+
+ this._positions = null;
+ this._vertexNormals = null;
+ this._vertexTangents = null;
+ this._uvs = null;
+ this._secondaryUVs = null;
+ this._jointIndices = null;
+ this._jointWeights = null;
+
+ this._faceNormals = null;
+ this._faceWeights = null;
+ this._faceTangents = null;
+ }
+
+ /**
+ * Updates the face indices of the TriangleSubGeometry.
+ *
+ * @param indices The face indices to upload.
+ */
+ public updateIndices(indices:Array)
+ {
+ super.updateIndices(indices);
+
+ this._faceNormalsDirty = true;
+
+ if (this._autoDeriveNormals)
+ this._vertexNormalsDirty = true;
+
+ if (this._autoDeriveTangents)
+ this._vertexTangentsDirty = true;
+
+ if (this._autoDeriveUVs)
+ this._uvsDirty = true;
+ }
+
+ /**
+ * Clones the current object
+ * @return An exact duplicate of the current object.
+ */
+ public clone():TriangleSubGeometry
+ {
+ var clone:TriangleSubGeometry = new TriangleSubGeometry(this._concatenateArrays);
+ clone.updateIndices(this._pIndices.concat());
+ clone.updatePositions(this._positions.concat());
+
+ if (this._vertexNormals && !this._autoDeriveNormals)
+ clone.updateVertexNormals(this._vertexNormals.concat());
+ else
+ clone.updateVertexNormals(null);
+
+ if (this._uvs && !this._autoDeriveUVs)
+ clone.updateUVs(this._uvs.concat());
+ else
+ clone.updateUVs(null);
+
+ if (this._vertexTangents && !this._autoDeriveTangents)
+ clone.updateVertexTangents(this._vertexTangents.concat());
+ else
+ clone.updateVertexTangents(null);
+
+ if (this._secondaryUVs)
+ clone.updateSecondaryUVs(this._secondaryUVs.concat());
+
+ if (this._jointIndices) {
+ clone.jointsPerVertex = this._jointsPerVertex;
+ clone.updateJointIndices(this._jointIndices.concat());
+ }
+
+ if (this._jointWeights)
+ clone.updateJointWeights(this._jointWeights.concat());
+
+ return clone;
+ }
+
+ public scaleUV(scaleU:number = 1, scaleV:number = 1)
+ {
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var uvs:Array;
+
+ uvs = this._uvs;
+
+ var ratioU:number = scaleU/this._scaleU;
+ var ratioV:number = scaleV/this._scaleV;
+
+ this._scaleU = scaleU;
+ this._scaleV = scaleV;
+
+ var len:number = uvs.length;
+
+ offset = 0;
+ stride = 2;
+
+ index = offset;
+
+ while (index < len) {
+ uvs[index] *= ratioU;
+ uvs[index + 1] *= ratioV;
+ index += stride;
+ }
+
+ this.notifyUVsUpdate();
+ }
+
+ /**
+ * Scales the geometry.
+ * @param scale The amount by which to scale.
+ */
+ public scale(scale:number)
+ {
+ var i:number;
+ var index:number;
+ var offset:number;
+ var stride:number;
+ var positions:Array;
+
+ positions = this._positions;
+
+ var len:number = positions.length;
+
+ offset = 0;
+ stride = 3;
+
+ i = 0;
+ index = offset;
+ while (i < len) {
+ positions[index] *= scale;
+ positions[index + 1] *= scale;
+ positions[index + 2] *= scale;
+
+ i += 3;
+ index += stride;
+ }
+
+ this.notifyPositionsUpdate();
+ }
+
+ public applyTransformation(transform:away.geom.Matrix3D)
+ {
+ var positions:Array;
+ var normals:Array;
+ var tangents:Array;
+
+ if (this._concatenateArrays) {
+ positions = this._pVertices;
+ normals = this._pVertices;
+ tangents = this._pVertices;
+ } else {
+ positions = this._positions;
+ normals = this._vertexNormals;
+ tangents = this._vertexTangents;
+ }
+
+ var len:number = this._positions.length/3;
+ var i:number;
+ var i1:number;
+ var i2:number;
+ var vector:away.geom.Vector3D = new away.geom.Vector3D();
+
+ var bakeNormals:boolean = this._vertexNormals != null;
+ var bakeTangents:boolean = this._vertexTangents != null;
+ var invTranspose:away.geom.Matrix3D;
+
+ if (bakeNormals || bakeTangents) {
+ invTranspose = transform.clone();
+ invTranspose.invert();
+ invTranspose.transpose();
+ }
+
+ var vi0:number = this.getOffset(TriangleSubGeometry.POSITION_DATA);
+ var ni0:number = this.getOffset(TriangleSubGeometry.NORMAL_DATA);
+ var ti0:number = this.getOffset(TriangleSubGeometry.TANGENT_DATA);
+
+ var vStride:number = this.getStride(TriangleSubGeometry.POSITION_DATA);
+ var nStride:number = this.getStride(TriangleSubGeometry.NORMAL_DATA);
+ var tStride:number = this.getStride(TriangleSubGeometry.TANGENT_DATA);
+
+ for (i = 0; i < len; ++i) {
+ i1 = vi0 + 1;
+ i2 = vi0 + 2;
+
+ // bake position
+ vector.x = positions[vi0];
+ vector.y = positions[i1];
+ vector.z = positions[i2];
+ vector = transform.transformVector(vector);
+ positions[vi0] = vector.x;
+ positions[i1] = vector.y;
+ positions[i2] = vector.z;
+ vi0 += vStride;
+
+ // bake normal
+ if (bakeNormals) {
+ i1 = ni0 + 1;
+ i2 = ni0 + 2;
+ vector.x = normals[ni0];
+ vector.y = normals[i1];
+ vector.z = normals[i2];
+ vector = invTranspose.deltaTransformVector(vector);
+ vector.normalize();
+ normals[ni0] = vector.x;
+ normals[i1] = vector.y;
+ normals[i2] = vector.z;
+ ni0 += nStride;
+ }
+
+ // bake tangent
+ if (bakeTangents) {
+ i1 = ti0 + 1;
+ i2 = ti0 + 2;
+ vector.x = tangents[ti0];
+ vector.y = tangents[i1];
+ vector.z = tangents[i2];
+ vector = invTranspose.deltaTransformVector(vector);
+ vector.normalize();
+ tangents[ti0] = vector.x;
+ tangents[i1] = vector.y;
+ tangents[i2] = vector.z;
+ ti0 += tStride;
+ }
+ }
+
+ this.notifyPositionsUpdate();
+ this.notifyNormalsUpdate();
+ this.notifyTangentsUpdate();
+ }
+
+ /**
+ * Updates the tangents for each face.
+ */
+ private updateFaceTangents()
+ {
+ var i:number = 0;
+ var index1:number;
+ var index2:number;
+ var index3:number;
+ var vi:number;
+ var v0:number;
+ var dv1:number;
+ var dv2:number;
+ var denom:number;
+ var x0:number, y0:number, z0:number;
+ var dx1:number, dy1:number, dz1:number;
+ var dx2:number, dy2:number, dz2:number;
+ var cx:number, cy:number, cz:number;
+
+ var positions:Array = this._positions
+ var uvs:Array = this._uvs;
+
+ var len:number = this._pIndices.length;
+
+ if (this._faceTangents == null)
+ this._faceTangents = new Array(len);
+
+ while (i < len) {
+ index1 = this._pIndices[i];
+ index2 = this._pIndices[i + 1];
+ index3 = this._pIndices[i + 2];
+
+ v0 = uvs[index1*2 + 1];
+ dv1 = uvs[index2*2 + 1] - v0;
+ dv2 = uvs[index3*2 + 1] - v0;
+
+ vi = index1*3;
+ x0 = positions[vi];
+ y0 = positions[vi + 1];
+ z0 = positions[vi + 2];
+ vi = index2*3;
+ dx1 = positions[vi] - x0;
+ dy1 = positions[vi + 1] - y0;
+ dz1 = positions[vi + 2] - z0;
+ vi = index3*3;
+ dx2 = positions[vi] - x0;
+ dy2 = positions[vi + 1] - y0;
+ dz2 = positions[vi + 2] - z0;
+
+ cx = dv2*dx1 - dv1*dx2;
+ cy = dv2*dy1 - dv1*dy2;
+ cz = dv2*dz1 - dv1*dz2;
+ denom = 1/Math.sqrt(cx*cx + cy*cy + cz*cz);
+
+ this._faceTangents[i++] = denom*cx;
+ this._faceTangents[i++] = denom*cy;
+ this._faceTangents[i++] = denom*cz;
+ }
+
+ this._faceTangentsDirty = false;
+ }
+
+ /**
+ * Updates the normals for each face.
+ */
+ private updateFaceNormals()
+ {
+ var i:number = 0;
+ var j:number = 0;
+ var k:number = 0;
+ var index:number;
+ var offset:number;
+ var stride:number;
+
+ var x1:number, x2:number, x3:number;
+ var y1:number, y2:number, y3:number;
+ var z1:number, z2:number, z3:number;
+ var dx1:number, dy1:number, dz1:number;
+ var dx2:number, dy2:number, dz2:number;
+ var cx:number, cy:number, cz:number;
+ var d:number;
+
+ var positions:Array = this._positions;
+
+ var len:number = this._pIndices.length;
+
+ if (this._faceNormals == null)
+ this._faceNormals = new Array(len);
+
+ if (this._useFaceWeights && this._faceWeights == null)
+ this._faceWeights = new Array(len/3);
+
+ while (i < len) {
+ index = this._pIndices[i++]*3;
+ x1 = positions[index];
+ y1 = positions[index + 1];
+ z1 = positions[index + 2];
+ index = this._pIndices[i++]*3;
+ x2 = positions[index];
+ y2 = positions[index + 1];
+ z2 = positions[index + 2];
+ index = this._pIndices[i++]*3;
+ x3 = positions[index];
+ y3 = positions[index + 1];
+ z3 = positions[index + 2];
+ dx1 = x3 - x1;
+ dy1 = y3 - y1;
+ dz1 = z3 - z1;
+ dx2 = x2 - x1;
+ dy2 = y2 - y1;
+ dz2 = z2 - z1;
+ cx = dz1*dy2 - dy1*dz2;
+ cy = dx1*dz2 - dz1*dx2;
+ cz = dy1*dx2 - dx1*dy2;
+ d = Math.sqrt(cx*cx + cy*cy + cz*cz);
+ // length of cross product = 2*triangle area
+
+ if (this._useFaceWeights) {
+ var w:number = d*10000;
+
+ if (w < 1)
+ w = 1;
+
+ this._faceWeights[k++] = w;
+ }
+
+ d = 1/d;
+
+ this._faceNormals[j++] = cx*d;
+ this._faceNormals[j++] = cy*d;
+ this._faceNormals[j++] = cz*d;
+ }
+
+ this._faceNormalsDirty = false;
+ }
+
+ public _pNotifyVerticesUpdate()
+ {
+ this._pStrideOffsetDirty = true;
+
+ this.notifyPositionsUpdate();
+ this.notifyNormalsUpdate();
+ this.notifyTangentsUpdate();
+ this.notifyUVsUpdate();
+ this.notifySecondaryUVsUpdate();
+ this.notifyJointIndicesUpdate();
+ this.notifyJointWeightsUpdate();
+ }
+
+ private notifyPositionsUpdate()
+ {
+ if (this._positionsDirty)
+ return;
+
+ this._positionsDirty = true;
+
+ if (!this._positionsUpdated)
+ this._positionsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.POSITION_DATA);
+
+ this.dispatchEvent(this._positionsUpdated);
+ }
+
+ private notifyNormalsUpdate()
+ {
+ if (this._vertexNormalsDirty)
+ return;
+
+ this._vertexNormalsDirty = true;
+
+ if (!this._normalsUpdated)
+ this._normalsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.NORMAL_DATA);
+
+ this.dispatchEvent(this._normalsUpdated);
+ }
+
+ private notifyTangentsUpdate()
+ {
+ if (this._vertexTangentsDirty)
+ return;
+
+ this._vertexTangentsDirty = true;
+
+ if (!this._tangentsUpdated)
+ this._tangentsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.TANGENT_DATA);
+
+ this.dispatchEvent(this._tangentsUpdated);
+ }
+
+ private notifyUVsUpdate()
+ {
+ if (this._uvsDirty)
+ return;
+
+ this._uvsDirty = true;
+
+ if (!this._uvsUpdated)
+ this._uvsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.UV_DATA);
+
+ this.dispatchEvent(this._uvsUpdated);
+ }
+
+ private notifySecondaryUVsUpdate()
+ {
+ if (this._secondaryUVsDirty)
+ return;
+
+ this._secondaryUVsDirty = true;
+
+ if (!this._secondaryUVsUpdated)
+ this._secondaryUVsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.SECONDARY_UV_DATA);
+
+ this.dispatchEvent(this._secondaryUVsUpdated);
+ }
+
+ private notifyJointIndicesUpdate()
+ {
+ if (this._jointIndicesDirty)
+ return;
+
+ this._jointIndicesDirty = true;
+
+ if (!this._jointIndicesUpdated)
+ this._jointIndicesUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.JOINT_INDEX_DATA);
+
+ this.dispatchEvent(this._jointIndicesUpdated);
+ }
+
+ private notifyJointWeightsUpdate()
+ {
+ if (this._jointWeightsDirty)
+ return;
+
+ this._jointWeightsDirty = true;
+
+ if (!this._jointWeightsUpdated)
+ this._jointWeightsUpdated = new away.events.SubGeometryEvent(away.events.SubGeometryEvent.VERTICES_UPDATED, TriangleSubGeometry.JOINT_WEIGHT_DATA);
+
+ this.dispatchEvent(this._jointWeightsUpdated);
+ }
+ }
+}
diff --git a/src/away/core/base/TriangleSubMesh.ts b/src/away/core/base/TriangleSubMesh.ts
new file mode 100644
index 00000000..485ef817
--- /dev/null
+++ b/src/away/core/base/TriangleSubMesh.ts
@@ -0,0 +1,65 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.base
+{
+ /**
+ * TriangleSubMesh wraps a TriangleSubGeometry as a scene graph instantiation. A TriangleSubMesh is owned by a Mesh object.
+ *
+ *
+ * @see away.base.TriangleSubGeometry
+ * @see away.entities.Mesh
+ *
+ * @class away.base.TriangleSubMesh
+ */
+ export class TriangleSubMesh extends SubMeshBase implements ISubMesh
+ {
+ private _subGeometry:TriangleSubGeometry;
+
+ /**
+ *
+ */
+ public get assetType():string
+ {
+ return away.library.AssetType.TRIANGLE_SUB_MESH;
+ }
+
+ /**
+ * The TriangleSubGeometry object which provides the geometry data for this TriangleSubMesh.
+ */
+ public get subGeometry():TriangleSubGeometry
+ {
+ return this._subGeometry;
+ }
+
+ /**
+ * Creates a new TriangleSubMesh object
+ * @param subGeometry The TriangleSubGeometry object which provides the geometry data for this TriangleSubMesh.
+ * @param parentMesh The Mesh object to which this TriangleSubMesh belongs.
+ * @param material An optional material used to render this TriangleSubMesh.
+ */
+ constructor(subGeometry:TriangleSubGeometry, parentMesh:away.entities.Mesh, material:away.materials.IMaterial = null)
+ {
+ super();
+
+ this._pParentMesh = parentMesh;
+ this._subGeometry = subGeometry;
+ this.material = material;
+ }
+
+ /**
+ *
+ */
+ public dispose()
+ {
+ super.dispose();
+ }
+
+ public _iCollectRenderable(renderer:away.render.IRenderer)
+ {
+ renderer.applyTriangleSubMesh(this);
+ }
+ }
+}
diff --git a/src/away/core/geom/UVTransform.ts b/src/away/core/geom/UVTransform.ts
index cb74cd2c..5e1d43d1 100644
--- a/src/away/core/geom/UVTransform.ts
+++ b/src/away/core/geom/UVTransform.ts
@@ -4,10 +4,10 @@ module away.geom
{
export class UVTransform
{
- private _materialOwner:away.base.IMaterialOwner;
private _uvMatrix:away.geom.Matrix = new away.geom.Matrix();
private _uvMatrixDirty:boolean;
- private _rotationUV:number = 0;
+
+ private _rotation:number = 0;
private _scaleU:number = 1;
private _scaleV:number = 1;
private _offsetU:number = 0;
@@ -51,17 +51,17 @@ module away.geom
/**
*
*/
- public get rotationUV():number
+ public get rotation():number
{
- return this._rotationUV;
+ return this._rotation;
}
- public set rotationUV(value:number)
+ public set rotation(value:number)
{
- if (value == this._rotationUV)
+ if (value == this._rotation)
return;
- this._rotationUV = value;
+ this._rotation = value;
this._uvMatrixDirty = true;
}
@@ -113,11 +113,11 @@ module away.geom
return this._uvMatrix;
}
- constructor(materialOwner:away.base.IMaterialOwner)
+ constructor()
{
- this._materialOwner = materialOwner;
}
+
/**
* @private
*/
@@ -125,17 +125,15 @@ module away.geom
{
this._uvMatrix.identity();
- if (this._rotationUV != 0)
- this._uvMatrix.rotate(this._rotationUV);
+ if (this._rotation != 0)
+ this._uvMatrix.rotate(this._rotation);
if (this._scaleU != 1 || this._scaleV != 1)
this._uvMatrix.scale(this._scaleU, this._scaleV);
this._uvMatrix.translate(this._offsetU, this._offsetV);
- this._uvMatrixDirty = false;
- //TODO stop being lazy and provide proper matrix decomposition on the other side
- this._materialOwner._iSetUVMatrixComponents(this._offsetU, this._offsetV, this._scaleU, this._scaleV, this._rotationUV);
+ this._uvMatrixDirty = false;
}
}
}
diff --git a/src/away/core/gl/ContextGL.ts b/src/away/core/gl/ContextGL.ts
index 48e3a5c1..33457f46 100644
--- a/src/away/core/gl/ContextGL.ts
+++ b/src/away/core/gl/ContextGL.ts
@@ -178,6 +178,8 @@ module away.gl
public setBlendFactors(sourceFactor:string, destinationFactor:string)
{
+ //TODO optimise with table lookup
+
this._blendEnabled = true;
switch (sourceFactor) {
@@ -291,6 +293,8 @@ module away.gl
// TODO ContextGLCompareMode
public setDepthTest(depthMask:boolean, passCompareMode:string)
{
+ //TODO optimise with table lookup
+
switch (passCompareMode) {
case ContextGLCompareMode.ALWAYS:
this._gl.depthFunc(this._gl.ALWAYS);
@@ -559,12 +563,10 @@ module away.gl
var location:number = this._currentProgram? this._gl.getAttribLocation(this._currentProgram.glProgram, locationName) : -1;
if (!buffer) {
-
- if (location > -1) {
+ if (location > -1)
this._gl.disableVertexAttribArray(location);
- }
- return;
+ return;
}
this._gl.bindBuffer(this._gl.ARRAY_BUFFER, buffer.glBuffer);
diff --git a/src/away/core/gl/IndexData.ts b/src/away/core/gl/IndexData.ts
new file mode 100644
index 00000000..f4bb4211
--- /dev/null
+++ b/src/away/core/gl/IndexData.ts
@@ -0,0 +1,156 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.gl
+{
+ /**
+ *
+ */
+ export class IndexData
+ {
+ private static LIMIT_VERTS:number = 0xffff;
+
+ private static LIMIT_INDICES:number = 0xffffff;
+
+ private _dataDirty = true;
+
+ public invalid:Array = new Array(8);
+
+ public stageGLs:Array = new Array(8);
+
+ public buffers:Array = new Array(8);
+
+ public data:Array;
+
+ public indexMappings:Array;
+
+ public originalIndices:Array;
+
+ public offset:number;
+
+ constructor()
+ {
+ }
+
+ public updateData(offset:number, indices:Array, numVertices:number)
+ {
+ if (this._dataDirty) {
+ this._dataDirty = false;
+
+ if (indices.length < IndexData.LIMIT_INDICES && numVertices < IndexData.LIMIT_VERTS) {
+ //shortcut for those buffers that fit into the maximum buffer sizes
+ this.indexMappings = null;
+ this.originalIndices = null;
+ this.setData(indices);
+ this.offset = indices.length;
+ } else {
+ var i:number;
+ var len:number;
+ var outIndex:number;
+ var j:number;
+ var k:number;
+ var splitIndices:Array = new Array();
+
+ this.indexMappings = new Array(indices.length);
+ this.originalIndices = new Array();
+
+ i = this.indexMappings.length;
+
+ while (i--)
+ this.indexMappings[i] = -1;
+
+ var originalIndex:number;
+ var splitIndex:number;
+
+ // Loop over all triangles
+ outIndex = 0;
+ len = indices.length;
+ i = offset;
+ k = 0;
+ while (i < len && outIndex + 3 < IndexData.LIMIT_INDICES && k + 3 < IndexData.LIMIT_VERTS) {
+ // Loop over all vertices in a triangle //TODO ensure this works for segments or any grouping
+ for (j = 0; j < 3; j++) {
+
+ originalIndex = indices[i + j];
+
+ if (this.indexMappings[originalIndex] >= 0) {
+ splitIndex = this.indexMappings[originalIndex];
+ } else {
+
+ // This vertex does not yet exist in the split list and
+ // needs to be copied from the long list.
+ splitIndex = k++;
+ this.indexMappings[originalIndex] = splitIndex;
+ this.originalIndices.push(originalIndex);
+ }
+
+ // Store new index, which may have come from the mapping look-up,
+ // or from copying a new set of vertex data from the original vector
+ splitIndices[outIndex + j] = splitIndex;
+ }
+
+ outIndex += 3;
+ i += 3
+ }
+
+ this.setData(splitIndices);
+ this.offset = i;
+ }
+ }
+ }
+
+ public invalidateData()
+ {
+ this._dataDirty = true;
+ }
+
+ public dispose()
+ {
+ for (var i:number = 0; i < 8; ++i) {
+ if (this.stageGLs[i]) {
+ this.stageGLs[i].disposeIndexData(this);
+ this.stageGLs[i] = null
+ }
+ }
+ }
+
+ /**
+ * @private
+ */
+ private disposeBuffers()
+ {
+ for (var i:number = 0; i < 8; ++i) {
+ if (this.buffers[i]) {
+ this.buffers[i].dispose();
+ this.buffers[i] = null;
+ }
+ }
+ }
+
+ /**
+ * @private
+ */
+ private invalidateBuffers()
+ {
+ for (var i:number = 0; i < 8; ++i)
+ this.invalid[i] = true;
+ }
+
+ /**
+ *
+ * @param data
+ * @private
+ */
+ private setData(data:Array)
+ {
+ if (this.data && this.data.length != data.length)
+ this.disposeBuffers();
+ else
+ this.invalidateBuffers();
+
+ this.data = data;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/away/core/gl/IndexDataPool.ts b/src/away/core/gl/IndexDataPool.ts
new file mode 100644
index 00000000..f2d0847f
--- /dev/null
+++ b/src/away/core/gl/IndexDataPool.ts
@@ -0,0 +1,47 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.gl
+{
+ /**
+ *
+ */
+ export class IndexDataPool
+ {
+ private static _pool:Object = new Object();
+
+ constructor()
+ {
+ }
+
+ public static getItem(id:string, level:number):away.gl.IndexData
+ {
+ var subGeometryData:Array = > (IndexDataPool._pool[id] || (IndexDataPool._pool[id] = new Array()));
+
+ return subGeometryData[level] || (subGeometryData[level] = new IndexData());
+ }
+
+ public static disposeItem(id:string, level:number)
+ {
+ var subGeometryData:Array = > this._pool[id];
+
+ subGeometryData[level].dispose();
+ subGeometryData[level] = null;
+ }
+
+ public disposeData(id:string)
+ {
+ var subGeometryData:Array = > IndexDataPool._pool[id];
+
+ var len:number = subGeometryData.length;
+ for (var i:number = 0; i < len; i++) {
+ subGeometryData[i].dispose();
+ subGeometryData[i] = null;
+ }
+
+ IndexDataPool._pool[id] = null;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/away/core/gl/VertexData.ts b/src/away/core/gl/VertexData.ts
new file mode 100644
index 00000000..4f98ff92
--- /dev/null
+++ b/src/away/core/gl/VertexData.ts
@@ -0,0 +1,113 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.gl
+{
+ /**
+ *
+ */
+ export class VertexData
+ {
+ private _dataDirty = true;
+
+ public invalid:Array = new Array(8);
+
+ public buffers:Array = new Array(8);
+
+ public stageGLs:Array = new Array(8);
+
+ public data:Array;
+
+ public dataPerVertex:number;
+
+ constructor()
+ {
+ }
+
+ public updateData(vertices:Array, dataPerVertex:number, originalIndices:Array = null, indexMappings:Array = null)
+ {
+ if (this._dataDirty) {
+ this._dataDirty = false;
+
+ if (indexMappings == null) {
+ this.setData(vertices, dataPerVertex);
+ } else {
+ var splitVerts:Array = new Array(originalIndices.length*dataPerVertex);
+ var originalIndex:number;
+ var splitIndex:number;
+ var i:number = 0;
+ var j:number = 0;
+ while(i < originalIndices.length) {
+ originalIndex = originalIndices[i];
+
+ splitIndex = indexMappings[originalIndex]*dataPerVertex;
+ originalIndex *= dataPerVertex;
+
+ for (j = 0; j < dataPerVertex; j++)
+ splitVerts[splitIndex + j] = vertices[originalIndex + j];
+
+ i++;
+ }
+
+ this.setData(splitVerts, dataPerVertex);
+ }
+ }
+ }
+
+ public invalidateData()
+ {
+ this._dataDirty = true;
+ }
+
+ public dispose()
+ {
+ for (var i:number = 0; i < 8; ++i) {
+ if (this.stageGLs[i]) {
+ this.stageGLs[i].disposeVertexData(this);
+ this.stageGLs[i] = null;
+ }
+ }
+ }
+
+ /**
+ * @private
+ */
+ private disposeBuffers()
+ {
+ for (var i:number = 0; i < 8; ++i) {
+ if (this.buffers[i]) {
+ this.buffers[i].dispose();
+ this.buffers[i] = null;
+ }
+ }
+ }
+
+ /**
+ * @private
+ */
+ private invalidateBuffers()
+ {
+ for (var i:number = 0; i < 8; ++i)
+ this.invalid[i] = true;
+ }
+
+ /**
+ *
+ * @param data
+ * @param dataPerVertex
+ * @private
+ */
+ private setData(data:Array, dataPerVertex:number)
+ {
+ if (this.data && this.data.length != data.length)
+ this.disposeBuffers();
+ else
+ this.invalidateBuffers();
+
+ this.data = data;
+ this.dataPerVertex = dataPerVertex;
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/away/core/gl/VertexDataPool.ts b/src/away/core/gl/VertexDataPool.ts
new file mode 100644
index 00000000..7a1c1996
--- /dev/null
+++ b/src/away/core/gl/VertexDataPool.ts
@@ -0,0 +1,53 @@
+///
+
+/**
+ * @module away.base
+ */
+module away.gl
+{
+ /**
+ *
+ */
+ export class VertexDataPool
+ {
+ private static _pool:Object = new Object();
+
+ constructor()
+ {
+ }
+
+ public static getItem(id:string, level:number, dataType:string):away.gl.VertexData
+ {
+ var subGeometryDictionary:Object =