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: -* +* @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: +* +*/ +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: - *

- */ - (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,IA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AAIA,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,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;YACzvBA,CAACA;YACF/B,gBAACA;QAADA,CAACA,IAAA5C;QAnrBDA,yBAmrBCA;IACFA,CAACA,iCAAA3pB;yBAAAA;AAADA,CAACA,uBAAA;ACxrBD,4CAA4C;AAE5C,IAAO,IAAI;AAeV,CAfD,UAAO,IAAI;KAAXA,UAAYA,IAAIA;QAEf2pB;;UAEGA;QACHA;YAAA4E;;AAOCA,YAJAA,2BAAkCA,WAAWA;YAC7CA,6BAAoCA,aAAaA;YACjDA,2BAAkCA,YAAYA;YAE/CA,qBAACA;QAADA,CAACA,IAAA5E;QAPDA,mCAOCA;IAGFA,CAACA,iCAAA3pB;yBAAAA;AAADA,CAACA,uBAAA;ACjBD,4CAA4C;AA6D5C,IAAO,IAAI;AA8EV,CA9ED,UAAO,IAAI;IA3DXA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA0DGA;KACHA,UAAYA,IAAIA;QAEf2pB;YAoDC8E;;cADGA;YACHA;YAGAC,CAACA;YAgBDD;;;;;;;;;;;;;;cADGA;yDACHA;gBAECE,OAAOA,IAAIA,CAACA,SAASA;YACtBA,CAACA;YACFF,6BAACA;QAADA,CAACA,IAAA9E;QA3EDA,mDA2ECA;IACFA,CAACA,iCAAA3pB;yBAAAA;AAADA,CAACA,uBAAA;AC3ID,4CAA4C;AAwB5C,IAAO,IAAI;AA+LV,CA/LD,UAAO,IAAI;IAtBXA;;;;;;;;;;;;;;;;;;;;;MAqBGA;KACHA,UAAYA,IAAIA;QAEf2pB;YA2BCiF;;;;;;cADGA;YACHA,eAAYA,CAAYA,EAAEA,CAAYA;gBAA1BC,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAErCA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;YACXA,CAACA;YAhBDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,IAAIA,CAACA,CAACA,CAACA;gBAChDA,CAACA;;;;AAAAA;YAsBDA;;;;;;cADGA;kCACHA,UAAWA,CAAOA;gBAEjBE,OAAOA,IAAIA,KAAKA,CAACA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;YAC7CA,CAACA;;YAODF;;;;cADGA;oCACHA;gBAECG,OAAOA,IAAIA,KAAKA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,CAACA;YACjCA,CAACA;;YAEDH,2BAAAA,UAAgBA,WAAiBA;YAGjCI,CAACA;;YAUDJ;;;;;;;cADGA;qCACHA,UAAcA,SAAeA;gBAE5BK,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,CAACA;YACxDA,CAACA;;YAUDL;;;;;;;cADGA;wCACHA,UAAiBA,SAAoBA;gBAApBM,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,MAAOA;iBACPA;gBACDA,MAAMA,+BAA+BA;YACtCA,CAACA;;YAYDN;;;;;;;;;cADGA;qCACHA,UAAcA,EAASA,EAAEA,EAASA;gBAEjCO,IAAIA,CAACA,CAACA,IAAIA,EAAEA;gBACZA,IAAIA,CAACA,CAACA,IAAIA,EAAEA;YACbA,CAACA;;YAEDP,wBAAAA,UAAaA,EAASA,EAAEA,EAASA;YAGjCQ,CAACA;;YASDR;;;;;;cADGA;uCACHA,UAAgBA,CAAOA;gBAEtBS,OAAOA,IAAIA,KAAKA,CAACA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;YAC7CA,CAACA;;YAUDT;;;;;;;cADGA;uCACHA;gBAECU,OAAOA,aAAaA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,GAAGA;YACtDA,CAACA;;YASDV;;;;;;cADGA;6BACHA,UAAuBA,GAASA,EAAEA,GAASA;gBAE1CW,IAAIA,EAAEA,GAAUA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBAC7BA,IAAIA,EAAEA,GAAUA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;;gBAE7BA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,CAACA;YAChCA,CAACA;;YAqBDX;;;;;;;;;;;;;;;;;;cADGA;gCACHA,UAA0BA,GAASA,EAAEA,GAASA,EAAEA,CAAQA;gBAEvDY,OAAOA,IAAIA,KAAKA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA;YACvEA,CAACA;;YASDZ;;;;;;cADGA;0BACHA,UAAoBA,GAAUA,EAAEA,KAAYA;gBAE3Ca,OAAOA,IAAIA,KAAKA,CAACA,GAAGA,GAACA,IAAIA,CAACA,GAAGA,CAACA,KAAKA,CAACA,EAAEA,GAAGA,GAACA,IAAIA,CAACA,GAAGA,CAACA,KAAKA,CAACA,CAACA;YAC3DA,CAACA;YACFb,aAACA;QAADA,CAACA,IAAAjF;QA5LDA,mBA4LCA;IACFA,CAACA,iCAAA3pB;yBAAAA;AAADA,CAACA,uBAAA;ACvND,4CAA4C;AA8C5C,IAAO,IAAI;AAyeV,CAzeD,UAAO,IAAI;IA5CXA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA2CGA;KACHA,UAAYA,IAAIA;QAEf2pB;YAoJC+F;;;;;;;;;;;;;;cADGA;YACHA,mBAAYA,CAAYA,EAAEA,CAAYA,EAAEA,KAAgBA,EAAEA,MAAiBA;gBAA/DC,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,oCAAAA,KAAKA,GAAUA,CAACA;AAAAA,gBAAEA,qCAAAA,MAAMA,GAAUA,CAACA;AAAAA,gBAE1EA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,KAAKA,GAAGA,KAAKA;gBAClBA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;YACrBA,CAACA;YA7GDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;gBAC5BA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,IAAIA;wBAC5BA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,eAAKA,CAACA,CAACA,CAACA;;oBAEjCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;oBACzCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;oBAE1CA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAYDA;gBAAAA;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA;gBACdA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;gBAC3BA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,KAAKA,IAAIA,IAAIA;wBACrBA,IAAIA,CAACA,KAAKA,GAAGA,IAAIA,eAAKA,CAACA,CAACA,CAACA;;oBAE1BA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;oBACzBA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;oBAE1BA,OAAOA,IAAIA,CAACA,KAAKA;gBAClBA,CAACA;;;;AAAAA;YAYDA;gBAAAA;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA;gBACdA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,QAAQA,IAAIA,IAAIA;wBACxBA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,eAAKA,CAACA,CAACA,CAACA;;oBAE7BA,IAAIA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;;oBAExBA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;;;;AAAAA;YAkCDA;;;;;;;;cADGA;wCACHA;gBAECE,OAAOA,IAAIA,SAASA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,MAAMA,CAACA;YAC9DA,CAACA;;YAWDF;;;;;;;;cADGA;2CACHA,UAAgBA,CAAQA,EAAEA,CAAQA;gBAEjCG,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,IAAIA,CAACA,CAACA;YAC7FA,CAACA;;YAaDH;;;;;;;;;;cADGA;gDACHA,UAAqBA,KAAWA;gBAE/BI,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,KAAKA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,IAAIA,KAAKA,CAACA,CAACA,CAACA;YACrHA,CAACA;;YAaDJ;;;;;;;;;;cADGA;+CACHA,UAAoBA,IAAcA;gBAEjCK,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,CAACA;YAC5IA,CAACA;;YAQDL;;;;;cADGA;2CACHA,UAAgBA,UAAoBA;YAGpCM,CAACA;;YAeDN;;;;;;;;;;;;cADGA;yCACHA,UAAcA,SAAmBA;gBAEhCO,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,KAAKA,IAAIA,SAASA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,SAASA,CAACA,MAAMA,CAACA;YAC5HA,CAACA;;YAeDP;;;;;;;;;;;;cADGA;0CACHA,UAAeA,EAASA,EAAEA,EAASA;gBAElCQ,IAAIA,CAACA,CAACA,IAAIA,EAAEA,GAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,IAAIA,EAAEA,GAACA,CAACA;gBACdA,IAAIA,CAACA,KAAKA,IAAIA,EAAEA,GAACA,CAACA;gBAClBA,IAAIA,CAACA,MAAMA,IAAIA,EAAEA,GAACA,CAACA;YACpBA,CAACA;;YAcDR;;;;;;;;;;;cADGA;+CACHA,UAAoBA,KAAWA;gBAE9BS,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;gBACnBA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;gBACnBA,IAAIA,CAACA,KAAKA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;gBACvBA,IAAIA,CAACA,MAAMA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;YACzBA,CAACA;;YAiBDT;;;;;;;;;;;;;;cADGA;+CACHA,UAAoBA,WAAqBA;gBAExCU,IAAIA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,CAAEA;oBACjCA,IAAIA,CAACA,GAAaA,IAAIA,SAASA,CAACA,CAACA;;oBAEjCA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,CAAEA;wBAC3BA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;wBACZA,CAACA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,KAAKA;;wBAEpDA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA;4BACvBA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA;qBACtBA,KAAMA;wBACNA,CAACA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA;wBACnBA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;;wBAE7CA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,KAAKA;4BAC9BA,CAACA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,KAAKA,CAACA;qBAC7BA;;oBAEDA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,CAAEA;wBAC3BA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;wBACZA,CAACA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,MAAMA;;wBAEtDA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA;4BACzBA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA,CAACA;qBACxBA,KAAMA;wBACNA,CAACA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA;wBACnBA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;wBAE/CA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,MAAMA;4BAChCA,CAACA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,MAAMA,CAACA;qBAC/BA;;oBAEDA,OAAOA,CAACA;iBACRA;;gBAEDA,OAAOA,IAAIA,SAASA,CAACA,CAACA;YACvBA,CAACA;;YAcDV;;;;;;;;;;;cADGA;6CACHA,UAAkBA,WAAqBA;gBAEtCW,OAAOA,CAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,WAAWA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,WAAWA,CAACA,MAAMA,CAACA;YAClLA,CAACA;;YAQDX;;;;;cADGA;0CACHA;gBAECY,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,KAAKA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,CAACA,CAACA;YAC3EA,CAACA;;YASDZ;;;;;;cADGA;yCACHA,UAAcA,EAASA,EAAEA,EAASA;gBAEjCa,IAAIA,CAACA,CAACA,IAAIA,EAAEA;gBACZA,IAAIA,CAACA,CAACA,IAAIA,EAAEA;YACbA,CAACA;;YASDb;;;;;;cADGA;8CACHA,UAAmBA,KAAWA;gBAE7Bc,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBACjBA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;YAClBA,CAACA;;YAUDd;;;;;;;cADGA;2CACHA;gBAECe,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,KAAKA,GAAGA,CAACA;gBACdA,IAAIA,CAACA,MAAMA,GAAGA,CAACA;YAChBA,CAACA;;YAYDf;;;;;;;;;cADGA;wCACHA,UAAaA,EAASA,EAAEA,EAASA,EAAEA,MAAaA,EAAEA,OAAcA;gBAE/DgB,IAAIA,CAACA,CAACA,GAAGA,EAAEA;gBACXA,IAAIA,CAACA,CAACA,GAAGA,EAAEA;gBACXA,IAAIA,CAACA,KAAKA,GAAGA,MAAMA;gBACnBA,IAAIA,CAACA,MAAMA,GAAGA,OAAOA;YACtBA,CAACA;;YAUDhB;;;;;;;cADGA;2CACHA;gBAECiB,OAAOA,iBAAiBA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,UAAUA,GAAGA,IAAIA,CAACA,KAAKA,GAAGA,WAAWA,GAAGA,IAAIA,CAACA,MAAMA,GAAGA,GAAGA;YAChHA,CAACA;;YAaDjB;;;;;;;;;;cADGA;wCACHA,UAAaA,OAAiBA;gBAE7BkB,IAAIA,CAACA,GAAaA,IAAIA,SAASA,CAACA,CAACA;;gBAEjCA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,CAAEA;oBACvBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;oBACZA,CAACA,CAACA,KAAKA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,KAAKA;;oBAE5CA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA;wBACvBA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA;iBACtBA,KAAMA;oBACNA,CAACA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA;oBACfA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;;oBAEzCA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,OAAOA,CAACA,KAAKA;wBAC1BA,CAACA,CAACA,KAAKA,GAAGA,OAAOA,CAACA,KAAKA,CAACA;iBACzBA;;gBAEDA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,CAAEA;oBACvBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;oBACZA,CAACA,CAACA,MAAMA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,MAAMA;;oBAE9CA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA;wBACzBA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA,CAACA;iBACxBA,KAAMA;oBACNA,CAACA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA;oBACfA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;oBAE3CA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,OAAOA,CAACA,MAAMA;wBAC5BA,CAACA,CAACA,MAAMA,GAAGA,OAAOA,CAACA,MAAMA,CAACA;iBAC3BA;;gBAEDA,OAAOA,CAACA;YACTA,CAACA;YACFlB,iBAACA;QAADA,CAACA,IAAA/F;QAteDA,2BAseCA;IACFA,CAACA,iCAAA3pB;yBAAAA;AAADA,CAACA,uBAAA;ACvhBD,4CAA4C;AAwD5C,IAAO,IAAI;AAsSV,CAtSD,UAAO,IAAI;IAtDXA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAqDGA;KACHA,UAAYA,IAAIA;QAEf2pB;YA0MCkH,mBAAYA,aAAqCA;gBApMjDC,KAAOA,SAASA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA;gBAsM9DA,IAAIA,CAACA,cAAcA,GAAGA,aAAaA;YACpCA,CAACA;YAlMDD;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,QAAQA,GAAsBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,UAAUA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;oBACpGA,QAAQA,CAACA,MAAMA,CAACA,CAACA;;oBAEjBA,OAAOA,QAAQA;gBAChBA,CAACA;;;;AAAAA;YAiBDA;gBAAAA;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,2BAA2BA;gBACxCA,CAACA;;;;AAAAA;YAaDA;gBAAAA;;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,mBAAmBA;gBAChCA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,QAAQA,GAAsBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;oBAC/FA,QAAQA,CAACA,MAAMA,CAACA,CAACA;;oBAEjBA,OAAOA,QAAQA;gBAChBA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,UAAUA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;gBAC1EA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,QAAQA,GAAsBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;oBAClGA,QAAQA,CAACA,MAAMA,CAACA,CAACA;;oBAEjBA,OAAOA,QAAQA;gBAChBA,CAACA;;;;AAAAA;YA4BDA;gBAAAA;;;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,cAAcA,CAACA,UAAUA;gBACtCA,CAACA;gBAEDA,KAAAA,UAAoBA,GAAsBA;oBAEzCA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,GAAGA,GAAGA;gBACrCA,CAACA;;;;AALAA;;YAsBDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA,QAAQA;gBAC/CA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAwBA;oBAE3CA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC/BA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC/BA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChCA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;gBACxEA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,kBAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,SAASA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,SAASA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA;gBACjHA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAwBA;oBAE3CA,IAAIA,CAACA,cAAcA,CAACA,SAASA,GAAGA,KAAKA,CAACA,CAACA;oBACvCA,IAAIA,CAACA,cAAcA,CAACA,SAASA,GAAGA,KAAKA,CAACA,CAACA;oBACvCA,IAAIA,CAACA,cAAcA,CAACA,SAASA,GAAGA,KAAKA,CAACA,CAACA;gBACxCA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,kBAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,CAACA;gBACxGA,CAACA;gBAEDA,KAAAA,UAAiBA,KAAwBA;oBAExCA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,CAACA;oBACpCA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,CAACA;oBACpCA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,CAACA;gBACrCA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;gBACrEA,CAACA;;;;AAAAA;YAyBDA;;;;;;;;;;;;;;;;;cADGA;sDACHA,UAA2BA,UAAkCA;gBAE5DE,OAAOA,IAAIA,kBAAQA,CAACA,CAACA;YACtBA,CAACA;;YAQDF;;;;cADGA;8CACHA,UAAmBA,QAAeA;gBAEjCG,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,QAAQA,CAACA;YACxEA,CAACA;;YAODH;;;;cADGA;+CACHA,UAAoBA,QAAeA;gBAElCI,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,CAACA,QAAQA,CAACA;YACzEA,CAACA;;YAQDJ;;;;cAFGA;2CAEHA,UAAgBA,QAAeA;gBAE9BK,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,CAACA,QAAQA,CAACA;YACzEA,CAACA;;YAODL;;;;cADGA;4CACHA,UAAiBA,QAAeA;gBAE/BM,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,QAAQA,CAACA;YACxEA,CAACA;;YAODN;;;;cADGA;yCACHA,UAAcA,QAAeA;gBAE5BO,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,QAAQA,CAACA;YACxEA,CAACA;;YAODP;;;;cADGA;2CACHA,UAAgBA,QAAeA;gBAE9BQ,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,CAACA,QAAQA,CAACA;YACzEA,CAACA;YACFR,iBAACA;QAADA,CAACA,IAAAlH;QAnSDA,2BAmSCA;IACFA,CAACA,iCAAA3pB;yBAAAA;AAADA,CAACA,uBAAA;AC9VD,4CAA4C;AAE5C,IAAO,IAAI;AA0IV,CA1ID,UAAO,IAAI;KAAXA,UAAYA,IAAIA;QAEf2pB;YA+GC2H,qBAAYA,aAAsCA;gBA5GlDC,KAAQA,SAASA,GAAoBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA;gBAE5DA,KAAQA,WAAWA,GAAUA,CAACA,CAACA;gBAC/BA,KAAQA,OAAOA,GAAUA,CAACA,CAACA;gBAC3BA,KAAQA,OAAOA,GAAUA,CAACA,CAACA;gBAC3BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAwG3BA,IAAIA,CAACA,cAAcA,GAAGA,aAAaA;YACpCA,CAACA;YApGDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAYA;oBAE9BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,QAAQA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;oBACrBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AATAA;;YAcDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAYA;oBAE9BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,QAAQA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;oBACrBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAE3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,WAAWA;gBACxBA,CAACA;gBAEDA,KAAAA,UAAsBA,KAAYA;oBAEjCA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,WAAWA;wBAC5BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,WAAWA,GAAGA,KAAKA;;oBAExBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAYA;oBAE7BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,OAAOA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;;oBAEpBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAYA;oBAE7BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,OAAOA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;;oBAEpBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,cAAcA;wBACtBA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;;oBAEvBA,OAAOA,IAAIA,CAACA,SAASA;gBACtBA,CAACA;;;;AAAAA;YAUDA;;cADGA;mDACHA;gBAECE,IAAIA,CAACA,SAASA,CAACA,QAAQA,CAACA,CAACA;;gBAEzBA,IAAIA,IAAIA,CAACA,WAAWA,IAAIA,CAACA;oBACxBA,IAAIA,CAACA,SAASA,CAACA,MAAMA,CAACA,IAAIA,CAACA,WAAWA,CAACA,CAACA;;gBAEzCA,IAAIA,IAAIA,CAACA,OAAOA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,OAAOA,IAAIA,CAACA;oBACzCA,IAAIA,CAACA,SAASA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAACA;;gBAElDA,IAAIA,CAACA,SAASA,CAACA,SAASA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,CAACA;gBACtDA,IAAIA,CAACA,cAAcA,GAAGA,KAAKA;;gBAE3BA,gFAAgFA;gBAChFA,IAAIA,CAACA,cAAcA,CAACA,uBAAuBA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,WAAWA,CAACA;YACxHA,CAACA;YACFF,mBAACA;QAADA,CAACA,IAAA3H;QAvIDA,+BAuICA;IACFA,CAACA,iCAAA3pB;yBAAAA;AAADA,CAACA,uBAAA;AC5ID,4CAA4C;AA4B5C,IAAO,IAAI;AA0cV,CA1cD,UAAO,IAAI;IA1BXA;;;;;;;;;;;;;;;;;;;;;;;;;MAyBGA;KACHA,UAAYA,IAAIA;QAGf2pB;YA8FC8H;;;;;;;;;;cADGA;YACHA,kBAAYA,CAAYA,EAAEA,CAAYA,EAAEA,CAAYA,EAAEA,CAAYA;gBAAtDC,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAEjEA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,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,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,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,CAACA,GAACA,IAAIA,GAAGA,GAAGA;YACzvBA,CAACA;YACF/B,gBAACA;QAADA,CAACA,IAAA5C;QAnrBDA,yBAmrBCA;IACFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;ACxrBD,4CAA4C;AAE5C,IAAO,IAAI;AAeV,CAfD,UAAO,IAAI;KAAXA,UAAYA,IAAIA;QAEf+xB;;UAEGA;QACHA;YAAA4E;;AAOCA,YAJAA,2BAAkCA,WAAWA;YAC7CA,6BAAoCA,aAAaA;YACjDA,2BAAkCA,YAAYA;YAE/CA,qBAACA;QAADA,CAACA,IAAA5E;QAPDA,mCAOCA;IAGFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;ACjBD,4CAA4C;AA6D5C,IAAO,IAAI;AA8EV,CA9ED,UAAO,IAAI;IA3DXA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA0DGA;KACHA,UAAYA,IAAIA;QAEf+xB;YAoDC8E;;cADGA;YACHA;YAGAC,CAACA;YAgBDD;;;;;;;;;;;;;;cADGA;yDACHA;gBAECE,OAAOA,IAAIA,CAACA,SAASA;YACtBA,CAACA;YACFF,6BAACA;QAADA,CAACA,IAAA9E;QA3EDA,mDA2ECA;IACFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;AC3ID,4CAA4C;AAwB5C,IAAO,IAAI;AA+LV,CA/LD,UAAO,IAAI;IAtBXA;;;;;;;;;;;;;;;;;;;;;MAqBGA;KACHA,UAAYA,IAAIA;QAEf+xB;YA2BCiF;;;;;;cADGA;YACHA,eAAYA,CAAYA,EAAEA,CAAYA;gBAA1BC,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAErCA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;YACXA,CAACA;YAhBDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,IAAIA,CAACA,CAACA,GAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAACA,IAAIA,CAACA,CAACA,CAACA;gBAChDA,CAACA;;;;AAAAA;YAsBDA;;;;;;cADGA;kCACHA,UAAWA,CAAOA;gBAEjBE,OAAOA,IAAIA,KAAKA,CAACA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;YAC7CA,CAACA;;YAODF;;;;cADGA;oCACHA;gBAECG,OAAOA,IAAIA,KAAKA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,CAACA;YACjCA,CAACA;;YAEDH,2BAAAA,UAAgBA,WAAiBA;YAGjCI,CAACA;;YAUDJ;;;;;;;cADGA;qCACHA,UAAcA,SAAeA;gBAE5BK,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,CAACA;YACxDA,CAACA;;YAUDL;;;;;;;cADGA;wCACHA,UAAiBA,SAAoBA;gBAApBM,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,MAAOA;iBACPA;gBACDA,MAAMA,+BAA+BA;YACtCA,CAACA;;YAYDN;;;;;;;;;cADGA;qCACHA,UAAcA,EAASA,EAAEA,EAASA;gBAEjCO,IAAIA,CAACA,CAACA,IAAIA,EAAEA;gBACZA,IAAIA,CAACA,CAACA,IAAIA,EAAEA;YACbA,CAACA;;YAEDP,wBAAAA,UAAaA,EAASA,EAAEA,EAASA;YAGjCQ,CAACA;;YASDR;;;;;;cADGA;uCACHA,UAAgBA,CAAOA;gBAEtBS,OAAOA,IAAIA,KAAKA,CAACA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,CAACA;YAC7CA,CAACA;;YAUDT;;;;;;;cADGA;uCACHA;gBAECU,OAAOA,aAAaA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,GAAGA;YACtDA,CAACA;;YASDV;;;;;;cADGA;6BACHA,UAAuBA,GAASA,EAAEA,GAASA;gBAE1CW,IAAIA,EAAEA,GAAUA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;gBAC7BA,IAAIA,EAAEA,GAAUA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA;;gBAE7BA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,EAAEA,GAACA,EAAEA,GAAGA,EAAEA,GAACA,EAAEA,CAACA;YAChCA,CAACA;;YAqBDX;;;;;;;;;;;;;;;;;;cADGA;gCACHA,UAA0BA,GAASA,EAAEA,GAASA,EAAEA,CAAQA;gBAEvDY,OAAOA,IAAIA,KAAKA,CAACA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA,GAACA,CAACA,EAAEA,GAAGA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,CAACA,GAAGA,GAAGA,CAACA,CAACA,CAACA,GAACA,CAACA,CAACA;YACvEA,CAACA;;YASDZ;;;;;;cADGA;0BACHA,UAAoBA,GAAUA,EAAEA,KAAYA;gBAE3Ca,OAAOA,IAAIA,KAAKA,CAACA,GAAGA,GAACA,IAAIA,CAACA,GAAGA,CAACA,KAAKA,CAACA,EAAEA,GAAGA,GAACA,IAAIA,CAACA,GAAGA,CAACA,KAAKA,CAACA,CAACA;YAC3DA,CAACA;YACFb,aAACA;QAADA,CAACA,IAAAjF;QA5LDA,mBA4LCA;IACFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;ACvND,4CAA4C;AA8C5C,IAAO,IAAI;AAyeV,CAzeD,UAAO,IAAI;IA5CXA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MA2CGA;KACHA,UAAYA,IAAIA;QAEf+xB;YAoJC+F;;;;;;;;;;;;;;cADGA;YACHA,mBAAYA,CAAYA,EAAEA,CAAYA,EAAEA,KAAgBA,EAAEA,MAAiBA;gBAA/DC,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,oCAAAA,KAAKA,GAAUA,CAACA;AAAAA,gBAAEA,qCAAAA,MAAMA,GAAUA,CAACA;AAAAA,gBAE1EA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,KAAKA,GAAGA,KAAKA;gBAClBA,IAAIA,CAACA,MAAMA,GAAGA,MAAMA;YACrBA,CAACA;YA7GDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;gBAC5BA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,YAAYA,IAAIA,IAAIA;wBAC5BA,IAAIA,CAACA,YAAYA,GAAGA,IAAIA,eAAKA,CAACA,CAACA,CAACA;;oBAEjCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;oBACzCA,IAAIA,CAACA,YAAYA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;oBAE1CA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAYDA;gBAAAA;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA;gBACdA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;gBAC3BA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,KAAKA,IAAIA,IAAIA;wBACrBA,IAAIA,CAACA,KAAKA,GAAGA,IAAIA,eAAKA,CAACA,CAACA,CAACA;;oBAE1BA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;oBACzBA,IAAIA,CAACA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;oBAE1BA,OAAOA,IAAIA,CAACA,KAAKA;gBAClBA,CAACA;;;;AAAAA;YAYDA;gBAAAA;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,CAACA;gBACdA,CAACA;;;;AAAAA;YAMDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,QAAQA,IAAIA,IAAIA;wBACxBA,IAAIA,CAACA,QAAQA,GAAGA,IAAIA,eAAKA,CAACA,CAACA,CAACA;;oBAE7BA,IAAIA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;oBACxBA,IAAIA,CAACA,QAAQA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;;oBAExBA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;;;;AAAAA;YAkCDA;;;;;;;;cADGA;wCACHA;gBAECE,OAAOA,IAAIA,SAASA,CAACA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,CAACA,EAAEA,IAAIA,CAACA,KAAKA,EAAEA,IAAIA,CAACA,MAAMA,CAACA;YAC9DA,CAACA;;YAWDF;;;;;;;;cADGA;2CACHA,UAAgBA,CAAQA,EAAEA,CAAQA;gBAEjCG,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,IAAIA,CAACA,CAACA;YAC7FA,CAACA;;YAaDH;;;;;;;;;;cADGA;gDACHA,UAAqBA,KAAWA;gBAE/BI,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,KAAKA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,IAAIA,KAAKA,CAACA,CAACA,CAACA;YACrHA,CAACA;;YAaDJ;;;;;;;;;;cADGA;+CACHA,UAAoBA,IAAcA;gBAEjCK,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,CAACA;YAC5IA,CAACA;;YAQDL;;;;;cADGA;2CACHA,UAAgBA,UAAoBA;YAGpCM,CAACA;;YAeDN;;;;;;;;;;;;cADGA;yCACHA,UAAcA,SAAmBA;gBAEhCO,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,SAASA,CAACA,CAACA,IAAIA,IAAIA,CAACA,KAAKA,IAAIA,SAASA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,SAASA,CAACA,MAAMA,CAACA;YAC5HA,CAACA;;YAeDP;;;;;;;;;;;;cADGA;0CACHA,UAAeA,EAASA,EAAEA,EAASA;gBAElCQ,IAAIA,CAACA,CAACA,IAAIA,EAAEA,GAACA,CAACA;gBACdA,IAAIA,CAACA,CAACA,IAAIA,EAAEA,GAACA,CAACA;gBACdA,IAAIA,CAACA,KAAKA,IAAIA,EAAEA,GAACA,CAACA;gBAClBA,IAAIA,CAACA,MAAMA,IAAIA,EAAEA,GAACA,CAACA;YACpBA,CAACA;;YAcDR;;;;;;;;;;;cADGA;+CACHA,UAAoBA,KAAWA;gBAE9BS,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;gBACnBA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;gBACnBA,IAAIA,CAACA,KAAKA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;gBACvBA,IAAIA,CAACA,MAAMA,IAAIA,KAAKA,CAACA,CAACA,GAACA,CAACA;YACzBA,CAACA;;YAiBDT;;;;;;;;;;;;;;cADGA;+CACHA,UAAoBA,WAAqBA;gBAExCU,IAAIA,IAAIA,CAACA,UAAUA,CAACA,WAAWA,CAACA,CAAEA;oBACjCA,IAAIA,CAACA,GAAaA,IAAIA,SAASA,CAACA,CAACA;;oBAEjCA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,CAAEA;wBAC3BA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;wBACZA,CAACA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,KAAKA;;wBAEpDA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA;4BACvBA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA;qBACtBA,KAAMA;wBACNA,CAACA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA;wBACnBA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;;wBAE7CA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,KAAKA;4BAC9BA,CAACA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,KAAKA,CAACA;qBAC7BA;;oBAEDA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,CAAEA;wBAC3BA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;wBACZA,CAACA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,MAAMA;;wBAEtDA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA;4BACzBA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA,CAACA;qBACxBA,KAAMA;wBACNA,CAACA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA;wBACnBA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;wBAE/CA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,MAAMA;4BAChCA,CAACA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,MAAMA,CAACA;qBAC/BA;;oBAEDA,OAAOA,CAACA;iBACRA;;gBAEDA,OAAOA,IAAIA,SAASA,CAACA,CAACA;YACvBA,CAACA;;YAcDV;;;;;;;;;;;cADGA;6CACHA,UAAkBA,WAAqBA;gBAEtCW,OAAOA,CAACA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA,GAAGA,WAAWA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,WAAWA,CAACA,KAAKA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA,GAAGA,WAAWA,CAACA,CAACA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,WAAWA,CAACA,CAACA,GAAGA,WAAWA,CAACA,MAAMA,CAACA;YAClLA,CAACA;;YAQDX;;;;;cADGA;0CACHA;gBAECY,OAAOA,CAACA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,KAAKA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,MAAMA,IAAIA,CAACA,CAACA;YAC3EA,CAACA;;YASDZ;;;;;;cADGA;yCACHA,UAAcA,EAASA,EAAEA,EAASA;gBAEjCa,IAAIA,CAACA,CAACA,IAAIA,EAAEA;gBACZA,IAAIA,CAACA,CAACA,IAAIA,EAAEA;YACbA,CAACA;;YASDb;;;;;;cADGA;8CACHA,UAAmBA,KAAWA;gBAE7Bc,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;gBACjBA,IAAIA,CAACA,CAACA,IAAIA,KAAKA,CAACA,CAACA;YAClBA,CAACA;;YAUDd;;;;;;;cADGA;2CACHA;gBAECe,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,KAAKA,GAAGA,CAACA;gBACdA,IAAIA,CAACA,MAAMA,GAAGA,CAACA;YAChBA,CAACA;;YAYDf;;;;;;;;;cADGA;wCACHA,UAAaA,EAASA,EAAEA,EAASA,EAAEA,MAAaA,EAAEA,OAAcA;gBAE/DgB,IAAIA,CAACA,CAACA,GAAGA,EAAEA;gBACXA,IAAIA,CAACA,CAACA,GAAGA,EAAEA;gBACXA,IAAIA,CAACA,KAAKA,GAAGA,MAAMA;gBACnBA,IAAIA,CAACA,MAAMA,GAAGA,OAAOA;YACtBA,CAACA;;YAUDhB;;;;;;;cADGA;2CACHA;gBAECiB,OAAOA,iBAAiBA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,UAAUA,GAAGA,IAAIA,CAACA,KAAKA,GAAGA,WAAWA,GAAGA,IAAIA,CAACA,MAAMA,GAAGA,GAAGA;YAChHA,CAACA;;YAaDjB;;;;;;;;;;cADGA;wCACHA,UAAaA,OAAiBA;gBAE7BkB,IAAIA,CAACA,GAAaA,IAAIA,SAASA,CAACA,CAACA;;gBAEjCA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,CAAEA;oBACvBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;oBACZA,CAACA,CAACA,KAAKA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,KAAKA;;oBAE5CA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA;wBACvBA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,KAAKA,CAACA;iBACtBA,KAAMA;oBACNA,CAACA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA;oBACfA,CAACA,CAACA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,KAAKA;;oBAEzCA,IAAIA,CAACA,CAACA,KAAKA,GAAGA,OAAOA,CAACA,KAAKA;wBAC1BA,CAACA,CAACA,KAAKA,GAAGA,OAAOA,CAACA,KAAKA,CAACA;iBACzBA;;gBAEDA,IAAIA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,CAAEA;oBACvBA,CAACA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA;oBACZA,CAACA,CAACA,MAAMA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,MAAMA;;oBAE9CA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA;wBACzBA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,MAAMA,CAACA;iBACxBA,KAAMA;oBACNA,CAACA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA;oBACfA,CAACA,CAACA,MAAMA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,OAAOA,CAACA,CAACA,GAAGA,IAAIA,CAACA,MAAMA;;oBAE3CA,IAAIA,CAACA,CAACA,MAAMA,GAAGA,OAAOA,CAACA,MAAMA;wBAC5BA,CAACA,CAACA,MAAMA,GAAGA,OAAOA,CAACA,MAAMA,CAACA;iBAC3BA;;gBAEDA,OAAOA,CAACA;YACTA,CAACA;YACFlB,iBAACA;QAADA,CAACA,IAAA/F;QAteDA,2BAseCA;IACFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;ACvhBD,4CAA4C;AAwD5C,IAAO,IAAI;AAsSV,CAtSD,UAAO,IAAI;IAtDXA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;MAqDGA;KACHA,UAAYA,IAAIA;QAEf+xB;YA0MCkH,mBAAYA,aAAqCA;gBApMjDC,KAAOA,SAASA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA,CAACA;gBAsM9DA,IAAIA,CAACA,cAAcA,GAAGA,aAAaA;YACpCA,CAACA;YAlMDD;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,QAAQA,GAAsBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,UAAUA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;oBACpGA,QAAQA,CAACA,MAAMA,CAACA,CAACA;;oBAEjBA,OAAOA,QAAQA;gBAChBA,CAACA;;;;AAAAA;YAiBDA;gBAAAA;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,2BAA2BA;gBACxCA,CAACA;;;;AAAAA;YAaDA;gBAAAA;;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,mBAAmBA;gBAChCA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,QAAQA,GAAsBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;oBAC/FA,QAAQA,CAACA,MAAMA,CAACA,CAACA;;oBAEjBA,OAAOA,QAAQA;gBAChBA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,UAAUA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;gBAC1EA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,QAAQA,GAAsBA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;oBAClGA,QAAQA,CAACA,MAAMA,CAACA,CAACA;;oBAEjBA,OAAOA,QAAQA;gBAChBA,CAACA;;;;AAAAA;YA4BDA;gBAAAA;;;;;;;;;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,cAAcA,CAACA,UAAUA;gBACtCA,CAACA;gBAEDA,KAAAA,UAAoBA,GAAsBA;oBAEzCA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,GAAGA,GAAGA;gBACrCA,CAACA;;;;AALAA;;YAsBDA;gBAAAA;;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,YAAYA;gBACzBA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA,QAAQA;gBAC/CA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAwBA;oBAE3CA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC/BA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;oBAC/BA,IAAIA,CAACA,cAAcA,CAACA,CAACA,GAAGA,KAAKA,CAACA,CAACA;gBAChCA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,QAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;gBACxEA,CAACA;;;;AAAAA;YAKDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,kBAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,SAASA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,SAASA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,SAASA,CAACA;gBACjHA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAwBA;oBAE3CA,IAAIA,CAACA,cAAcA,CAACA,SAASA,GAAGA,KAAKA,CAACA,CAACA;oBACvCA,IAAIA,CAACA,cAAcA,CAACA,SAASA,GAAGA,KAAKA,CAACA,CAACA;oBACvCA,IAAIA,CAACA,cAAcA,CAACA,SAASA,GAAGA,KAAKA,CAACA,CAACA;gBACxCA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,kBAAQA,CAACA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,EAAEA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,CAACA;gBACxGA,CAACA;gBAEDA,KAAAA,UAAiBA,KAAwBA;oBAExCA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,CAACA;oBACpCA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,CAACA;oBACpCA,IAAIA,CAACA,cAAcA,CAACA,MAAMA,GAAGA,KAAKA,CAACA,CAACA;gBACrCA,CAACA;;;;AAPAA;;YAYDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,IAAIA,CAACA,aAAaA,CAACA,KAAKA,CAACA,IAAIA,CAACA,cAAcA,CAACA,UAAUA,CAACA;gBACrEA,CAACA;;;;AAAAA;YAyBDA;;;;;;;;;;;;;;;;;cADGA;sDACHA,UAA2BA,UAAkCA;gBAE5DE,OAAOA,IAAIA,kBAAQA,CAACA,CAACA;YACtBA,CAACA;;YAQDF;;;;cADGA;8CACHA,UAAmBA,QAAeA;gBAEjCG,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,QAAQA,CAACA;YACxEA,CAACA;;YAODH;;;;cADGA;+CACHA,UAAoBA,QAAeA;gBAElCI,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,CAACA,QAAQA,CAACA;YACzEA,CAACA;;YAQDJ;;;;cAFGA;2CAEHA,UAAgBA,QAAeA;gBAE9BK,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,CAACA,QAAQA,CAACA;YACzEA,CAACA;;YAODL;;;;cADGA;4CACHA,UAAiBA,QAAeA;gBAE/BM,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,QAAQA,CAACA;YACxEA,CAACA;;YAODN;;;;cADGA;yCACHA,UAAcA,QAAeA;gBAE5BO,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,QAAQA,CAACA;YACxEA,CAACA;;YAODP;;;;cADGA;2CACHA,UAAgBA,QAAeA;gBAE9BQ,IAAIA,CAACA,cAAcA,CAACA,cAAcA,CAACA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,MAAMA,EAAEA,CAACA,QAAQA,CAACA;YACzEA,CAACA;YACFR,iBAACA;QAADA,CAACA,IAAAlH;QAnSDA,2BAmSCA;IACFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;AC9VD,4CAA4C;AAE5C,IAAO,IAAI;AAwIV,CAxID,UAAO,IAAI;KAAXA,UAAYA,IAAIA;QAEf+xB;YA+GC2H;gBA7GAC,KAAQA,SAASA,GAAoBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,CAACA;gBAG5DA,KAAQA,SAASA,GAAUA,CAACA,CAACA;gBAC7BA,KAAQA,OAAOA,GAAUA,CAACA,CAACA;gBAC3BA,KAAQA,OAAOA,GAAUA,CAACA,CAACA;gBAC3BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;gBAC5BA,KAAQA,QAAQA,GAAUA,CAACA,CAACA;YAwG5BA,CAACA;YAnGDD;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAYA;oBAE9BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,QAAQA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;oBACrBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AATAA;;YAcDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,QAAQA;gBACrBA,CAACA;gBAEDA,KAAAA,UAAmBA,KAAYA;oBAE9BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,QAAQA;wBACzBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,QAAQA,GAAGA,KAAKA;oBACrBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAE3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,SAASA;gBACtBA,CAACA;gBAEDA,KAAAA,UAAoBA,KAAYA;oBAE/BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,SAASA;wBAC1BA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,SAASA,GAAGA,KAAKA;;oBAEtBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAYA;oBAE7BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,OAAOA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;;oBAEpBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,OAAOA,IAAIA,CAACA,OAAOA;gBACpBA,CAACA;gBAEDA,KAAAA,UAAkBA,KAAYA;oBAE7BA,IAAIA,KAAKA,IAAIA,IAAIA,CAACA,OAAOA;wBACxBA,MAAOA,CAAAA;;oBAERA,IAAIA,CAACA,OAAOA,GAAGA,KAAKA;;oBAEpBA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA;gBAC3BA,CAACA;;;;AAVAA;;YAeDA;gBAAAA;;kBADGA;qBACHA;oBAECA,IAAIA,IAAIA,CAACA,cAAcA;wBACtBA,IAAIA,CAACA,cAAcA,CAACA,CAACA,CAACA;;oBAEvBA,OAAOA,IAAIA,CAACA,SAASA;gBACtBA,CAACA;;;;AAAAA;YAUDA;;cADGA;mDACHA;gBAECE,IAAIA,CAACA,SAASA,CAACA,QAAQA,CAACA,CAACA;;gBAEzBA,IAAIA,IAAIA,CAACA,SAASA,IAAIA,CAACA;oBACtBA,IAAIA,CAACA,SAASA,CAACA,MAAMA,CAACA,IAAIA,CAACA,SAASA,CAACA,CAACA;;gBAEvCA,IAAIA,IAAIA,CAACA,OAAOA,IAAIA,CAACA,IAAIA,IAAIA,CAACA,OAAOA,IAAIA,CAACA;oBACzCA,IAAIA,CAACA,SAASA,CAACA,KAAKA,CAACA,IAAIA,CAACA,OAAOA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAACA;;gBAElDA,IAAIA,CAACA,SAASA,CAACA,SAASA,CAACA,IAAIA,CAACA,QAAQA,EAAEA,IAAIA,CAACA,QAAQA,CAACA;;gBAEtDA,IAAIA,CAACA,cAAcA,GAAGA,KAAKA;YAC5BA,CAACA;YACFF,mBAACA;QAADA,CAACA,IAAA3H;QArIDA,+BAqICA;IACFA,CAACA,iCAAA/xB;yBAAAA;AAADA,CAACA,uBAAA;AC1ID,4CAA4C;AA4B5C,IAAO,IAAI;AA0cV,CA1cD,UAAO,IAAI;IA1BXA;;;;;;;;;;;;;;;;;;;;;;;;;MAyBGA;KACHA,UAAYA,IAAIA;QAGf+xB;YA8FC8H;;;;;;;;;;cADGA;YACHA,kBAAYA,CAAYA,EAAEA,CAAYA,EAAEA,CAAYA,EAAEA,CAAYA;gBAAtDC,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAAEA,gCAAAA,CAACA,GAAUA,CAACA;AAAAA,gBAEjEA,IAAIA,CAACA,CAACA,GAAGA,CAACA;gBACVA,IAAIA,CAACA,CAACA,GAAGA,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,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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GA,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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EA,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 = (VertexDataPool._pool[id] || (VertexDataPool._pool[id] = new Object())); + var subGeometryData:Array = > (subGeometryDictionary[dataType] || (subGeometryDictionary[dataType] = new Array())); + + return subGeometryData[level] || (subGeometryData[level] = new VertexData()); + } + + public static disposeItem(id:string, level:number, dataType:string) + { + var subGeometryDictionary:Object = VertexDataPool._pool[id]; + var subGeometryData:Array = > subGeometryDictionary[dataType]; + + subGeometryData[level].dispose(); + subGeometryData[level] = null; + } + + public disposeData(id:string) + { + var subGeometryDictionary:Object = VertexDataPool._pool[id]; + + for (var key in subGeometryDictionary) { + var subGeometryData:Array = > subGeometryDictionary[key]; + + var len:number = subGeometryData.length; + for (var i:number = 0; i < len; i++) { + subGeometryData[i].dispose(); + subGeometryData[i] = null; + } + } + + VertexDataPool._pool[id] = null; + } + } +} \ No newline at end of file diff --git a/src/away/core/library/AssetType.ts b/src/away/core/library/AssetType.ts index 5551e29c..8cef490e 100644 --- a/src/away/core/library/AssetType.ts +++ b/src/away/core/library/AssetType.ts @@ -11,11 +11,14 @@ module away.library public static CONTAINER:string = 'container'; public static EFFECTS_METHOD:string = 'effectsMethod'; public static GEOMETRY:string = 'geometry'; + public static LINE_SEGMENT:string = 'lineSegment'; public static LIGHT:string = 'light'; public static LIGHT_PICKER:string = 'lightPicker'; public static MATERIAL:string = 'material'; public static MESH:string = 'mesh'; - public static SEGMENT_SET:string = 'segmentSet'; + public static TRIANGLE_SUB_MESH:string = 'triangleSubMesh'; + public static LINE_SUB_MESH:string = 'lineSubMesh'; + public static PRIMITIVE_PREFAB:string = 'primitivePrefab'; public static SHADOW_MAP_METHOD:string = 'shadowMapMethod'; public static SKELETON:string = 'skeleton'; public static SKELETON_POSE:string = 'skeletonPose'; diff --git a/src/away/core/library/NamedAssetBase.ts b/src/away/core/library/NamedAssetBase.ts index 8d39f9ae..3d1fb0d3 100644 --- a/src/away/core/library/NamedAssetBase.ts +++ b/src/away/core/library/NamedAssetBase.ts @@ -69,12 +69,9 @@ module away.library prev = this._name; this._name = val; - if (this._name == null) { - + if (this._name == null) this._name = 'null'; - } - this.updateFullPath(); //if (hasEventListener(AssetEvent.ASSET_RENAME)) @@ -108,12 +105,9 @@ module away.library this._name = name? name : 'null'; this._namespace = ns? ns : NamedAssetBase.DEFAULT_NAMESPACE; - if (overrideOriginal) { - + if (overrideOriginal) this._originalName = this._name; - } - this.updateFullPath(); } diff --git a/src/away/core/partition/EntityNode.ts b/src/away/core/partition/EntityNode.ts index 7439cec3..fac57abb 100644 --- a/src/away/core/partition/EntityNode.ts +++ b/src/away/core/partition/EntityNode.ts @@ -76,5 +76,14 @@ module away.partition return this._entity.isIntersectingRay(rayPosition, rayDirection); } + + /** + * + * @protected + */ + public _pCreateBoundsPrimitive():away.entities.IEntity + { + return this._entity.bounds.boundingEntity; + } } } \ No newline at end of file diff --git a/src/away/core/partition/NodeBase.ts b/src/away/core/partition/NodeBase.ts index a1d1786f..e22490ce 100644 --- a/src/away/core/partition/NodeBase.ts +++ b/src/away/core/partition/NodeBase.ts @@ -11,11 +11,13 @@ module away.partition */ export class NodeBase { - + private _boundsChildrenVisible:boolean; + private _explicitBoundsVisible:boolean; + private _implicitBoundsVisible:boolean; public _iParent:NodeBase; public _pChildNodes:Array; public _pNumChildNodes:number = 0; - public _pDebugPrimitive:away.entities.IEntity; + public _pBoundsPrimitive:away.entities.IEntity; public _iNumEntities:number = 0; public _iCollectionMark:number;// = 0; @@ -23,28 +25,36 @@ module away.partition /** * */ - public get showDebugBounds():boolean + public get boundsVisible():boolean { - return this._pDebugPrimitive != null; + return this._explicitBoundsVisible; } - public set showDebugBounds(value:boolean) + public set boundsVisible(value:boolean) { - if (this._pDebugPrimitive && value == true) + if (this._explicitBoundsVisible == value) return; - if (!this._pDebugPrimitive && value == false) + this._explicitBoundsVisible = value; + + this._iUpdateImplicitBoundsVisible(this._iParent? this._iParent.boundsChildrenVisible : false); + + } + + public get boundsChildrenVisible():boolean + { + return this._boundsChildrenVisible; + } + + public set boundsChildrenVisible(value:boolean) + { + if (this._boundsChildrenVisible == value) return; - if (value) { - this._pDebugPrimitive = this.pCreateDebugBounds(); - } else { - this._pDebugPrimitive.dispose(); - this._pDebugPrimitive = null; - } + this._boundsChildrenVisible = value; for (var i:number = 0; i < this._pNumChildNodes; ++i) - this._pChildNodes[i].showDebugBounds = value; + this._pChildNodes[i]._iUpdateImplicitBoundsVisible(this._boundsChildrenVisible); } /** @@ -120,7 +130,7 @@ module away.partition */ public acceptTraverser(traverser:away.traverse.ICollector) { - if (this._pNumEntities == 0 && !this._pDebugPrimitive) + if (this._pNumEntities == 0 && !this._implicitBoundsVisible) return; if (traverser.enterNode(this)) { @@ -129,8 +139,8 @@ module away.partition while (i < this._pNumChildNodes) this._pChildNodes[i++].acceptTraverser(traverser); - if (this._pDebugPrimitive) - this._pDebugPrimitive.partitionNode.acceptTraverser(traverser); + if (this._implicitBoundsVisible) + this._pBoundsPrimitive.partitionNode.acceptTraverser(traverser); } } @@ -138,7 +148,7 @@ module away.partition * * @protected */ - public pCreateDebugBounds():away.entities.IEntity + public _pCreateBoundsPrimitive():away.entities.IEntity { return null; } @@ -153,7 +163,8 @@ module away.partition node._iParent = this; this._iNumEntities += node._pNumEntities; this._pChildNodes[ this._pNumChildNodes++ ] = node; - node.showDebugBounds = this._pDebugPrimitive != null; + + node._iUpdateImplicitBoundsVisible(this.boundsChildrenVisible); var numEntities:number = node._pNumEntities; node = this; @@ -174,6 +185,8 @@ module away.partition this._pChildNodes[index] = this._pChildNodes[--this._pNumChildNodes]; this._pChildNodes.pop(); + node._iUpdateImplicitBoundsVisible(false); + var numEntities:number = node._pNumEntities; node = this; @@ -181,7 +194,28 @@ module away.partition node._pNumEntities -= numEntities; } while ((node = node._iParent) != null); } + + private _iUpdateImplicitBoundsVisible(value:boolean) + { + if (this._implicitBoundsVisible == this._explicitBoundsVisible || value) + return; + + this._implicitBoundsVisible = this._explicitBoundsVisible || value; + + this._iUpdateEntityBounds(); + for (var i:number = 0; i < this._pNumChildNodes; ++i) + this._pChildNodes[i]._iUpdateImplicitBoundsVisible(this._boundsChildrenVisible); + } + + /** + * @internal + */ + public _iIsBoundsVisible():boolean + { + return this._implicitBoundsVisible; + } + // public _pUpdateNumEntities(value:number) // { // var diff:number = value - this._pNumEntities; @@ -191,5 +225,16 @@ module away.partition // node._pNumEntities += diff; // } while ((node = node._iParent) != null); // } + + public _iUpdateEntityBounds() + { + if (this._pBoundsPrimitive) { + this._pBoundsPrimitive.dispose(); + this._pBoundsPrimitive = null; + } + + if (this._implicitBoundsVisible) + this._pBoundsPrimitive = this._pCreateBoundsPrimitive(); + } } } \ No newline at end of file diff --git a/src/away/core/partition/Partition.ts b/src/away/core/partition/Partition.ts index 63549c5d..cf37219f 100644 --- a/src/away/core/partition/Partition.ts +++ b/src/away/core/partition/Partition.ts @@ -33,7 +33,7 @@ module away.partition this._rootNode.acceptTraverser(traverser); } - public iMarkForUpdate(entity:away.entities.IEntity) + public iMarkForUpdate(entity:away.base.DisplayObject) { var node:EntityNode = entity.partitionNode; var t:EntityNode = this._updateQueue; @@ -51,7 +51,7 @@ module away.partition this._updatesMade = true; } - public iRemoveEntity(entity:away.entities.IEntity) + public iRemoveEntity(entity:away.base.DisplayObject) { var node:EntityNode = entity.partitionNode; var t:EntityNode; diff --git a/src/away/core/partition/SkyboxNode.ts b/src/away/core/partition/SkyboxNode.ts new file mode 100644 index 00000000..89eeb3b6 --- /dev/null +++ b/src/away/core/partition/SkyboxNode.ts @@ -0,0 +1,43 @@ +/// + +/** + * @module away.partition + */ +module away.partition +{ + /** + * SkyboxNode is a space partitioning leaf node that contains a Skybox object. + * + * @class away.partition.SkyboxNode + */ + export class SkyboxNode extends EntityNode + { + private _skyBox:away.entities.IEntity; + + /** + * Creates a new SkyboxNode object. + * @param skyBox The Skybox to be contained in the node. + */ + constructor(skyBox:away.entities.IEntity) + { + super(skyBox); + + this._skyBox = skyBox; + } + + /** + * + * @param planes + * @param numPlanes + * @returns {boolean} + */ + public isInFrustum(planes:away.geom.Plane3D[], numPlanes:number):boolean + { + if (!this._skyBox._iIsVisible) + return false; + + //a skybox is always in view unless its visibility is set to false + return true; + } + } +} diff --git a/src/away/core/pool/CSSLineSegmentRenderable.ts b/src/away/core/pool/CSSLineSegmentRenderable.ts new file mode 100644 index 00000000..22d04c4d --- /dev/null +++ b/src/away/core/pool/CSSLineSegmentRenderable.ts @@ -0,0 +1,40 @@ +/// + +/** + * @module away.data + */ +module away.pool +{ + /** + * @class away.pool.RenderableListItem + */ + export class CSSLineSegmentRenderable extends CSSRenderableBase + { + public static id:string = "lineSegment"; + + constructor(pool:RenderablePool, lineSegment:away.entities.LineSegment) + { + super(pool, lineSegment, lineSegment); + + var div:HTMLDivElement = document.createElement("div"); + div.onmousedown = (event:MouseEvent) => false; + + this.htmlElement = div; + + var style:MSStyleCSSProperties = 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:HTMLDivElement = document.createElement("div"); + + div.appendChild(img); + + img.className = "material" + lineSegment.material.id; + } + } +} \ No newline at end of file diff --git a/src/away/core/pool/CSSRenderableBase.ts b/src/away/core/pool/CSSRenderableBase.ts index 10fbd5c2..28a25069 100644 --- a/src/away/core/pool/CSSRenderableBase.ts +++ b/src/away/core/pool/CSSRenderableBase.ts @@ -86,9 +86,25 @@ module away.pool /** * */ - public _iUpdate() + public invalidateGeometry() { - //nothing to do here + + } + + /** + * + */ + public invalidateIndexData() + { + + } + + /** + * + */ + public invalidateVertexData(dataType:string) + { + } } } \ No newline at end of file diff --git a/src/away/core/pool/IRenderable.ts b/src/away/core/pool/IRenderable.ts index 328e561a..5cc460c7 100644 --- a/src/away/core/pool/IRenderable.ts +++ b/src/away/core/pool/IRenderable.ts @@ -42,6 +42,16 @@ module away.pool /** * */ - _iUpdate(); + invalidateGeometry(); + + /** + * + */ + invalidateIndexData(); + + /** + * + */ + invalidateVertexData(dataType:string); } } diff --git a/src/away/core/render/CSSDefaultRenderer.ts b/src/away/core/render/CSSDefaultRenderer.ts index ba3cc10d..d6919dca 100644 --- a/src/away/core/render/CSSDefaultRenderer.ts +++ b/src/away/core/render/CSSDefaultRenderer.ts @@ -22,123 +22,6 @@ module away.render private _skyboxProjection:away.geom.Matrix3D = new away.geom.Matrix3D(); private _transform:away.geom.Matrix3D = new away.geom.Matrix3D(); - public _width:number; - public _height:number; - - private _viewPort:away.geom.Rectangle = new away.geom.Rectangle(); - private _viewportDirty:boolean; - private _scissorRect:away.geom.Rectangle = new away.geom.Rectangle(); - private _scissorDirty:boolean; - - private _localPos:away.geom.Point = new away.geom.Point(); - private _globalPos:away.geom.Point = new away.geom.Point(); - - private _scissorUpdated:away.events.RendererEvent; - private _viewPortUpdated:away.events.RendererEvent; - - /** - * A viewPort rectangle equivalent of the StageGL size and position. - */ - public get viewPort():away.geom.Rectangle - { - return this._viewPort; - } - - /** - * A scissor rectangle equivalent of the view size and position. - */ - public get scissorRect():away.geom.Rectangle - { - return this._scissorRect; - } - - /** - * - */ - public get x():number - { - return this._localPos.x; - } - - public set x(value:number) - { - if (this.x == value) - return; - - this.updateGlobalPos(); - } - - /** - * - */ - public get y():number - { - return this._localPos.y; - } - - public set y(value:number) - { - if (this.y == value) - return; - - this._globalPos.y = this._localPos.y = value; - - this.updateGlobalPos(); - } - - /** - * - */ - public get width():number - { - return this._width; - } - - public set width(value:number) - { - 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(); - } - - /** - * - */ - public get height():number - { - return this._height; - } - - public set height(value:number) - { - 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(); - } - - /** - * - */ - public renderableSorter:away.sort.IEntitySorter; - /** * Creates a new CSSDefaultRenderer object. */ @@ -171,14 +54,6 @@ module away.render //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; } /** @@ -187,9 +62,7 @@ module away.render */ public render(entityCollector:away.traverse.ICollector) { - this._viewportDirty = false; - this._scissorDirty = false; - + super.render(entityCollector); if (this._pBackBufferInvalid)// reset or update render settings this.pUpdateBackBuffer(); @@ -358,51 +231,6 @@ module away.render //TODO } - /** - * @private - */ - private notifyScissorUpdate() - { - if (this._scissorDirty) - return; - - this._scissorDirty = true; - - if (!this._scissorUpdated) - this._scissorUpdated = new away.events.RendererEvent(away.events.RendererEvent.SCISSOR_UPDATED); - - this.dispatchEvent(this._scissorUpdated); - } - - - /** - * @private - */ - private notifyViewportUpdate() - { - if (this._viewportDirty) - return; - - this._viewportDirty = true; - - if (!this._viewPortUpdated) - this._viewPortUpdated = new away.events.RendererEvent(away.events.RendererEvent.VIEWPORT_UPDATED); - - this.dispatchEvent(this._viewPortUpdated); - } - - /** - * - */ - public updateGlobalPos() - { - this._viewPort.x = this._globalPos.x; - this._viewPort.y = this._globalPos.y; - - this.notifyViewportUpdate(); - this.notifyScissorUpdate(); - } - public _iCreateEntityCollector():away.traverse.ICollector { diff --git a/src/away/core/render/CSSRendererBase.ts b/src/away/core/render/CSSRendererBase.ts index b86348c9..1de5c67a 100644 --- a/src/away/core/render/CSSRendererBase.ts +++ b/src/away/core/render/CSSRendererBase.ts @@ -14,6 +14,7 @@ module away.render export class CSSRendererBase extends away.events.EventDispatcher { private _billboardRenderablePool:away.pool.RenderablePool; + private _lineSegmentRenderablePool:away.pool.RenderablePool; public _pCamera:away.entities.Camera; public _iEntryPoint:away.geom.Vector3D; @@ -30,6 +31,123 @@ module away.render public _renderableHead:away.pool.CSSRenderableBase; + public _width:number; + public _height:number; + + private _viewPort:away.geom.Rectangle = new away.geom.Rectangle(); + private _viewportDirty:boolean; + private _scissorRect:away.geom.Rectangle = new away.geom.Rectangle(); + private _scissorDirty:boolean; + + private _localPos:away.geom.Point = new away.geom.Point(); + private _globalPos:away.geom.Point = new away.geom.Point(); + + private _scissorUpdated:away.events.RendererEvent; + private _viewPortUpdated:away.events.RendererEvent; + + /** + * A viewPort rectangle equivalent of the StageGL size and position. + */ + public get viewPort():away.geom.Rectangle + { + return this._viewPort; + } + + /** + * A scissor rectangle equivalent of the view size and position. + */ + public get scissorRect():away.geom.Rectangle + { + return this._scissorRect; + } + + /** + * + */ + public get x():number + { + return this._localPos.x; + } + + public set x(value:number) + { + if (this.x == value) + return; + + this.updateGlobalPos(); + } + + /** + * + */ + public get y():number + { + return this._localPos.y; + } + + public set y(value:number) + { + if (this.y == value) + return; + + this._globalPos.y = this._localPos.y = value; + + this.updateGlobalPos(); + } + + /** + * + */ + public get width():number + { + return this._width; + } + + public set width(value:number) + { + 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(); + } + + /** + * + */ + public get height():number + { + return this._height; + } + + public set height(value:number) + { + 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(); + } + + /** + * + */ + public renderableSorter:away.sort.IEntitySorter; + /** * Creates a new RendererBase object. */ @@ -38,6 +156,15 @@ module away.render super(); this._billboardRenderablePool = away.pool.RenderablePool.getPool(away.pool.CSSBillboardRenderable); + this._lineSegmentRenderablePool = away.pool.RenderablePool.getPool(away.pool.CSSLineSegmentRenderable); + + this._viewPort = new away.geom.Rectangle(); + + if (this._width == 0) + this.width = window.innerWidth; + + if (this._height == 0) + this.height = window.innerHeight; } /** @@ -130,6 +257,8 @@ module away.render public render(entityCollector:away.traverse.ICollector) { + this._viewportDirty = false; + this._scissorDirty = false; } /** @@ -151,7 +280,7 @@ module away.render this._renderableHead = null; //grab entity head - var entity:away.pool.EntityListItem = entityCollector.entityHead; + var item:away.pool.EntityListItem = entityCollector.entityHead; //set temp values for entry point and camera forward vector this._pCamera = entityCollector.camera; @@ -159,9 +288,9 @@ module away.render this._pCameraForward = this._pCamera.transform.forwardVector; //iterate through all entities - while (entity) { - this.pFindRenderables(entity.entity) - entity = entity.next; + while (item) { + item.entity._iCollectRenderables(this); + item = item.next; } } @@ -202,22 +331,40 @@ module away.render this._pBackBufferInvalid = true; } + /** + * + * @param billboard + */ + public applyBillboard(billboard:away.entities.Billboard) + { + this._applyRenderable( this._billboardRenderablePool.getItem(billboard)); + } /** * + * @param lineSubMesh */ - public updateGlobalPos() + public applyLineSubMesh(lineSubMesh:away.base.LineSubMesh) + { + //this._applyRenderable( this._billboardRenderablePool.getItem(lineSegment)); + } + + /** + * + * @param skybox + */ + public applySkybox(skybox:away.entities.Skybox) { } + /** * - * @param billboard - * @protected + * @param triangleSubMesh */ - public applyBillboard(billboard:away.entities.Billboard) + public applyTriangleSubMesh(triangleSubMesh:away.base.TriangleSubMesh) { - this.applyRenderable( this._billboardRenderablePool.getItem(billboard)); + } /** @@ -225,7 +372,7 @@ module away.render * @param renderable * @private */ - private applyRenderable(renderable:away.pool.CSSRenderableBase) + private _applyRenderable(renderable:away.pool.CSSRenderableBase) { var material:away.materials.CSSMaterialBase = renderable.materialOwner.material; var entity:away.entities.IEntity = renderable.sourceEntity; @@ -250,16 +397,56 @@ module away.render } } + + /** + * @private + */ + private notifyScissorUpdate() + { + if (this._scissorDirty) + return; + + this._scissorDirty = true; + + if (!this._scissorUpdated) + this._scissorUpdated = new away.events.RendererEvent(away.events.RendererEvent.SCISSOR_UPDATED); + + this.dispatchEvent(this._scissorUpdated); + } + + + /** + * @private + */ + private notifyViewportUpdate() + { + if (this._viewportDirty) + return; + + this._viewportDirty = true; + + if (!this._viewPortUpdated) + this._viewPortUpdated = new away.events.RendererEvent(away.events.RendererEvent.VIEWPORT_UPDATED); + + this.dispatchEvent(this._viewPortUpdated); + } + /** * - * @param entity */ - public pFindRenderables(entity:away.entities.IEntity) + public updateGlobalPos() { - //TODO abstract conditional in the entity with a callback to IRenderer - if (entity.assetType === away.library.AssetType.BILLBOARD) { - this.applyBillboard( entity); - } + this._viewPort.x = this._globalPos.x; + this._viewPort.y = this._globalPos.y; + + this.notifyViewportUpdate(); + this.notifyScissorUpdate(); + } + + + public _iCreateEntityCollector():away.traverse.ICollector + { + throw new away.errors.AbstractMethodError(); } } } diff --git a/src/away/core/render/IRenderer.ts b/src/away/core/render/IRenderer.ts index 9d0cb973..2301bfce 100644 --- a/src/away/core/render/IRenderer.ts +++ b/src/away/core/render/IRenderer.ts @@ -18,19 +18,74 @@ module away.render */ renderableSorter:away.sort.IEntitySorter; + /** + * + */ shareContext:boolean; + /** + * + */ x:number /*uint*/; + + /** + * + */ y:number /*uint*/; + + /** + * + */ width:number /*uint*/; + + /** + * + */ height:number /*uint*/; + /** + * + */ viewPort:away.geom.Rectangle; + /** + * + */ scissorRect:away.geom.Rectangle; + /** + * + * @param billboard + */ + applyBillboard(billboard:away.entities.Billboard); + + /** + * + * @param triangleSubMesh + */ + applyLineSubMesh(triangleSubMesh:away.base.LineSubMesh); + + /** + * + * @param skybox + */ + applySkybox(skybox:away.entities.Skybox); + + /** + * + * @param triangleSubMesh + */ + applyTriangleSubMesh(triangleSubMesh:away.base.TriangleSubMesh); + + /** + * + */ dispose(); + /** + * + * @param entityCollector + */ render(entityCollector:away.traverse.ICollector); /** diff --git a/src/away/entities/Billboard.ts b/src/away/entities/Billboard.ts index b18c1269..714b84cd 100644 --- a/src/away/entities/Billboard.ts +++ b/src/away/entities/Billboard.ts @@ -144,17 +144,14 @@ module away.entities /** * */ - public get sourceEntity():IEntity + public get uvTransform():UVTransform { - return this; + return this._uvTransform; } - /** - * - */ - public get uvTransform():UVTransform + public set uvTransform(value:UVTransform) { - return this._uvTransform; + this._uvTransform = value; } constructor(material:IMaterial, pixelSnapping:string = "auto", smoothing:boolean = false) @@ -169,8 +166,6 @@ module away.entities this._billboardWidth = material.width; this._billboardHeight = material.height; - - this._uvTransform = new UVTransform(this); } /** @@ -191,14 +186,6 @@ module away.entities super.pUpdateBounds(); } - /** - * @internal - */ - public _iSetUVMatrixComponents(offsetU:number, offsetV:number, scaleU:number, scaleV:number, rotationUV:number) - { - - } - /** * //TODO * @@ -221,10 +208,27 @@ module away.entities this._billboardWidth = this._material.width; this._billboardHeight = this._material.height; + this._pBoundsInvalid = true; var len:number = this._pRenderables.length; for (var i:number = 0; i < len; i++) - this._pRenderables[i]._iUpdate(); + this._pRenderables[i].invalidateVertexData("vertices"); //TODO + } + + public _iCollectRenderables(renderer:away.render.IRenderer) + { + // 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); + } + + public _iCollectRenderable(renderer:away.render.IRenderer) + { + renderer.applyBillboard(this); } } } \ No newline at end of file diff --git a/src/away/entities/Camera.ts b/src/away/entities/Camera.ts index bbbff799..d620ae6d 100644 --- a/src/away/entities/Camera.ts +++ b/src/away/entities/Camera.ts @@ -258,5 +258,21 @@ module away.entities { return this.sceneTransform.transformVector(this._projection.unproject(nX, nY, sZ)); } + + public _iCollectRenderables(renderer:away.render.IRenderer) + { + // 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); + } + + public _iCollectRenderable(renderer:away.render.IRenderer) + { + //nothing to do here + } } } \ No newline at end of file diff --git a/src/away/entities/IEntity.ts b/src/away/entities/IEntity.ts index ee8135bd..82e69f8a 100644 --- a/src/away/entities/IEntity.ts +++ b/src/away/entities/IEntity.ts @@ -128,5 +128,12 @@ module away.entities * return the scene transform. */ getRenderSceneTransform(camera:away.entities.Camera):away.geom.Matrix3D; + + /** + * + * @param renderer + * @private + */ + _iCollectRenderables(renderer:away.render.IRenderer); } } \ No newline at end of file diff --git a/src/away/entities/LineSegment.ts b/src/away/entities/LineSegment.ts new file mode 100644 index 00000000..e516bce5 --- /dev/null +++ b/src/away/entities/LineSegment.ts @@ -0,0 +1,216 @@ +module away.entities +{ + import IAnimator = away.animators.IAnimator; + import MaterialEvent = away.events.MaterialEvent; + import Matrix3D = away.geom.Matrix3D; + import UVTransform = away.geom.UVTransform; + import Vector3D = away.geom.Vector3D; + import IMaterial = away.materials.IMaterial; + + /** + * A Line Segment primitive. + */ + export class LineSegment extends away.base.DisplayObject implements IEntity, away.base.IMaterialOwner + { + private _animator:IAnimator; + private _material:IMaterial; + private _uvTransform:UVTransform; + + private onSizeChangedDelegate:(event:MaterialEvent) => void; + + public _startPosition:Vector3D; + public _endPosition:Vector3D; + public _halfThickness:number; + + + /** + * Defines the animator of the line segment. Act on the line segment's geometry. Defaults to null + */ + public get animator():IAnimator + { + return this._animator; + } + + /** + * + */ + public get assetType():string + { + return away.library.AssetType.LINE_SEGMENT; + } + + /** + * + */ + public get startPostion():Vector3D + { + return this._startPosition; + } + + public set startPosition(value:Vector3D) + { + if (this._startPosition == value) + return; + + this._startPosition = value; + + this.notifyRenderableUpdate(); + } + + /** + * + */ + public get endPosition():Vector3D + { + return this._endPosition; + } + + public set endPosition(value:Vector3D) + { + if (this._endPosition == value) + return; + + this._endPosition = value; + + this.notifyRenderableUpdate(); + } + + /** + * + */ + public get material():IMaterial + { + return this._material; + } + + public set material(value:IMaterial) + { + if (value == this._material) + return; + + if (this._material) { + this._material.iRemoveOwner(this); + this._material.removeEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate); + } + + + this._material = value; + + if (this._material) { + this._material.iAddOwner(this); + this._material.addEventListener(MaterialEvent.SIZE_CHANGED, this.onSizeChangedDelegate); + } + } + + /** + * + */ + public get thickness():number + { + return this._halfThickness*2; + } + + public set thickness(value:number) + { + if (this._halfThickness == value) + return; + + this._halfThickness = value*0.5; + + this.notifyRenderableUpdate(); + } + + /** + * + */ + public get uvTransform():UVTransform + { + return this._uvTransform; + } + + public set uvTransform(value:away.geom.UVTransform) + { + this._uvTransform = value; + } + + /** + * 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:IMaterial, startPosition:Vector3D, endPosition:Vector3D, thickness:number = 1) + { + super(); + + this._pIsEntity = true; + + this.onSizeChangedDelegate = (event:MaterialEvent) => this.onSizeChanged(event); + + this.material = material; + + this._startPosition = startPosition; + this._endPosition = endPosition; + this._halfThickness = thickness*0.5; + } + + public dispose() + { + this._startPosition = null; + this._endPosition = null; + } + + /** + * @protected + */ + public pCreateEntityPartitionNode():away.partition.EntityNode + { + return new away.partition.EntityNode(this); + } + + /** + * @protected + */ + public pUpdateBounds() + { + this._pBounds.fromExtremes(this._startPosition.x, this._startPosition.y, this._startPosition.z, this._endPosition.x, this._endPosition.y, this._endPosition.z); + + super.pUpdateBounds(); + } + + /** + * @private + */ + private onSizeChanged(event:MaterialEvent) + { + this.notifyRenderableUpdate(); + } + + /** + * @private + */ + private notifyRenderableUpdate() + { + var len:number = this._pRenderables.length; + for (var i:number = 0; i < len; i++) + this._pRenderables[i].invalidateVertexData("vertices"); //TODO + } + + public _iCollectRenderables(renderer:away.render.IRenderer) + { + // 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); + } + + public _iCollectRenderable(renderer:away.render.IRenderer) + { + //TODO + } + } +} diff --git a/src/away/entities/Mesh.ts b/src/away/entities/Mesh.ts new file mode 100644 index 00000000..d85f2b80 --- /dev/null +++ b/src/away/entities/Mesh.ts @@ -0,0 +1,452 @@ +/// + +module away.entities +{ + import Delegate = away.utils.Delegate; + + import IAnimator = away.animators.IAnimator; + import SubGeometryBase = away.base.SubGeometryBase; + import SubGeometry = away.base.TriangleSubGeometry; + import ISubMesh = away.base.ISubMesh; + import ISubMeshClass = away.base.ISubMeshClass; + import Geometry = away.base.Geometry; + import GeometryEvent = away.events.GeometryEvent; + import UVTransform = away.geom.UVTransform; + import IMaterial = away.materials.IMaterial; + import EntityNode = away.partition.EntityNode; + import IRenderer = away.render.IRenderer; + + /** + * 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. + */ + export class Mesh extends away.containers.DisplayObjectContainer implements IEntity + { + private _uvTransform:UVTransform; + + private _subMeshes:Array; + private _geometry:Geometry; + private _material:IMaterial; + private _animator:IAnimator; + private _castsShadows:boolean = true; + private _shareAnimationGeometry:boolean = true; + + private _onGeometryBoundsInvalidDelegate:Function; + private _onSubGeometryAddedDelegate:Function; + private _onSubGeometryRemovedDelegate:Function; + + /** + * Defines the animator of the mesh. Act on the mesh's geometry. Default value is null. + */ + public get animator():IAnimator + { + return this._animator; + } + + public set animator(value:IAnimator) + { + if (this._animator) + this._animator.removeOwner(this); + + this._animator = value; + + var len:number = this._subMeshes.length; + var subMesh:away.base.ISubMesh; + + for (var i:number = 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); + } + + /** + * + */ + public get assetType():string + { + return away.library.AssetType.MESH; + } + + /** + * Indicates whether or not the Mesh can cast shadows. Default value is true. + */ + public get castsShadows():boolean + { + return this._castsShadows; + } + + public set castsShadows(value:boolean) + { + this._castsShadows = value; + } + + /** + * The geometry used by the mesh that provides it with its shape. + */ + public get geometry():Geometry + { + if (this._iSourcePrefab) + this._iSourcePrefab._iValidate(); + + return this._geometry; + } + + public set geometry(value:Geometry) + { + var i:number; + + 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:Array = this._geometry.subGeometries; + + for (i = 0; i < subGeoms.length; ++i) + this.addSubMesh(subGeoms[i]); + } + } + + /** + * The material with which to render the Mesh. + */ + public get material():IMaterial + { + return this._material; + } + + public set material(value:IMaterial) + { + if (value == this._material) + return; + + var i:number; + var len:number = this._subMeshes.length; + var subMesh:ISubMesh; + + for (i = 0; i < len; i++) + if (this._material && (subMesh = this._subMeshes[i]).material == this._material) + this._material.iRemoveOwner(subMesh); + + this._material = value; + + for (i = 0; i < len; i++) + if (this._material && (subMesh = this._subMeshes[i]).material == this._material) + this._material.iAddOwner(subMesh); + } + + /** + * Indicates whether or not the mesh share the same animation geometry. + */ + public get shareAnimationGeometry():boolean + { + return this._shareAnimationGeometry; + } + + public set shareAnimationGeometry(value:boolean) + { + this._shareAnimationGeometry = value; + } + + /** + * The SubMeshes out of which the Mesh consists. Every SubMesh can be assigned a material to override the Mesh's + * material. + */ + public get subMeshes():Array + { + // 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; + } + + /** + * + */ + public get uvTransform():UVTransform + { + return this._uvTransform; + } + + public set uvTransform(value:away.geom.UVTransform) + { + this._uvTransform = value; + } + + /** + * 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:Geometry, material:IMaterial = null) + { + super(); + + this._pIsEntity = true; + + 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 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.material = material; + } + + /** + * + */ + public bakeTransformations() + { + this.geometry.applyTransformation(this._iMatrix3D); + this._iMatrix3D.identity(); + } + + /** + * @inheritDoc + */ + public dispose() + { + super.dispose(); + + this.material = null; + this.geometry = null; + } + + /** + * Disposes mesh including the animator and children. This is a merely a convenience method. + * @return + */ + public disposeWithAnimatorAndChildren() + { + this.disposeWithChildren(); + + if (this._animator) + this._animator.dispose(); + } + + /** + * 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 + { + var clone:Mesh = 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; + //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; + + var len:number = this._subMeshes.length; + for (var i:number = 0; i < len; ++i) + clone._subMeshes[i].material = this._subMeshes[i]._iGetExplicitMaterial(); + + + len = this.numChildren; + var obj:any; + + for (i = 0; i < len; ++i) { + obj = this.getChildAt(i).clone(); + clone.addChild( obj); + } + + if (this._animator) + clone.animator = this._animator.clone(); + + return clone; + } + + /** + * //TODO + * + * @param subGeometry + * @returns {SubMeshBase} + */ + public getSubMeshFromSubGeometry(subGeometry:SubGeometry):ISubMesh + { + return this._subMeshes[this._geometry.subGeometries.indexOf(subGeometry)]; + } + + /** + * @protected + */ + public pCreateEntityPartitionNode():away.partition.EntityNode + { + return new away.partition.EntityNode(this); + } + + /** + * //TODO + * + * @protected + */ + public pUpdateBounds() + { + this._pBounds.fromGeometry(this._geometry); + + super.pUpdateBounds(); + } + + /** + * //TODO + * + * @private + */ + private onGeometryBoundsInvalid(event:GeometryEvent) + { + this.pInvalidateBounds(); + } + + /** + * Called when a SubGeometry was added to the Geometry. + * + * @private + */ + private onSubGeometryAdded(event:GeometryEvent) + { + this.addSubMesh(event.subGeometry); + } + + /** + * Called when a SubGeometry was removed from the Geometry. + * + * @private + */ + private onSubGeometryRemoved(event:GeometryEvent) + { + var subMesh:ISubMesh; + var subGeom:SubGeometryBase = event.subGeometry; + var len:number = this._subMeshes.length; + var i:number; + + // Important! This has to be done here, and not delayed until the + // next render loop, since this may be caused by the geometry being + // rebuilt IN THE RENDER LOOP. Invalidating and waiting will delay + // it until the NEXT RENDER FRAME which is probably not desirable. + for (i = 0; i < len; ++i) { + + subMesh = this._subMeshes[i]; + + if (subMesh.subGeometry == subGeom) { + subMesh.dispose(); + + this._subMeshes.splice(i, 1); + + break; + } + } + + --len; + for (; i < len; ++i) + this._subMeshes[i]._iIndex = i; + } + + /** + * Adds a SubMeshBase wrapping a SubGeometry. + * + * @param subGeometry + */ + private addSubMesh(subGeometry:SubGeometryBase) + { + var SubMeshClass:ISubMeshClass = subGeometry.subMeshClass; + + var subMesh:ISubMesh = new SubMeshClass(subGeometry, this, null); + var len:number = this._subMeshes.length; + + subMesh._iIndex = len; + + this._subMeshes[len] = subMesh; + + this.pInvalidateBounds(); + } + + /** + * //TODO + * + * @param shortestCollisionDistance + * @param findClosest + * @returns {boolean} + * + * @internal + */ + public _iTestCollision(shortestCollisionDistance:number, findClosest:boolean):boolean + { + return this._pPickingCollider.testMeshCollision(this, this._pPickingCollisionVO, shortestCollisionDistance, findClosest); + } + + /** + * + * @param renderer + * + * @internal + */ + public _iCollectRenderables(renderer:IRenderer) + { + // 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:number /*uint*/ = this._subMeshes.length; + for (var i:number /*uint*/ = 0; i < len; i++) + this._subMeshes[i]._iCollectRenderable(renderer); + } + } +} diff --git a/src/away/entities/Skybox.ts b/src/away/entities/Skybox.ts new file mode 100755 index 00000000..9868fa61 --- /dev/null +++ b/src/away/entities/Skybox.ts @@ -0,0 +1,133 @@ +/// + +module away.entities +{ + import IAnimator = away.animators.IAnimator; + import UVTransform = away.geom.UVTransform; + import IMaterial = away.materials.IMaterial; + + /** + * 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. + */ + export class Skybox extends away.base.DisplayObject implements IEntity, away.base.IMaterialOwner + { + private _uvTransform:UVTransform; + + private _material:IMaterial; + private _animator:IAnimator; + + public get animator():IAnimator + { + return this._animator; + } + + /** + * + */ + public get uvTransform():UVTransform + { + return this._uvTransform; + } + + public set uvTransform(value:away.geom.UVTransform) + { + this._uvTransform = value; + } + + /** + * Create a new Skybox object. + * + * @param material The material with which to render the Skybox. + */ + constructor(material:IMaterial) + { + super(); + + this._pIsEntity = true; + + this.material = material; + } + + /** + * The material with which to render the Skybox. + */ + public get material():IMaterial + { + return this._material; + } + + public set material(value:IMaterial) + { + if (value == this._material) + return; + + if (this._material) + this._material.iRemoveOwner( this); + + this._material = value; + + if (this._material) + this._material.iAddOwner( this); + } + + public get assetType():string + { + return away.library.AssetType.SKYBOX; + } + + /** + * @protected + */ + public pInvalidateBounds() + { + // dead end + } + + /** + * @protected + */ + public pCreateEntityPartitionNode():away.partition.EntityNode + { + return new away.partition.SkyboxNode(this); + } + + /** + * @protected + */ + public pGetDefaultBoundingVolume():away.bounds.BoundingVolumeBase + { + return new away.bounds.NullBounds(); + } + + /** + * @protected + */ + public pUpdateBounds() + { + this._pBoundsInvalid = false; + } + + public get castsShadows():boolean + { + return false; //TODO + } + + public _iCollectRenderables(renderer:away.render.IRenderer) + { + // 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); + } + + public _iCollectRenderable(renderer:away.render.IRenderer) + { + renderer.applySkybox(this); + } + } +} diff --git a/src/away/events/Event.ts b/src/away/events/Event.ts index 9d468da5..260676f6 100644 --- a/src/away/events/Event.ts +++ b/src/away/events/Event.ts @@ -30,7 +30,7 @@ module away.events * @property target * @type Object */ - public target:Object = undefined; + public target:any = undefined; constructor(type:string) { diff --git a/src/away/events/GeometryEvent.ts b/src/away/events/GeometryEvent.ts new file mode 100644 index 00000000..dff18b07 --- /dev/null +++ b/src/away/events/GeometryEvent.ts @@ -0,0 +1,55 @@ +/// +module away.events +{ + + /** + * Dispatched to notify changes in a geometry object's state. + * + * @class away.events.GeometryEvent + * @see away3d.core.base.Geometry + */ + export class GeometryEvent extends away.events.Event + { + /** + * Dispatched when a TriangleSubGeometry was added to the dispatching Geometry. + */ + public static SUB_GEOMETRY_ADDED:string = "SubGeometryAdded"; + + /** + * Dispatched when a TriangleSubGeometry was removed from the dispatching Geometry. + */ + public static SUB_GEOMETRY_REMOVED:string = "SubGeometryRemoved"; + + public static BOUNDS_INVALID:string = "BoundsInvalid"; + + private _subGeometry:away.base.SubGeometryBase; + + /** + * 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 = null) + { + super(type) //, false, false); + this._subGeometry = subGeometry; + } + + /** + * The TriangleSubGeometry object that is the subject of this event, if appropriate. + */ + public get subGeometry():away.base.SubGeometryBase + { + return this._subGeometry; + } + + /** + * Clones the event. + * @return An exact duplicate of the current object. + */ + public clone():Event + { + return new GeometryEvent(this.type, this._subGeometry); + } + } +} diff --git a/src/away/events/StageGLEvent.ts b/src/away/events/StageGLEvent.ts index 6b3bb3f7..148b4c44 100644 --- a/src/away/events/StageGLEvent.ts +++ b/src/away/events/StageGLEvent.ts @@ -7,7 +7,7 @@ module away.events { //import flash.events.Event; - export class StageGLEvent extends Event + export class StageGLEvent extends away.events.Event { public static CONTEXTGL_CREATED:string = "contextGLCreated"; public static CONTEXTGL_DISPOSED:string = "contextGLDisposed"; diff --git a/src/away/events/SubGeometryEvent.ts b/src/away/events/SubGeometryEvent.ts new file mode 100644 index 00000000..0f0430c3 --- /dev/null +++ b/src/away/events/SubGeometryEvent.ts @@ -0,0 +1,54 @@ +/// +module away.events +{ + + /** + * Dispatched to notify changes in a sub geometry object's state. + * + * @class away.events.SubGeometryEvent + * @see away3d.core.base.Geometry + */ + export class SubGeometryEvent extends away.events.Event + { + /** + * Dispatched when a TriangleSubGeometry's index data has been updated. + */ + public static INDICES_UPDATED:string = "indicesUpdated"; + + /** + * Dispatched when a TriangleSubGeometry's vertex data has been updated. + */ + public static VERTICES_UPDATED:string = "verticesUpdated"; + + private _dataType:string; + + /** + * 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 = "") + { + super(type); + this._dataType = dataType; + } + + /** + * The data type of the vertex data. + */ + public get dataType():string + { + return this._dataType; + } + + /** + * Clones the event. + * + * @return An exact duplicate of the current object. + */ + public clone():Event + { + return new SubGeometryEvent(this.type, this._dataType); + } + } +} diff --git a/src/away/materials/CSSMaterialBase.ts b/src/away/materials/CSSMaterialBase.ts index e94cdecc..a45a05cc 100644 --- a/src/away/materials/CSSMaterialBase.ts +++ b/src/away/materials/CSSMaterialBase.ts @@ -21,7 +21,7 @@ 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. */ - export class CSSMaterialBase extends away.library.NamedAssetBase implements away.library.IAsset, IMaterial + export class CSSMaterialBase extends away.library.NamedAssetBase implements IMaterial { private _height:number; private _sizeChanged:MaterialEvent; diff --git a/src/away/materials/IMaterial.ts b/src/away/materials/IMaterial.ts index 666a4b9b..dcbc94b8 100644 --- a/src/away/materials/IMaterial.ts +++ b/src/away/materials/IMaterial.ts @@ -8,7 +8,7 @@ module away.materials /** * @class away.materials.IMaterial */ - export interface IMaterial extends away.events.IEventDispatcher + export interface IMaterial extends away.library.IAsset { id:string; @@ -17,11 +17,32 @@ module away.materials */ height:number; + /** + * + */ + 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; + + /** * * diff --git a/src/away/parsers/ParserBase.ts b/src/away/parsers/ParserBase.ts index 7e4fb414..e33c5e77 100644 --- a/src/away/parsers/ParserBase.ts +++ b/src/away/parsers/ParserBase.ts @@ -232,77 +232,10 @@ module away.parsers 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)); } diff --git a/src/away/prefabs/PrefabBase.ts b/src/away/prefabs/PrefabBase.ts new file mode 100644 index 00000000..98f14390 --- /dev/null +++ b/src/away/prefabs/PrefabBase.ts @@ -0,0 +1,57 @@ +/// + +module away.prefabs +{ + import DisplayObject = away.base.DisplayObject; +// import BatchObject = away.base.BatchObject; + import AbstractMethodError = away.errors.AbstractMethodError; + + /** + * PrefabBase is an abstract base class for prefabs, which are prebuilt display objects that allow easy cloning and updating + */ + export class PrefabBase extends away.library.NamedAssetBase + { + public _pObjects:Array = new Array(); + +// public _pBatchObjects:Array = new Array(); + + /** + * Creates a new PrefabBase object. + */ + constructor() + { + super(); + } + + /** + * Returns a display object generated from this prefab + */ + public getNewObject():DisplayObject + { + var object:DisplayObject = this._pCreateObject(); + + this._pObjects.push(object); + + return object; + } + +// public getNewBatchObject():BatchObject +// { +// var object:BatchObject = this._pCreateBatchObject(); +// +// this._pBatchObjects.push(object); +// +// return object; +// } + + public _pCreateObject():DisplayObject + { + throw new AbstractMethodError(); + } + + public _iValidate() + { + // To be overridden when necessary + } + } +} diff --git a/src/away/utils/RequestAnimationFrame.ts b/src/away/utils/RequestAnimationFrame.ts index a44988a9..bd9fb550 100644 --- a/src/away/utils/RequestAnimationFrame.ts +++ b/src/away/utils/RequestAnimationFrame.ts @@ -28,7 +28,8 @@ module away.utils this._rafUpdateFunction = () => { - if (this._active) { + if (this._active) + { this._tick(); @@ -60,31 +61,28 @@ module away.utils */ public start() { - this._prevTime = this._getTimer(); this._active = true; - if (window['mozRequestAnimationFrame']) { - - window.requestAnimationFrame = window['mozRequestAnimationFrame']; - - } else if (window['webkitRequestAnimationFrame']) { - - window.requestAnimationFrame = window['webkitRequestAnimationFrame']; - - } else if (window['oRequestAnimationFrame']) { - - window.requestAnimationFrame = window['oRequestAnimationFrame']; - - } - - if (window.requestAnimationFrame) { - + if (window.requestAnimationFrame) + { window.requestAnimationFrame(this._rafUpdateFunction); - } - - + else + { + if (window['mozRequestAnimationFrame']) + { + window.requestAnimationFrame = window['mozRequestAnimationFrame']; + } + else if (window['webkitRequestAnimationFrame']) + { + window.requestAnimationFrame = window['webkitRequestAnimationFrame']; + } + else if (window['oRequestAnimationFrame']) + { + window.requestAnimationFrame = window['oRequestAnimationFrame']; + } + } } /** @@ -92,9 +90,7 @@ module away.utils */ public stop() { - this._active = false; - } // Get / Set @@ -105,9 +101,7 @@ module away.utils */ public get active():boolean { - return this._active; - } // Private diff --git a/tests/geom/VextMat3DTests.ts b/tests/geom/VextMat3DTests.ts index 667dea69..5a8b1831 100644 --- a/tests/geom/VextMat3DTests.ts +++ b/tests/geom/VextMat3DTests.ts @@ -532,12 +532,12 @@ module tests.geom { public outputDecompose(result : number[] , original : number[] , a1 : away.geom.Vector3D , a2 : away.geom.Vector3D , a3 : away.geom.Vector3D) { - var a1 : string = 'new Vector3D( ' + a1.x + ' , ' + a1.y + ' , ' + a1.z + ' )'; - var a2 : string = 'new Vector3D( ' + a2.x + ' , ' + a2.y + ' , ' + a2.z + ' )'; - var a3 : string = 'new Vector3D( ' + a3.x + ' , ' + a3.y + ' , ' + a3.z + ' )'; + var s1 : string = 'new Vector3D( ' + a1.x + ' , ' + a1.y + ' , ' + a1.z + ' )'; + var s2 : string = 'new Vector3D( ' + a2.x + ' , ' + a2.y + ' , ' + a2.z + ' )'; + var s3 : string = 'new Vector3D( ' + a3.x + ' , ' + a3.y + ' , ' + a3.z + ' )'; - console.log( 'testDecompose( new [' + result + '], new [' + original + '] , ' + a1 + ' , '+ a2 + ' , ' + a3 + ' );' ) ; + console.log( 'testDecompose( new [' + result + '], new [' + original + '] , ' + s1 + ' , '+ s2 + ' , ' + s3 + ' );' ) ; } @@ -981,14 +981,14 @@ module tests.geom { } - public outputInvert(success : boolean , data : Array , original : Array ) + public outputInvert(success : boolean , data : Array , original : Array ) { console.log( 'testInvert(' + success + ', new [' + data + '], new [' + original + ']);' ) ; } - public output( data : Array , result : number ) + public output( data : Array , result : number ) { console.log( 'testDeterminant( new [' + data + '], ' + result + ');' ) ; diff --git a/tests/js/ATFTextureTest.js b/tests/js/ATFTextureTest.js new file mode 100644 index 00000000..dbe68429 --- /dev/null +++ b/tests/js/ATFTextureTest.js @@ -0,0 +1,34 @@ +/// +var tests; +(function (tests) { + (function (textures) { + var Delegate = away.utils.Delegate; + + var ATFTextureTest = (function () { + function ATFTextureTest() { + //--------------------------------------- + // Load a PNG + var mipUrlRequest = new away.net.URLRequest('assets/fire.atf'); + this.mipLoader = new away.net.URLLoader(); + this.mipLoader.load(mipUrlRequest); + this.mipLoader.addEventListener(away.events.Event.COMPLETE, Delegate.create(this, this.mipImgLoaded)); + } + ATFTextureTest.prototype.mipImgLoaded = function (e) { + var stage3DManager = away.managers.StageGLManager.getInstance(); + var stage3D = stage3DManager.getStageGLAt(0); + var context3D = new away.gl.ContextGL(stage3D.canvas); + var loader = e.target; + + console.log('away.events.Event.COMPLETE', loader); + + this.target = new away.textures.ATFTexture(loader.data); + + console.log('away.textures.ATFTexture - Created', this.target); + }; + return ATFTextureTest; + })(); + textures.ATFTextureTest = ATFTextureTest; + })(tests.textures || (tests.textures = {})); + var textures = tests.textures; +})(tests || (tests = {})); +//# sourceMappingURL=ATFTextureTest.js.map diff --git a/tests/js/ATFTextureTest.js.map b/tests/js/ATFTextureTest.js.map new file mode 100644 index 00000000..233ff231 --- /dev/null +++ b/tests/js/ATFTextureTest.js.map @@ -0,0 +1 @@ +{"version":3,"file":"ATFTextureTest.js","sourceRoot":"","sources":["../textures/ATFTextureTest.ts"],"names":["tests","tests.textures","tests.textures.ATFTextureTest","tests.textures.ATFTextureTest.constructor","tests.textures.ATFTextureTest.mipImgLoaded"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AA0CX,CA1CD,UAAO,KAAK;KAAZA,UAAaA,QAAQA;QAEpBC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;YAOIC;gBAGIC,yCAAyCA;gBACzCA,aAAaA;gBAEbA,IAAIA,aAAaA,GAAGA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,iBAAiBA,CAACA;gBAC/DA,IAAIA,CAACA,SAASA,GAAIA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAACA,CAACA;gBAC1CA,IAAIA,CAACA,SAASA,CAACA,IAAIA,CAAEA,aAAaA,CAAEA;gBACpCA,IAAIA,CAACA,SAASA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,YAAYA,CAACA,CAAEA;YAE5GA,CAACA;YAEDD,wCAAAA,UAAsBA,CAACA;gBAGnBE,IAAIA,cAAcA,GAA+CA,IAAIA,CAACA,QAAQA,CAACA,cAAcA,CAACA,WAAWA,CAACA,CAACA;gBAC3GA,IAAIA,OAAOA,GAAgCA,cAAcA,CAACA,YAAYA,CAAEA,CAACA,CAAEA;gBAC3EA,IAAIA,SAASA,GAA0BA,IAAIA,IAAIA,CAACA,EAAEA,CAACA,SAASA,CAAEA,OAAOA,CAACA,MAAMA,CAAEA;gBAC9EA,IAAIA,MAAMA,GAA0DA,CAACA,CAACA,MAAMA;;gBAE5EA,OAAOA,CAACA,GAAGA,CAAEA,4BAA4BA,EAAGA,MAAMA,CAAEA;;gBAEpDA,IAAIA,CAACA,MAAMA,GAAOA,IAAIA,IAAIA,CAACA,QAAQA,CAACA,UAAUA,CAAEA,MAAMA,CAACA,IAAIA,CAAEA;;gBAE7DA,OAAOA,CAACA,GAAGA,CAAEA,oCAAoCA,EAAGA,IAAIA,CAACA,MAAMA,CAAEA;YAErEA,CAACA;YAELF,sBAACA;QAADA,CAACA,IAAAD;QApCDA,yCAoCCA;IAELA,CAACA,2CAAAD;kCAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/AssetLibraryTest.js.map b/tests/js/AssetLibraryTest.js.map index a607ede7..107b3f67 100644 --- a/tests/js/AssetLibraryTest.js.map +++ b/tests/js/AssetLibraryTest.js.map @@ -1 +1 @@ -{"version":3,"file":"AssetLibraryTest.js","sourceRoot":"","sources":["../parsers/JSONTextureParser.ts","../library/AssetLibraryTest.ts"],"names":["parsers","parsers.JSONTextureParser","parsers.JSONTextureParser.constructor","parsers.JSONTextureParser.supportsType","parsers.JSONTextureParser.supportsData","parsers.JSONTextureParser._iResolveDependency","parsers.JSONTextureParser._iResolveDependencyFailure","parsers.JSONTextureParser.parseJson","parsers.JSONTextureParser._pProceedParsing","tests","tests.library","tests.library.AssetLibraryTest","tests.library.AssetLibraryTest.constructor","tests.library.AssetLibraryTest.onAssetComplete","tests.library.AssetLibraryTest.onResourceComplete"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"AssetLibraryTest.js","sourceRoot":"","sources":["../parsers/JSONTextureParser.ts","../library/AssetLibraryTest.ts"],"names":["parsers","parsers.JSONTextureParser","parsers.JSONTextureParser.constructor","parsers.JSONTextureParser.supportsType","parsers.JSONTextureParser.supportsData","parsers.JSONTextureParser._iResolveDependency","parsers.JSONTextureParser._iResolveDependencyFailure","parsers.JSONTextureParser.parseJson","parsers.JSONTextureParser._pProceedParsing","tests","tests.library","tests.library.AssetLibraryTest","tests.library.AssetLibraryTest.constructor","tests.library.AssetLibraryTest.onAssetComplete","tests.library.AssetLibraryTest.onResourceComplete"],"mappings":"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"} \ No newline at end of file diff --git a/tests/js/AssetLoaderTest.js.map b/tests/js/AssetLoaderTest.js.map index 467ecda9..90fd71f0 100644 --- a/tests/js/AssetLoaderTest.js.map +++ b/tests/js/AssetLoaderTest.js.map @@ -1 +1 @@ -{"version":3,"file":"AssetLoaderTest.js","sourceRoot":"","sources":["../parsers/JSONTextureParser.ts","../net/AssetLoaderTest.ts"],"names":["parsers","parsers.JSONTextureParser","parsers.JSONTextureParser.constructor","parsers.JSONTextureParser.supportsType","parsers.JSONTextureParser.supportsData","parsers.JSONTextureParser._iResolveDependency","parsers.JSONTextureParser._iResolveDependencyFailure","parsers.JSONTextureParser.parseJson","parsers.JSONTextureParser._pProceedParsing","tests","tests.net","tests.net.AssetLoaderTest","tests.net.AssetLoaderTest.constructor","tests.net.AssetLoaderTest.onParseComplete","tests.net.AssetLoaderTest.onTextureSizeError","tests.net.AssetLoaderTest.onAssetComplete"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"AssetLoaderTest.js","sourceRoot":"","sources":["../parsers/JSONTextureParser.ts","../net/AssetLoaderTest.ts"],"names":["parsers","parsers.JSONTextureParser","parsers.JSONTextureParser.constructor","parsers.JSONTextureParser.supportsType","parsers.JSONTextureParser.supportsData","parsers.JSONTextureParser._iResolveDependency","parsers.JSONTextureParser._iResolveDependencyFailure","parsers.JSONTextureParser.parseJson","parsers.JSONTextureParser._pProceedParsing","tests","tests.net","tests.net.AssetLoaderTest","tests.net.AssetLoaderTest.constructor","tests.net.AssetLoaderTest.onParseComplete","tests.net.AssetLoaderTest.onTextureSizeError","tests.net.AssetLoaderTest.onAssetComplete"],"mappings":"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"} \ No newline at end of file diff --git a/tests/js/BitmapDataTest.js.map b/tests/js/BitmapDataTest.js.map index 5537b9ea..189bc60f 100644 --- a/tests/js/BitmapDataTest.js.map +++ b/tests/js/BitmapDataTest.js.map @@ -1 +1 @@ -{"version":3,"file":"BitmapDataTest.js","sourceRoot":"","sources":["../base/BitmapDataTest.ts"],"names":["tests","tests.base","tests.base.BitmapDataTest","tests.base.BitmapDataTest.constructor","tests.base.BitmapDataTest.onMouseDown","tests.base.BitmapDataTest.imgLoadedError","tests.base.BitmapDataTest.imgLoaded","tests.base.BitmapDataTest.onImageLoad"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"BitmapDataTest.js","sourceRoot":"","sources":["../base/BitmapDataTest.ts"],"names":["tests","tests.base","tests.base.BitmapDataTest","tests.base.BitmapDataTest.constructor","tests.base.BitmapDataTest.onMouseDown","tests.base.BitmapDataTest.imgLoadedError","tests.base.BitmapDataTest.imgLoaded","tests.base.BitmapDataTest.onImageLoad"],"mappings":"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"} \ No newline at end of file diff --git a/tests/js/ByteArrayTest.js b/tests/js/ByteArrayTest.js index 7896d1bd..9c18ec72 100644 --- a/tests/js/ByteArrayTest.js +++ b/tests/js/ByteArrayTest.js @@ -1,6 +1,6 @@ +/// var tests; (function (tests) { - /// (function (utils) { var ByteArrayTest = (function () { function ByteArrayTest() { diff --git a/tests/js/ByteArrayTest.js.map b/tests/js/ByteArrayTest.js.map index 590d31bb..ebfe1a37 100644 --- a/tests/js/ByteArrayTest.js.map +++ b/tests/js/ByteArrayTest.js.map @@ -1 +1 @@ -{"version":3,"file":"ByteArrayTest.js","sourceRoot":"","sources":["../away/utils/ByteArrayTest.ts"],"names":["tests","tests.utils","tests.utils.ByteArrayTest","tests.utils.ByteArrayTest.constructor"],"mappings":"AAEA,IAAO,KAAK;AA6CX,CA7CD,UAAO,KAAK;IAFZA,uDAAuDA;KAEvDA,UAAaA,KAAKA;QAGdC;YAGIC;gBAIIC,IAAIA,EAAEA,GAAwBA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,SAASA,CAACA,CAACA,CAACA;gBACzDA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;;gBAErBA,IAAIA,EAAEA,GAAwBA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,SAASA,CAACA,CAACA,CAACA;gBACzDA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;gBACrBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA,CAACA;;gBAErBA,EAAEA,CAACA,QAAQA,GAAGA,CAACA,CAACA;gBAChBA,EAAEA,CAACA,QAAQA,GAAGA,CAACA,CAACA;;gBAEhBA,EAAEA,CAACA,SAASA,CAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAAEA,CAACA;;gBAEzBA,OAAOA,CAACA,GAAGA,CAAEA,aAAaA,EAAGA,EAAEA,CAACA,QAAQA,CAAEA,CAACA;gBAC3CA,OAAOA,CAACA,GAAGA,CAAEA,WAAWA,EAAGA,EAAEA,CAACA,MAAMA,EAAGA,aAAaA,EAAGA,EAAEA,CAACA,QAAQA,CAAEA,CAACA;;gBAErEA,OAAQA,EAAEA,CAACA,iBAAiBA,CAACA,CAACA,CAC9BA;oBACIA,OAAOA,CAACA,GAAGA,CAAEA,EAAEA,CAACA,QAAQA,CAACA,CAACA,CAACA,QAAQA,CAAEA,EAAEA,CAAEA,CAAEA,CAACA;iBAC/CA;YAELA,CAACA;YAGLD;AAACA,QAADA,CAACA,IAAAD;QAvCDA,oCAuCCA;IAGLA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"ByteArrayTest.js","sourceRoot":"","sources":["../utils/ByteArrayTest.ts"],"names":["tests","tests.utils","tests.utils.ByteArrayTest","tests.utils.ByteArrayTest.constructor"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AA6CX,CA7CD,UAAO,KAAK;KAAZA,UAAaA,KAAKA;QAGdC;YAGIC;gBAIIC,IAAIA,EAAEA,GAAwBA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,SAASA,CAACA,CAACA;gBACxDA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;;gBAEpBA,IAAIA,EAAEA,GAAwBA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,SAASA,CAACA,CAACA;gBACxDA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;gBACpBA,EAAEA,CAACA,SAASA,CAAEA,IAAIA,CAAEA;;gBAEpBA,EAAEA,CAACA,QAAQA,GAAGA,CAACA;gBACfA,EAAEA,CAACA,QAAQA,GAAGA,CAACA;;gBAEfA,EAAEA,CAACA,SAASA,CAAEA,EAAEA,EAAEA,CAACA,EAAEA,CAACA,CAAEA;;gBAExBA,OAAOA,CAACA,GAAGA,CAAEA,aAAaA,EAAGA,EAAEA,CAACA,QAAQA,CAAEA;gBAC1CA,OAAOA,CAACA,GAAGA,CAAEA,WAAWA,EAAGA,EAAEA,CAACA,MAAMA,EAAGA,aAAaA,EAAGA,EAAEA,CAACA,QAAQA,CAAEA;;gBAEpEA,OAAQA,EAAEA,CAACA,iBAAiBA,CAACA,CAACA,CAC9BA;oBACIA,OAAOA,CAACA,GAAGA,CAAEA,EAAEA,CAACA,QAAQA,CAACA,CAACA,CAACA,QAAQA,CAAEA,EAAEA,CAAEA,CAAEA;iBAC9CA;YAELA,CAACA;YAGLD,qBAACA;QAADA,CAACA,IAAAD;QAvCDA,oCAuCCA;IAGLA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/ColorUtils.js b/tests/js/ColorUtils.js index 16257999..88f42d57 100644 --- a/tests/js/ColorUtils.js +++ b/tests/js/ColorUtils.js @@ -1,7 +1,6 @@ +/// var tests; (function (tests) { - /// - // (function (geom) { var ColorUtils = (function () { function ColorUtils() { diff --git a/tests/js/ColorUtils.js.map b/tests/js/ColorUtils.js.map index 93b49411..49c8339e 100644 --- a/tests/js/ColorUtils.js.map +++ b/tests/js/ColorUtils.js.map @@ -1 +1 @@ -{"version":3,"file":"ColorUtils.js","sourceRoot":"","sources":["../away/geom/ColorUtils.ts"],"names":["tests","tests.geom","tests.geom.ColorUtils","tests.geom.ColorUtils.constructor"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"ColorUtils.js","sourceRoot":"","sources":["../geom/ColorUtils.ts"],"names":["tests","tests.geom","tests.geom.ColorUtils","tests.geom.ColorUtils.constructor"],"mappings":"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"} \ No newline at end of file diff --git a/tests/js/EDTest.js.map b/tests/js/EDTest.js.map index 365d53aa..94080236 100644 --- a/tests/js/EDTest.js.map +++ b/tests/js/EDTest.js.map @@ -1 +1 @@ -{"version":3,"file":"EDTest.js","sourceRoot":"","sources":["../events/EDTest.ts"],"names":["tests","tests.events","tests.events.EDTest","tests.events.EDTest.constructor","tests.events.EDTest.onComplete"],"mappings":"AAAA,iDAAiD;;;;;;;AAEjD,IAAO,KAAK;AA6BX,CA7BD,UAAO,KAAK;KAAZA,UAAaA,MAAMA;QAElBC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;;YAGIC;gBAGIC,WAAMA,KAAAA,CAACA;;gBAEPA,OAAOA,CAACA,GAAGA,CAAEA,2BAA2BA,EAAGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,CAAGA,CAAEA;gBACjGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAAEA;gBAC5FA,OAAOA,CAACA,GAAGA,CAAEA,0BAA0BA,EAAGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,CAAGA,CAAEA;gBAChGA,IAAIA,CAACA,mBAAmBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAAEA;gBAC/FA,OAAOA,CAACA,GAAGA,CAAEA,6BAA6BA,EAAGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,CAAGA,CAAEA;YAEvGA,CAACA;YAEDD,8BAAAA,UAAmBA,CAACA;YAIpBE,CAACA;YAELF,cAACA;QAADA,CAACA,EAtB2BD,IAAIA,CAACA,MAAMA,CAACA,eAAeA,EAsBtDA;QAtBDA,uBAsBCA;IAGLA,CAACA,uCAAAD;8BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"EDTest.js","sourceRoot":"","sources":["../events/EDTest.ts"],"names":["tests","tests.events","tests.events.EDTest","tests.events.EDTest.constructor","tests.events.EDTest.onComplete"],"mappings":"AAAA,oDAAoD;;;;;;;AAEpD,IAAO,KAAK;AA6BX,CA7BD,UAAO,KAAK;KAAZA,UAAaA,MAAMA;QAElBC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;;YAGIC;gBAGIC,WAAMA,KAAAA,CAACA;;gBAEPA,OAAOA,CAACA,GAAGA,CAAEA,2BAA2BA,EAAGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,CAAGA,CAAEA;gBACjGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAAEA;gBAC5FA,OAAOA,CAACA,GAAGA,CAAEA,0BAA0BA,EAAGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,CAAGA,CAAEA;gBAChGA,IAAIA,CAACA,mBAAmBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,UAAUA,CAACA,CAAEA;gBAC/FA,OAAOA,CAACA,GAAGA,CAAEA,6BAA6BA,EAAGA,IAAIA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,CAAGA,CAAEA;YAEvGA,CAACA;YAEDD,8BAAAA,UAAmBA,CAACA;YAIpBE,CAACA;YAELF,cAACA;QAADA,CAACA,EAtB2BD,IAAIA,CAACA,MAAMA,CAACA,eAAeA,EAsBtDA;QAtBDA,uBAsBCA;IAGLA,CAACA,uCAAAD;8BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/IDUtilTest.js b/tests/js/IDUtilTest.js index 4cc1b9f7..9618311c 100644 --- a/tests/js/IDUtilTest.js +++ b/tests/js/IDUtilTest.js @@ -1,6 +1,6 @@ +/// var tests; (function (tests) { - /// (function (utils) { var IDUtilTest = (function () { function IDUtilTest() { diff --git a/tests/js/IDUtilTest.js.map b/tests/js/IDUtilTest.js.map index 45c055f6..96da0788 100644 --- a/tests/js/IDUtilTest.js.map +++ b/tests/js/IDUtilTest.js.map @@ -1 +1 @@ -{"version":3,"file":"IDUtilTest.js","sourceRoot":"","sources":["../away/utils/IDUtilTest.ts"],"names":["tests","tests.utils","tests.utils.IDUtilTest","tests.utils.IDUtilTest.constructor"],"mappings":"AAEA,IAAO,KAAK;AAcX,CAdD,UAAO,KAAK;IAFZA,uDAAuDA;KAEvDA,UAAaA,KAAKA;QAEdC;YAIIC;gBAEIC,OAAOA,CAACA,GAAGA,CAAEA,IAAIA,CAACA,OAAOA,CAACA,MAAMA,CAACA,SAASA,CAACA,CAACA,CAAEA,CAACA;YACnDA,CAACA;YAGLD;AAACA,QAADA,CAACA,IAAAD;QAVDA,8BAUCA;IAELA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"IDUtilTest.js","sourceRoot":"","sources":["../utils/IDUtilTest.ts"],"names":["tests","tests.utils","tests.utils.IDUtilTest","tests.utils.IDUtilTest.constructor"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AAcX,CAdD,UAAO,KAAK;KAAZA,UAAaA,KAAKA;QAEdC;YAIIC;gBAEIC,OAAOA,CAACA,GAAGA,CAAEA,IAAIA,CAACA,OAAOA,CAACA,MAAMA,CAACA,SAASA,CAACA,CAACA,CAAEA;YAClDA,CAACA;YAGLD,kBAACA;QAADA,CAACA,IAAAD;QAVDA,8BAUCA;IAELA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/IMGLoaderTest.js.map b/tests/js/IMGLoaderTest.js.map index eaf6ff15..25bb6484 100644 --- a/tests/js/IMGLoaderTest.js.map +++ b/tests/js/IMGLoaderTest.js.map @@ -1 +1 @@ -{"version":3,"file":"IMGLoaderTest.js","sourceRoot":"","sources":["../net/IMGLoaderTest.ts"],"names":["tests","tests.net","tests.net.URLLoaderTest","tests.net.URLLoaderTest.constructor","tests.net.URLLoaderTest.pngLoaderComplete","tests.net.URLLoaderTest.jpgLoaderComplete","tests.net.URLLoaderTest.noAnImageLoaderComplete","tests.net.URLLoaderTest.wrongURLLoaderComplete","tests.net.URLLoaderTest.logSuccessfullLoad","tests.net.URLLoaderTest.ioError","tests.net.URLLoaderTest.abortError"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"IMGLoaderTest.js","sourceRoot":"","sources":["../net/IMGLoaderTest.ts"],"names":["tests","tests.net","tests.net.URLLoaderTest","tests.net.URLLoaderTest.constructor","tests.net.URLLoaderTest.pngLoaderComplete","tests.net.URLLoaderTest.jpgLoaderComplete","tests.net.URLLoaderTest.noAnImageLoaderComplete","tests.net.URLLoaderTest.wrongURLLoaderComplete","tests.net.URLLoaderTest.logSuccessfullLoad","tests.net.URLLoaderTest.ioError","tests.net.URLLoaderTest.abortError"],"mappings":"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"} \ No newline at end of file diff --git a/tests/js/JSONTextureParser.js b/tests/js/JSONTextureParser.js new file mode 100644 index 00000000..6879b10d --- /dev/null +++ b/tests/js/JSONTextureParser.js @@ -0,0 +1,196 @@ +/// +var __extends = this.__extends || function (d, b) { + for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; + function __() { this.constructor = d; } + __.prototype = b.prototype; + d.prototype = new __(); +}; +var parsers; +(function (parsers) { + /** + * ImageParser provides a "parser" for natively supported image types (jpg, png). While it simply loads bytes into + * a loader object, it wraps it in a BitmapDataResource so resource management can happen consistently without + * exception cases. + */ + var JSONTextureParser = (function (_super) { + __extends(JSONTextureParser, _super); + //private var _loader : Loader; + /** + * Creates a new ImageParser object. + * @param uri The url or id of the data or file to be parsed. + * @param extra The holder for extra contextual data that the parser might need. + */ + function JSONTextureParser() { + _super.call(this, away.parsers.ParserDataFormat.PLAIN_TEXT); + //private var _byteData : ByteArray; + this.STATE_PARSE_DATA = 0; + this.STATE_LOAD_IMAGES = 1; + this.STATE_COMPLETE = 2; + this._state = -1; + this._dependencyCount = 0; + + this._loadedTextures = new Array(); + this._state = this.STATE_PARSE_DATA; + } + /** + * Indicates whether or not a given file extension is supported by the parser. + * @param extension The file extension of a potential file to be parsed. + * @return Whether or not the given file type is supported. + */ + JSONTextureParser.supportsType = function (extension) { + extension = extension.toLowerCase(); + return extension == "json"; + }; + + /** + * Tests whether a data block can be parsed by the parser. + * @param data The data block to potentially be parsed. + * @return Whether or not the given data is supported. + */ + JSONTextureParser.supportsData = function (data) { + try { + var obj = JSON.parse(data); + + if (obj) { + return true; + } + + return false; + } catch (e) { + return false; + } + + return false; + }; + + /** + * @inheritDoc + */ + JSONTextureParser.prototype._iResolveDependency = function (resourceDependency) { + var resource = resourceDependency.assets[0]; + + this._pFinalizeAsset(resource, resourceDependency._iLoader.url); + + this._loadedTextures.push(resource); + + //console.log( 'JSONTextureParser._iResolveDependency' , resourceDependency ); + //console.log( 'JSONTextureParser._iResolveDependency resource: ' , resource ); + this._dependencyCount--; + + if (this._dependencyCount == 0) { + this._state = this.STATE_COMPLETE; + } + }; + + /** + * @inheritDoc + */ + JSONTextureParser.prototype._iResolveDependencyFailure = function (resourceDependency) { + //console.log( '-----------------------------------------------------------'); + //console.log( 'JSONTextureParser._iResolveDependencyFailure', 'x' , resourceDependency ); + this._dependencyCount--; + + if (this._dependencyCount == 0) { + this._state = this.STATE_COMPLETE; + //console.log( 'JSONTextureParser._iResolveDependencyFailure.complete' ); + } + /* + + + if (_dependencyCount == 0) + _parseState = DAEParserState.PARSE_MATERIALS; + */ + }; + + JSONTextureParser.prototype.parseJson = function () { + //console.log( 'JSONTextureParser.parseJson' , typeof this.data ); + if (JSONTextureParser.supportsData(this.data)) { + try { + var json = JSON.parse(this.data); + var data = json.data; + + var rec; + var rq; + + for (var c = 0; c < data.length; c++) { + rec = data[c]; + + var uri = rec.image; + var id = rec.id; + + rq = new away.net.URLRequest(uri); + + //console.log( 'JSONTextureParser.parseJson' , id , uri ); + //console.log( 'JSONTextureParser.parseJson' , id , uri ); + this._pAddDependency('JSON_ID_' + id, rq, false, null, true); + } + + this._dependencyCount = data.length; + this._state = this.STATE_LOAD_IMAGES; + + this._pPauseAndRetrieveDependencies(); //pauseAndRetrieveDependencies + } catch (e) { + this._state = this.STATE_COMPLETE; + } + } + }; + + /** + * @inheritDoc + */ + JSONTextureParser.prototype._pProceedParsing = function () { + console.log('JSONTextureParser._pProceedParsing', this._state); + + switch (this._state) { + case this.STATE_PARSE_DATA: + this.parseJson(); + return away.parsers.ParserBase.MORE_TO_PARSE; + + break; + + case this.STATE_LOAD_IMAGES: + break; + + case this.STATE_COMPLETE: + //console.log( 'JSONTextureParser._pProceedParsing: WE ARE DONE' ); // YAY; + return away.parsers.ParserBase.PARSING_DONE; + + break; + } + + return away.parsers.ParserBase.MORE_TO_PARSE; + /* + var asset : away.textures.Texture2DBase; + + if ( this.data instanceof HTMLImageElement ) + { + + asset = new away.textures.HTMLImageElementTexture( this.data ); + + if ( away.utils.TextureUtils.isHTMLImageElementValid( this.data ) ) + { + + + this._pFinalizeAsset( asset , this._iFileName ); + + + } + else + { + + this.dispatchEvent( new away.events.AssetEvent( away.events.AssetEvent.TEXTURE_SIZE_ERROR , asset ) ); + + } + + return away.loaders.ParserBase.PARSING_DONE; + + } + + return away.loaders.ParserBase.PARSING_DONE; + */ + }; + return JSONTextureParser; + })(away.parsers.ParserBase); + parsers.JSONTextureParser = JSONTextureParser; +})(parsers || (parsers = {})); +//# sourceMappingURL=JSONTextureParser.js.map diff --git a/tests/js/JSONTextureParser.js.map b/tests/js/JSONTextureParser.js.map new file mode 100644 index 00000000..409be468 --- /dev/null +++ b/tests/js/JSONTextureParser.js.map @@ -0,0 +1 @@ +{"version":3,"file":"JSONTextureParser.js","sourceRoot":"","sources":["../parsers/JSONTextureParser.ts"],"names":["parsers","parsers.JSONTextureParser","parsers.JSONTextureParser.constructor","parsers.JSONTextureParser.supportsType","parsers.JSONTextureParser.supportsData","parsers.JSONTextureParser._iResolveDependency","parsers.JSONTextureParser._iResolveDependencyFailure","parsers.JSONTextureParser.parseJson","parsers.JSONTextureParser._pProceedParsing"],"mappings":"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"} \ No newline at end of file diff --git a/tests/js/ManagersTest.js.map b/tests/js/ManagersTest.js.map index db0f7f57..e9a80d6b 100644 --- a/tests/js/ManagersTest.js.map +++ b/tests/js/ManagersTest.js.map @@ -1 +1 @@ -{"version":3,"file":"ManagersTest.js","sourceRoot":"","sources":["../managers/ManagersTest.ts"],"names":["tests","tests.managers","tests.managers.ManagersTest","tests.managers.ManagersTest.constructor","tests.managers.ManagersTest.onContextCreated","tests.managers.ManagersTest.onContextReCreated","tests.managers.ManagersTest.onContextDisposed"],"mappings":"AAAA,iDAAiD;AAEjD,IAAO,KAAK;AA0DX,CA1DD,UAAO,KAAK;KAAZA,UAAaA,QAAQA;QAEpBC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;YAOIC;gBAGIC,IAAIA,CAACA,KAAKA,CAACA,YAAYA,GAAGA,KAAKA;;gBAE/BA,IAAIA,OAAOA,GAAkCA,IAAIA,CAACA,QAAQA,CAACA,cAAcA,CAACA,WAAWA,CAACA,CAACA;;gBAEvFA,IAAIA,CAACA,OAAOA,GAAGA,OAAOA,CAACA,YAAYA,CAAEA,CAACA,CAAEA;gBACxCA,IAAIA,CAACA,OAAOA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,iBAAiBA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA,CAAEA;gBAC1HA,IAAIA,CAACA,OAAOA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,mBAAmBA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,kBAAkBA,CAACA,CAAEA;gBAC7HA,IAAIA,CAACA,OAAOA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,kBAAkBA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,iBAAiBA,CAACA,CAAEA;;gBAE3HA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,CAACA,WAAWA,CAAEA,IAAIA,CAACA,OAAOA,CAAEA;gBACzEA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,CAACA,WAAWA,CAAEA,IAAIA,CAACA,OAAOA,CAAEA;;gBAEzEA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;gBAC5CA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;;gBAE5CA,IAAIA,CAACA,OAAOA,CAACA,OAAOA,CAACA,CAACA;;gBAEtBA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;gBAC5CA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;YAEhDA,CAACA;YAEDD,0CAAAA,UAAyBA,CAA4BA;gBAGjDE,IAAIA,CAACA,KAAKA,CAACA,GAAGA,CAAEA,kBAAkBA,EAAGA,CAACA,CAAEA;YAE5CA,CAACA;;YAEDF,4CAAAA,UAA2BA,CAA4BA;gBAGnDG,IAAIA,CAACA,KAAKA,CAACA,GAAGA,CAAEA,oBAAoBA,EAAGA,CAACA,CAAEA;YAE9CA,CAACA;;YAEDH,2CAAAA,UAA0BA,CAA4BA;gBAGlDI,IAAIA,CAACA,KAAKA,CAACA,GAAGA,CAAEA,mBAAmBA,EAAGA,CAACA,CAAEA;YAE7CA,CAACA;YAELJ,oBAACA;QAADA,CAACA,IAAAD;QArDDA,qCAqDCA;IACLA,CAACA,2CAAAD;kCAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"ManagersTest.js","sourceRoot":"","sources":["../managers/ManagersTest.ts"],"names":["tests","tests.managers","tests.managers.ManagersTest","tests.managers.ManagersTest.constructor","tests.managers.ManagersTest.onContextCreated","tests.managers.ManagersTest.onContextReCreated","tests.managers.ManagersTest.onContextDisposed"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AA0DX,CA1DD,UAAO,KAAK;KAAZA,UAAaA,QAAQA;QAEpBC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;YAOIC;gBAGIC,IAAIA,CAACA,KAAKA,CAACA,YAAYA,GAAGA,KAAKA;;gBAE/BA,IAAIA,OAAOA,GAAkCA,IAAIA,CAACA,QAAQA,CAACA,cAAcA,CAACA,WAAWA,CAACA,CAACA;;gBAEvFA,IAAIA,CAACA,OAAOA,GAAGA,OAAOA,CAACA,YAAYA,CAAEA,CAACA,CAAEA;gBACxCA,IAAIA,CAACA,OAAOA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,iBAAiBA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA,CAAEA;gBAC1HA,IAAIA,CAACA,OAAOA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,mBAAmBA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,kBAAkBA,CAACA,CAAEA;gBAC7HA,IAAIA,CAACA,OAAOA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,kBAAkBA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,iBAAiBA,CAACA,CAAEA;;gBAE3HA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,CAACA,WAAWA,CAAEA,IAAIA,CAACA,OAAOA,CAAEA;gBACzEA,IAAIA,CAACA,OAAOA,GAAGA,IAAIA,CAACA,QAAQA,CAACA,gBAAgBA,CAACA,WAAWA,CAAEA,IAAIA,CAACA,OAAOA,CAAEA;;gBAEzEA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;gBAC5CA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;;gBAE5CA,IAAIA,CAACA,OAAOA,CAACA,OAAOA,CAACA,CAACA;;gBAEtBA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;gBAC5CA,OAAOA,CAACA,GAAGA,CAAEA,cAAcA,EAAGA,IAAIA,CAACA,OAAOA,CAAEA;YAEhDA,CAACA;YAEDD,0CAAAA,UAAyBA,CAA4BA;gBAGjDE,IAAIA,CAACA,KAAKA,CAACA,GAAGA,CAAEA,kBAAkBA,EAAGA,CAACA,CAAEA;YAE5CA,CAACA;;YAEDF,4CAAAA,UAA2BA,CAA4BA;gBAGnDG,IAAIA,CAACA,KAAKA,CAACA,GAAGA,CAAEA,oBAAoBA,EAAGA,CAACA,CAAEA;YAE9CA,CAACA;;YAEDH,2CAAAA,UAA0BA,CAA4BA;gBAGlDI,IAAIA,CAACA,KAAKA,CAACA,GAAGA,CAAEA,mBAAmBA,EAAGA,CAACA,CAAEA;YAE7CA,CAACA;YAELJ,oBAACA;QAADA,CAACA,IAAAD;QArDDA,qCAqDCA;IACLA,CAACA,2CAAAD;kCAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/MatrixTest.js b/tests/js/MatrixTest.js index f32e6528..6cb30834 100644 --- a/tests/js/MatrixTest.js +++ b/tests/js/MatrixTest.js @@ -1,7 +1,6 @@ +/// var tests; (function (tests) { - /// - // (function (geom) { var MatrixTest = (function () { function MatrixTest() { diff --git a/tests/js/MatrixTest.js.map b/tests/js/MatrixTest.js.map index c0010c85..3d471dd8 100644 --- a/tests/js/MatrixTest.js.map +++ b/tests/js/MatrixTest.js.map @@ -1 +1 @@ -{"version":3,"file":"MatrixTest.js","sourceRoot":"","sources":["../away/geom/MatrixTest.ts"],"names":["tests","tests.geom","tests.geom.MatrixTest","tests.geom.MatrixTest.constructor"],"mappings":"AAGA,IAAO,KAAK;AAkBX,CAlBD,UAAO,KAAK;IAHZA,uDAAuDA;IACvDA,6CAA6CA;KAE7CA,UAAaA,IAAIA;QAEbC;YAMIC;gBAHAC,KAAQA,EAAEA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,MAAMA,CAAEA,EAAEA,EAAGA,EAAEA,EAAEA,EAAEA,EAAGA,EAAEA,EAAGA,EAAEA,EAAGA,EAAEA,CAACA,CAACA;gBAClFA,KAAQA,EAAEA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,MAAMA,CAAEA,CAACA,EAAGA,CAACA,EAAEA,CAACA,EAAGA,CAACA,EAAGA,CAACA,EAAGA,CAACA,CAACA,CAACA;gBAKxEA,IAAIA,CAACA,EAAEA,CAACA,MAAMA,CAAEA,IAAIA,CAACA,EAAEA,CAAEA,CAACA;gBAC1BA,OAAOA,CAACA,GAAGA,CAAEA,IAAIA,CAACA,EAAEA,CAAEA,CAACA;YAE3BA,CAACA;YAGLD;AAACA,QAADA,CAACA,IAAAD;QAfDA,6BAeCA;IACLA,CAACA,mCAAAD;0BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"MatrixTest.js","sourceRoot":"","sources":["../geom/MatrixTest.ts"],"names":["tests","tests.geom","tests.geom.MatrixTest","tests.geom.MatrixTest.constructor"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AAkBX,CAlBD,UAAO,KAAK;KAAZA,UAAaA,IAAIA;QAEbC;YAMIC;gBAHAC,KAAQA,EAAEA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,MAAMA,CAAEA,EAAEA,EAAGA,EAAEA,EAAEA,EAAEA,EAAGA,EAAEA,EAAGA,EAAEA,EAAGA,EAAEA,CAACA,CAACA;gBAClFA,KAAQA,EAAEA,GAAsBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,MAAMA,CAAEA,CAACA,EAAGA,CAACA,EAAEA,CAACA,EAAGA,CAACA,EAAGA,CAACA,EAAGA,CAACA,CAACA,CAACA;gBAKxEA,IAAIA,CAACA,EAAEA,CAACA,MAAMA,CAAEA,IAAIA,CAACA,EAAEA,CAAEA;gBACzBA,OAAOA,CAACA,GAAGA,CAAEA,IAAIA,CAACA,EAAEA,CAAEA;YAE1BA,CAACA;YAGLD,kBAACA;QAADA,CAACA,IAAAD;QAfDA,6BAeCA;IACLA,CAACA,mCAAAD;0BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/MipMapTest.js.map b/tests/js/MipMapTest.js.map index 43685b04..591f6cb9 100644 --- a/tests/js/MipMapTest.js.map +++ b/tests/js/MipMapTest.js.map @@ -1 +1 @@ -{"version":3,"file":"MipMapTest.js","sourceRoot":"","sources":["../utils/MipMapTest.ts"],"names":["tests","tests.utils","tests.utils.MipMapTest","tests.utils.MipMapTest.constructor","tests.utils.MipMapTest.mipImgLoaded","tests.utils.MipMapTest.onImageLoad","tests.utils.MipMapTest.onMouseDown","tests.utils.MipMapTest.generateMipMap"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"MipMapTest.js","sourceRoot":"","sources":["../utils/MipMapTest.ts"],"names":["tests","tests.utils","tests.utils.MipMapTest","tests.utils.MipMapTest.constructor","tests.utils.MipMapTest.mipImgLoaded","tests.utils.MipMapTest.onImageLoad","tests.utils.MipMapTest.onMouseDown","tests.utils.MipMapTest.generateMipMap"],"mappings":"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"} \ No newline at end of file diff --git a/tests/js/RequestAnimationFrameTest.js b/tests/js/RequestAnimationFrameTest.js index 2fc1ca15..c12228df 100644 --- a/tests/js/RequestAnimationFrameTest.js +++ b/tests/js/RequestAnimationFrameTest.js @@ -1,6 +1,6 @@ +/// var tests; (function (tests) { - /// (function (utils) { var RequestAnimationFrameTest = (function () { function RequestAnimationFrameTest() { diff --git a/tests/js/RequestAnimationFrameTest.js.map b/tests/js/RequestAnimationFrameTest.js.map index c2a1f985..4783a8cd 100644 --- a/tests/js/RequestAnimationFrameTest.js.map +++ b/tests/js/RequestAnimationFrameTest.js.map @@ -1 +1 @@ -{"version":3,"file":"RequestAnimationFrameTest.js","sourceRoot":"","sources":["../away/utils/RequestAnimationFrameTest.ts"],"names":["tests","tests.utils","tests.utils.RequestAnimationFrameTest","tests.utils.RequestAnimationFrameTest.constructor","tests.utils.RequestAnimationFrameTest.constructor.onmousedown","tests.utils.RequestAnimationFrameTest.onMouseDown","tests.utils.RequestAnimationFrameTest.tick"],"mappings":"AACA,IAAO,KAAK;AAgDX,CAhDD,UAAO,KAAK;IADZA,uDAAuDA;KACvDA,UAAaA,KAAKA;QAEdC;YAMIC;gBAAAC,iBAQCA;gBALGA,IAAIA,CAACA,0BAA0BA,GAAGA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,qBAAqBA,CAAEA,IAAIA,CAACA,IAAIA,EAAGA,IAAIA,CAAEA,CAACA;gBAC3FA,IAAIA,CAACA,0BAA0BA,CAACA,KAAKA,CAACA,CAACA,CAAAA;;gBAEvCA,QAAQA,CAACA,WAAWA,GAAGA,UAAEA,CAACA;2BAAMC,KAAIA,CAACA,WAAWA,CAAEA,CAACA,CAAEA;iBAAAD,CAACA;YAE1DA,CAACA;YAEDD,kDAAAA,UAAqBA,CAACA;gBAGlBG,OAAOA,CAACA,GAAGA,CAAEA,WAAWA,CAACA,CAACA;;gBAE1BA,IAAKA,IAAIA,CAACA,0BAA0BA,CAACA,MAAMA,CAC3CA;oBAEIA,IAAIA,CAACA,0BAA0BA,CAACA,IAAIA,CAACA,CAACA,CAACA;iBAE1CA,KAEDA;oBAEIA,IAAIA,CAACA,0BAA0BA,CAACA,KAAKA,CAACA,CAACA,CAACA;iBAE3CA;YAELA,CAACA;;YAEDH,2CAAAA,UAAcA,EAAWA;gBAGrBI,OAAOA,CAACA,GAAGA,CAAEA,MAAMA,CAAEA,CAACA;YAE1BA,CAACA;YAGLJ;AAACA,QAADA,CAACA,IAAAD;QA5CDA,4DA4CCA;IAELA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"RequestAnimationFrameTest.js","sourceRoot":"","sources":["../utils/RequestAnimationFrameTest.ts"],"names":["tests","tests.utils","tests.utils.RequestAnimationFrameTest","tests.utils.RequestAnimationFrameTest.constructor","tests.utils.RequestAnimationFrameTest.onMouseDown","tests.utils.RequestAnimationFrameTest.tick"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AAgDX,CAhDD,UAAO,KAAK;KAAZA,UAAaA,KAAKA;QAEdC;YAMIC;gBAAAC,iBAQCA;gBALGA,IAAIA,CAACA,0BAA0BA,GAAGA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,qBAAqBA,CAAEA,IAAIA,CAACA,IAAIA,EAAGA,IAAIA,CAAEA;gBAC1FA,IAAIA,CAACA,0BAA0BA,CAACA,KAAKA,CAACA,CAACA;;gBAEvCA,QAAQA,CAACA,WAAWA,GAAGA,UAAEA,CAACA;2BAAMA,KAAIA,CAACA,WAAWA,CAAEA,CAACA,CAAEA;gBAArBA,CAAqBA;YAEzDA,CAACA;YAEDD,kDAAAA,UAAqBA,CAACA;gBAGlBE,OAAOA,CAACA,GAAGA,CAAEA,WAAWA,CAACA;;gBAEzBA,IAAKA,IAAIA,CAACA,0BAA0BA,CAACA,MAAMA,CAC3CA;oBAEIA,IAAIA,CAACA,0BAA0BA,CAACA,IAAIA,CAACA,CAACA;iBAEzCA,KAEDA;oBAEIA,IAAIA,CAACA,0BAA0BA,CAACA,KAAKA,CAACA,CAACA;iBAE1CA;YAELA,CAACA;;YAEDF,2CAAAA,UAAcA,EAAWA;gBAGrBG,OAAOA,CAACA,GAAGA,CAAEA,MAAMA,CAAEA;YAEzBA,CAACA;YAGLH,iCAACA;QAADA,CAACA,IAAAD;QA5CDA,4DA4CCA;IAELA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/TimerTest.js.map b/tests/js/TimerTest.js.map index 08129bf4..b9f6d7a9 100644 --- a/tests/js/TimerTest.js.map +++ b/tests/js/TimerTest.js.map @@ -1 +1 @@ -{"version":3,"file":"TimerTest.js","sourceRoot":"","sources":["../utils/TimerTest.ts"],"names":["tests","tests.utils","tests.utils.TimerTest","tests.utils.TimerTest.constructor","tests.utils.TimerTest.repeatTenTimesEvent","tests.utils.TimerTest.repeatTenTimesComplete","tests.utils.TimerTest.onSecTimerEvent"],"mappings":"AAAA,iDAAiD;AAEjD,IAAO,KAAK;AAoDX,CApDD,UAAO,KAAK;KAAZA,UAAaA,KAAKA;QAGjBC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;YAMIC;gBAGIC,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAAEA,IAAIA,CAAEA;gBAClDA,IAAIA,CAACA,cAAcA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,KAAKA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,eAAeA,CAACA,CAAEA;gBACjHA,IAAIA,CAACA,cAAcA,CAACA,KAAKA,CAACA,CAACA;;gBAE3BA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAAEA,GAAGA,EAAGA,EAAEA,CAAEA;gBACtDA,IAAIA,CAACA,cAAcA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,KAAKA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA,CAAEA;gBACrHA,IAAIA,CAACA,cAAcA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,cAAcA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,sBAAsBA,CAACA,CAAEA;gBAChIA,IAAIA,CAACA,cAAcA,CAACA,KAAKA,CAACA,CAACA;YAE/BA,CAACA;YAEDD,0CAAAA,UAA6BA,CAA0BA;gBAInDE,IAAIA,CAACA,GAAyCA,CAACA,CAACA,MAAMA;gBACtDA,OAAOA,CAACA,GAAGA,CAACA,qBAAqBA,EAAGA,CAACA,CAACA,YAAYA,CAAEA;YAExDA,CAACA;;YAEDF,6CAAAA,UAAgCA,CAA0BA;gBAGtDG,IAAIA,CAACA,GAAyCA,CAACA,CAACA,MAAMA;gBACtDA,OAAOA,CAACA,GAAGA,CAACA,wBAAwBA,EAAGA,CAACA,CAACA,YAAYA,CAAEA;YAE3DA,CAACA;;YAEDH,sCAAAA,UAAyBA,CAA0BA;gBAG/CI,OAAOA,CAACA,GAAGA,CAACA,uBAAuBA,CAACA;gBACpCA,OAAOA,CAACA,GAAGA,CAAEA,eAAeA,EAAGA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,CAACA,CAACA,CAAEA;YAE1DA,CAACA;YAELJ,iBAACA;QAADA,CAACA,IAAAD;QA7CDA,4BA6CCA;IAELA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"TimerTest.js","sourceRoot":"","sources":["../utils/TimerTest.ts"],"names":["tests","tests.utils","tests.utils.TimerTest","tests.utils.TimerTest.constructor","tests.utils.TimerTest.repeatTenTimesEvent","tests.utils.TimerTest.repeatTenTimesComplete","tests.utils.TimerTest.onSecTimerEvent"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AAoDX,CApDD,UAAO,KAAK;KAAZA,UAAaA,KAAKA;QAGjBC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;YAMIC;gBAGIC,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAAEA,IAAIA,CAAEA;gBAClDA,IAAIA,CAACA,cAAcA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,KAAKA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,eAAeA,CAACA,CAAEA;gBACjHA,IAAIA,CAACA,cAAcA,CAACA,KAAKA,CAACA,CAACA;;gBAE3BA,IAAIA,CAACA,cAAcA,GAAGA,IAAIA,IAAIA,CAACA,KAAKA,CAACA,KAAKA,CAAEA,GAAGA,EAAGA,EAAEA,CAAEA;gBACtDA,IAAIA,CAACA,cAAcA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,KAAKA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA,CAAEA;gBACrHA,IAAIA,CAACA,cAAcA,CAACA,gBAAgBA,CAACA,IAAIA,CAACA,MAAMA,CAACA,UAAUA,CAACA,cAAcA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,sBAAsBA,CAACA,CAAEA;gBAChIA,IAAIA,CAACA,cAAcA,CAACA,KAAKA,CAACA,CAACA;YAE/BA,CAACA;YAEDD,0CAAAA,UAA6BA,CAA0BA;gBAInDE,IAAIA,CAACA,GAAyCA,CAACA,CAACA,MAAMA;gBACtDA,OAAOA,CAACA,GAAGA,CAACA,qBAAqBA,EAAGA,CAACA,CAACA,YAAYA,CAAEA;YAExDA,CAACA;;YAEDF,6CAAAA,UAAgCA,CAA0BA;gBAGtDG,IAAIA,CAACA,GAAyCA,CAACA,CAACA,MAAMA;gBACtDA,OAAOA,CAACA,GAAGA,CAACA,wBAAwBA,EAAGA,CAACA,CAACA,YAAYA,CAAEA;YAE3DA,CAACA;;YAEDH,sCAAAA,UAAyBA,CAA0BA;gBAG/CI,OAAOA,CAACA,GAAGA,CAACA,uBAAuBA,CAACA;gBACpCA,OAAOA,CAACA,GAAGA,CAAEA,eAAeA,EAAGA,IAAIA,CAACA,KAAKA,CAACA,QAAQA,CAACA,CAACA,CAAEA;YAE1DA,CAACA;YAELJ,iBAACA;QAADA,CAACA,IAAAD;QA7CDA,4BA6CCA;IAELA,CAACA,qCAAAD;4BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/URLLoaderTests.js.map b/tests/js/URLLoaderTests.js.map index fb35166f..0f02a2da 100644 --- a/tests/js/URLLoaderTests.js.map +++ b/tests/js/URLLoaderTests.js.map @@ -1 +1 @@ -{"version":3,"file":"URLLoaderTests.js","sourceRoot":"","sources":["../net/URLLoaderTests.ts"],"names":["tests","tests.net","tests.net.LoaderTest","tests.net.LoaderTest.constructor","tests.net.LoaderTest.arrayBufferLoaded","tests.net.LoaderTest.blobFileLoaded","tests.net.LoaderTest.createObjectURL","tests.net.LoaderTest.binFileLoaded","tests.net.LoaderTest.getURLVarsComplete","tests.net.LoaderTest.httpStatusChange","tests.net.LoaderTest.ioError","tests.net.LoaderTest.errorComplete","tests.net.LoaderTest.postURLTestComplete","tests.net.LoaderTest.getCsvComplete","tests.net.LoaderTest.getCsvOpen"],"mappings":"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"} \ No newline at end of file +{"version":3,"file":"URLLoaderTests.js","sourceRoot":"","sources":["../net/URLLoaderTests.ts"],"names":["tests","tests.net","tests.net.LoaderTest","tests.net.LoaderTest.constructor","tests.net.LoaderTest.arrayBufferLoaded","tests.net.LoaderTest.blobFileLoaded","tests.net.LoaderTest.createObjectURL","tests.net.LoaderTest.binFileLoaded","tests.net.LoaderTest.getURLVarsComplete","tests.net.LoaderTest.httpStatusChange","tests.net.LoaderTest.ioError","tests.net.LoaderTest.errorComplete","tests.net.LoaderTest.postURLTestComplete","tests.net.LoaderTest.getCsvComplete","tests.net.LoaderTest.getCsvOpen"],"mappings":"AAAA,oDAAoD;AAEpD,IAAO,KAAK;AA+OX,CA/OD,UAAO,KAAK;KAAZA,UAAaA,GAAGA;QAEfC,eAAqBA,IAAIA,CAACA,KAAKA,CAACA,QAAQA;;QAErCA;YAWIC;gBAGIC,OAAOA,CAACA,GAAGA,CAAEA,OAAOA,CAACA;;gBAErBA,2JAA2JA;gBAC3JA,mCAAmCA;gBACnCA,2JAA2JA;gBAE3JA,IAAIA,CAACA,oBAAoBA,GAAiBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAACA,CAACA;gBAClEA,IAAIA,CAACA,oBAAoBA,CAACA,UAAUA,GAAMA,IAAIA,CAACA,GAAGA,CAACA,mBAAmBA,CAACA,SAASA;;gBAEhFA,IAAIA,MAAMA,GAAgBA,oBAAoBA,GAAGA,IAAIA,CAACA,KAAKA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,CAACA,GAAGA,GAAGA,CAAEA;gBAClFA,IAAIA,OAAOA,GAAeA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,YAAYA,CAAEA,MAAMA,CAAEA;;gBAE7DA,IAAIA,GAAGA,GAAmBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,qBAAqBA,CAAEA;gBACtEA,GAAGA,CAACA,MAAMA,GAAYA,IAAIA,CAACA,GAAGA,CAACA,gBAAgBA,CAACA,IAAIA;gBACpDA,GAAGA,CAACA,IAAIA,GAAcA,OAAOA;;gBAEjCA,IAAIA,CAACA,oBAAoBA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,mBAAmBA,CAACA,CAAEA;gBAC1HA,IAAIA,CAACA,oBAAoBA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,QAAQA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAAEA;gBACpHA,IAAIA,CAACA,oBAAoBA,CAACA,IAAIA,CAAEA,GAAGA,CAAEA;;gBAErCA,2JAA2JA;gBAC3JA,eAAeA;gBACfA,2JAA2JA;gBAE3JA,IAAIA,MAAMA,GAAGA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,qBAAqBA,CAAEA;;gBAE7DA,IAAIA,CAACA,eAAeA,GAAsBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAACA,CAACA;gBAClEA,IAAIA,CAACA,eAAeA,CAACA,UAAUA,GAAWA,IAAIA,CAACA,GAAGA,CAACA,mBAAmBA,CAACA,IAAIA;gBAC3EA,IAAIA,CAACA,eAAeA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,cAAcA,CAAEA,CAAEA;gBACjHA,IAAIA,CAACA,eAAeA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,IAAIA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,UAAUA,CAAEA,CAAEA;gBACxGA,IAAIA,CAACA,eAAeA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,QAAQA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAAEA;gBAC/GA,IAAIA,CAACA,eAAeA,CAACA,IAAIA,CAAEA,MAAMA,CAAEA;;gBAEnCA,2JAA2JA;gBAC3JA,0CAA0CA;gBAC1CA,2JAA2JA;gBAE3JA,IAAIA,QAAQA,GAAGA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,wBAAwBA,CAAEA;;gBAElEA,IAAIA,CAACA,kBAAkBA,GAAsBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAACA,CAACA;gBACrEA,IAAIA,CAACA,kBAAkBA,CAACA,UAAUA,GAAWA,IAAIA,CAACA,GAAGA,CAACA,mBAAmBA,CAACA,IAAIA;gBAC9EA,IAAIA,CAACA,kBAAkBA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,aAAaA,CAAEA,CAAEA;gBACnHA,IAAIA,CAACA,kBAAkBA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,QAAQA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAAEA;gBAClHA,IAAIA,CAACA,kBAAkBA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,eAAeA,CAACA,WAAWA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,gBAAgBA,CAACA,CAAEA;gBACjIA,IAAIA,CAACA,kBAAkBA,CAACA,IAAIA,CAAEA,QAAQA,CAAEA;;gBAExCA,2JAA2JA;gBAC3JA,mCAAmCA;gBACnCA,2JAA2JA;gBAE3JA,IAAIA,MAAMA,GAAGA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,uBAAuBA,CAAEA;;gBAE/DA,IAAIA,CAACA,mBAAmBA,GAAsBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAACA,CAACA;gBACtEA,IAAIA,CAACA,mBAAmBA,CAACA,UAAUA,GAAWA,IAAIA,CAACA,GAAGA,CAACA,mBAAmBA,CAACA,SAASA;gBACpFA,IAAIA,CAACA,mBAAmBA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,QAAQA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAAEA;gBACnHA,IAAIA,CAACA,mBAAmBA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,kBAAkBA,CAAEA,CAAEA;gBACzHA,IAAIA,CAACA,mBAAmBA,CAACA,IAAIA,CAAEA,MAAMA,CAAEA;;gBAEvCA,2JAA2JA;gBAC3JA,mBAAmBA;gBACnBA,2JAA2JA;gBAE3JA,IAAIA,MAAMA,GAAGA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,oBAAoBA,CAAEA;;gBAE5DA,IAAIA,CAACA,eAAeA,GAAsBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAAGA,CAACA;gBACpEA,IAAIA,CAACA,eAAeA,CAACA,UAAUA,GAAWA,IAAIA,CAACA,GAAGA,CAACA,mBAAmBA,CAACA,MAAMA;gBAC7EA,IAAIA,CAACA,eAAeA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,YAAYA,CAACA,QAAQA,EAAEA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,OAAOA,CAACA,CAAEA;gBAC/GA,IAAIA,CAACA,eAAeA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,aAAaA,CAAEA,CAAEA;gBAChHA,IAAIA,CAACA,eAAeA,CAACA,IAAIA,CAAEA,MAAMA,CAAEA;;gBAEnCA,2JAA2JA;gBAC3JA,iBAAiBA;gBACjBA,2JAA2JA;gBAE3JA,IAAIA,OAAOA,GAAGA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,cAAcA,CAAEA;;gBAEvDA,IAAIA,CAACA,aAAaA,GAAsBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAAGA,CAACA;gBAClEA,IAAIA,CAACA,aAAaA,CAACA,UAAUA,GAAWA,IAAIA,CAACA,GAAGA,CAACA,mBAAmBA,CAACA,IAAIA;gBACzEA,IAAIA,CAACA,aAAaA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,cAAcA,CAAEA,CAAEA;gBAC/GA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAAEA,OAAOA,CAAEA;;gBAElCA,2JAA2JA;gBAC3JA,oBAAoBA;gBACpBA,2JAA2JA;gBAE3JA,IAAIA,OAAOA,GAAGA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,UAAUA,CAAEA,cAAcA,CAAEA;;gBAEvDA,IAAIA,CAACA,aAAaA,GAAsBA,IAAIA,IAAIA,CAACA,GAAGA,CAACA,SAASA,CAAGA,CAACA;gBAClEA,IAAIA,CAACA,aAAaA,CAACA,UAAUA,GAAWA,IAAIA,CAACA,GAAGA,CAACA,mBAAmBA,CAACA,YAAYA;gBACjFA,IAAIA,CAACA,aAAaA,CAACA,gBAAgBA,CAAEA,IAAIA,CAACA,MAAMA,CAACA,KAAKA,CAACA,QAAQA,EAAGA,QAAQA,CAACA,MAAMA,CAACA,IAAIA,EAAEA,IAAIA,CAACA,iBAAiBA,CAAEA,CAAEA;gBAClHA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAAEA,OAAOA,CAAEA;YAEtCA,CAACA;YAEDD,yCAAAA,UAA2BA,KAAyBA;gBAGhDE,IAAIA,WAAWA,GAAGA,IAAIA,CAACA,aAAaA,CAACA,IAAIA;gBACzCA,IAAIA,SAASA,GAAGA,IAAIA,UAAUA,CAACA,WAAWA,CAACA;;gBAE3CA,OAAOA,CAACA,GAAGA,CAAEA,8BAA8BA,EAAGA,SAASA,CAACA,CAACA,CAACA,CAACA;;gBAE3DA,KAAKA,IAAIA,CAACA,GAAGA,CAACA,EAAEA,CAACA,GAAGA,SAASA,CAACA,UAAUA,EAAEA,CAACA,EAAEA,CAAEA;oBAC3CA,8BAA8BA;iBACjCA;YAELA,CAACA;;YAEDF,sCAAAA,UAAwBA,KAAyBA;gBAG7CG,IAAIA,IAAIA,GAAUA,IAAIA,IAAIA,CAACA,CAACA,IAAIA,CAACA,aAAaA,CAACA,IAAIA,CAACA,EAAEA,EAACA,IAAIA,EAAEA,WAAWA,EAACA,CAACA;gBAC1EA,IAAIA,GAAGA,GAAWA,QAAQA,CAACA,aAAaA,CAACA,KAAKA,CAACA;gBAC3CA,GAAGA,CAACA,GAAGA,GAAOA,IAAIA,CAACA,eAAeA,CAAEA,IAAIA,CAAEA,EAACA,yCAAyCA;gBACpFA,GAAGA,CAACA,MAAMA,GAAIA,UAASA,CAACA;oBAEpBA,MAAMA,CAACA,KAAKA,CAACA,CAACA,iBAAiBA,CAACA,CAACA,GAAGA,CAACA,GAAGA,CAACA,EAAEA,2BAA2BA;gBAE1EA,CAACA;;gBAELA,OAAOA,CAACA,GAAGA,CAAEA,2BAA2BA,EAAGA,IAAIA,CAAEA;;gBAEjDA,QAAQA,CAACA,IAAIA,CAACA,WAAWA,CAAEA,GAAGA,CAAEA;YAEpCA,CAACA;;YAEDH,uCAAAA,UAAyBA,QAAQA;gBAG7BI,mFAAmFA;gBACnFA,iCAAiCA;gBACjCA,iFAAiFA;gBACjFA,8DAA8DA;gBAE9DA,IAAIA,MAAMA,CAACA,KAAKA,CAACA,CAAEA;oBAEfA,IAAKA,MAAMA,CAACA,KAAKA,CAACA,CAACA,iBAAiBA,CAACA,CAAGA;wBAEpCA,OAAOA,MAAMA,CAACA,KAAKA,CAACA,CAACA,iBAAiBA,CAACA,CAAEA,QAAQA,CAAEA;qBAEtDA;iBAEJA,KAAMA;oBAEHA,IAAKA,MAAMA,CAACA,WAAWA,CAACA,CAAEA;wBAEtBA,OAAOA,MAAMA,CAACA,WAAWA,CAACA,CAACA,iBAAiBA,CAACA,CAAEA,QAAQA,CAAEA;qBAE5DA;iBAEJA;;gBAEDA,OAAOA,IAAIA;YAEfA,CAACA;;YAEDJ,qCAAAA,UAAuBA,KAAyBA;gBAG5CK,IAAIA,MAAMA,GAA6CA,KAAKA,CAACA,MAAMA;gBACnEA,OAAOA,CAACA,GAAGA,CAAEA,0BAA0BA,EAAGA,MAAMA,CAACA,IAAIA,CAACA,MAAMA,CAAEA;YAElEA,CAACA;;YAEDL,0CAAAA,UAA4BA,KAAyBA;gBAGjDM,IAAIA,MAAMA,GAA6CA,KAAKA,CAACA,MAAMA;gBACnEA,OAAOA,CAACA,GAAGA,CAAEA,+BAA+BA,EAAGA,MAAMA,CAACA,IAAIA,CAAEA;YAGhEA,CAACA;;YAEDN,wCAAAA,UAA0BA,KAAmCA;gBAGzDO,OAAOA,CAACA,GAAGA,CAAEA,6BAA6BA,EAAGA,KAAKA,CAACA,MAAMA,CAAEA;YAE/DA,CAACA;;YAEDP,+BAAAA,UAAiBA,KAAKA;gBAGlBQ,IAAIA,MAAMA,GAA6CA,KAAKA,CAACA,MAAMA;gBACnEA,OAAOA,CAACA,GAAGA,CAAEA,oBAAoBA,EAAGA,MAAMA,CAACA,GAAGA,CAAEA;YAEpDA,CAACA;;YAEDR,qCAAAA,UAAuBA,KAAKA;gBAGxBS,IAAIA,MAAMA,GAA6CA,KAAKA,CAACA,MAAMA;gBACnEA,OAAOA,CAACA,GAAGA,CAAEA,0BAA0BA,CAAEA,EAACA,kBAAkBA;YAEhEA,CAACA;;YAEDT,2CAAAA,UAA6BA,KAAKA;gBAG9BU,IAAIA,MAAMA,GAA6CA,KAAKA,CAACA,MAAMA;gBACnEA,OAAOA,CAACA,GAAGA,CAAEA,gCAAgCA,EAAGA,MAAMA,CAACA,IAAIA,CAAEA;YAEjEA,CAACA;;YAEDV,sCAAAA,UAAwBA,KAAKA;gBAGzBW,IAAIA,MAAMA,GAA6CA,KAAKA,CAACA,MAAMA;gBACnEA,OAAOA,CAACA,GAAGA,CAAEA,2BAA2BA,CAAEA,EAACA,kBAAkBA;YAEjEA,CAACA;;YAEDX,kCAAAA,UAAoBA,KAAKA;gBAGrBY,IAAIA,MAAMA,GAA6CA,KAAKA,CAACA,MAAMA;gBACnEA,OAAOA,CAACA,GAAGA,CAAEA,uBAAuBA,CAAEA;YAE1CA,CAACA;YAELZ,kBAACA;QAADA,CAACA,IAAAD;QA1ODA,4BA0OCA;IACLA,CAACA,iCAAAD;wBAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/js/VextMat3DTests.js b/tests/js/VextMat3DTests.js index f85115e2..f748f425 100644 --- a/tests/js/VextMat3DTests.js +++ b/tests/js/VextMat3DTests.js @@ -1,32 +1,18 @@ +/// var tests; (function (tests) { - /// - // (function (geom) { var VextMat3DTests = (function () { function VextMat3DTests() { var m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var v = new away.geom.Vector3D(); - console.log('------------------------------------ copyColumnTo'); + console.log('------------------------------------ copyColumnTo'); // DONE OK m.copyColumnTo(0, v); console.log('copyColumnTo 0 ', v); @@ -37,7 +23,7 @@ var tests; m.copyColumnTo(3, v); console.log('copyColumnTo 3 ', v); - console.log('------------------------------------ copyRowTo'); + console.log('------------------------------------ copyRowTo'); // DONE OK var r = new away.geom.Vector3D(); @@ -50,7 +36,7 @@ var tests; m.copyRowTo(3, r); console.log('copyRowTo 3 ', r); - console.log('------------------------------------ copyRowFrom'); + console.log('------------------------------------ copyRowFrom'); // DONE OK m = new away.geom.Matrix3D([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]); @@ -63,7 +49,7 @@ var tests; m.copyRowFrom(3, new away.geom.Vector3D(4, 3, 2, 1)); console.log('copyRowFrom 3 ', m.rawData); - console.log('------------------------------------ copyColumnFrom'); + console.log('------------------------------------ copyColumnFrom'); // DONE OK m = new away.geom.Matrix3D([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]); @@ -76,289 +62,133 @@ var tests; m.copyColumnFrom(3, new away.geom.Vector3D(4, 3, 2, 1)); console.log('copyColumnFrom 3 ', m.rawData); - console.log('------------------------------------ Append'); + console.log('------------------------------------ Append'); // DONE OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var s = new away.geom.Matrix3D([ - 16, - 15, - 14, - 13, - 12, - 11, - 10, - 9, - 8, - 7, - 6, - 5, - 4, - 3, - 2, - 1 - ]); + 16, 15, 14, 13, + 12, 11, 10, 9, + 8, 7, 6, 5, + 4, 3, 2, 1]); m.append(s); console.log('Append Result', m.rawData); console.log('Appendee', s.rawData); - console.log('------------------------------------ Prepend'); + console.log('------------------------------------ Prepend'); // DONE OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); s = new away.geom.Matrix3D([ - 16, - 15, - 14, - 13, - 12, - 11, - 10, - 9, - 8, - 7, - 6, - 5, - 4, - 3, - 2, - 1 - ]); + 16, 15, 14, 13, + 12, 11, 10, 9, + 8, 7, 6, 5, + 4, 3, 2, 1]); m.prepend(s); console.log('Prepend Result', m.rawData); console.log('Prependee', s.rawData); - console.log('------------------------------------ Append Translation'); + console.log('------------------------------------ Append Translation'); // DONE OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); m.appendTranslation(5, 6, 7); console.log(' Append Translation', m.rawData); - console.log('------------------------------------ appendRotation'); + console.log('------------------------------------ appendRotation'); // DONE OK - Pivot gives different result ( commented out for now ) m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var pivot = new away.geom.Vector3D(7, 8, 9); var axis = new away.geom.Vector3D(0, 0, 1); - m.appendRotation(45, axis); + m.appendRotation(45, axis); //, pivot ); console.log('appendRotation', m.rawData); - console.log('------------------------------------ appendScale'); + console.log('------------------------------------ appendScale'); // DONE OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); m.appendScale(6, 7, 8); console.log('appendScale', m.rawData); - console.log('------------------------------------ prepentScale'); + console.log('------------------------------------ prepentScale'); // DONE OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); m.prependScale(6, 7, 8); console.log('prepentScale', m.rawData); - console.log('------------------------------------ clone'); + console.log('------------------------------------ clone'); // DONE OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); console.log('clone', m.clone().rawData); - console.log('------------------------------------ copyFrom'); + console.log('------------------------------------ copyFrom'); // DONE OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var cl = new away.geom.Matrix3D([0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]); cl.copyFrom(m); console.log('copyFrom', cl.rawData); - console.log('------------------------------------ copyRawDataFrom'); + console.log('------------------------------------ copyRawDataFrom'); // DONE ok - Offet / Traspose not implemented m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); m.copyRawDataFrom([16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 2, 1]); console.log('copyRawDataFrom', m.rawData); - console.log('------------------------------------ copyRawDataTo'); + console.log('------------------------------------ copyRawDataTo'); // done OK m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var result = new Array(9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9); @@ -368,184 +198,80 @@ var tests; console.log('rawData', m.rawData); console.log('copyRawDataTo', result); - console.log('------------------------------------ transpose'); + console.log('------------------------------------ transpose'); // DONE ok - Offet / Traspose not implemented m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); m.transpose(); console.log('transpose', m.rawData); - console.log('------------------------------------ copyToMatrix3D'); + console.log('------------------------------------ copyToMatrix3D'); // done ok m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); s = new away.geom.Matrix3D([ - 16, - 15, - 14, - 13, - 12, - 11, - 10, - 9, - 8, - 7, - 6, - 5, - 4, - 3, - 2, - 1 - ]); + 16, 15, 14, 13, + 12, 11, 10, 9, + 8, 7, 6, 5, + 4, 3, 2, 1]); m.copyToMatrix3D(s); console.log('copyToMatrix3D', m.rawData); - console.log('------------------------------------ decompose'); + console.log('------------------------------------ decompose'); /// NOT WORKING m = new away.geom.Matrix3D([ - 1, - 6, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 1 - ]); + 1, 6, 0, 0, + 0, 1, 0, 0, + 0, 0, 1, 0, + 0, 0, 0, 1]); var resultDecompose = m.decompose(); console.log('copyToMatrix3D', resultDecompose[0]); console.log('copyToMatrix3D', resultDecompose[1]); console.log('copyToMatrix3D', resultDecompose[2]); - console.log('------------------------------------ determinant'); + console.log('------------------------------------ determinant'); // WORKING ok - good m = new away.geom.Matrix3D([ - 1, - 2, - 0, - 6, - 2, - 1, - 0, - 0, - 0, - 0, - 1, - 3, - 6, - 0, - 3, - 1 - ]); + 1, 2, 0, 6, + 2, 1, 0, 0, + 0, 0, 1, 3, + 6, 0, 3, 1]); console.log('determinant:', m.determinant); m = new away.geom.Matrix3D([ - 1, - 2, - 5, - 6, - 2, - 1, - 0, - 8, - 5, - 0, - 1, - 3, - 6, - 8, - 3, - 1 - ]); + 1, 2, 5, 6, + 2, 1, 0, 8, + 5, 0, 1, 3, + 6, 8, 3, 1]); console.log('determinant:', m.determinant); m = new away.geom.Matrix3D([ - 1, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 1, - 0, - 0, - 0, - 0, - 1 - ]); + 1, 0, 0, 0, + 0, 1, 0, 0, + 0, 0, 1, 0, + 0, 0, 0, 1]); console.log('determinant:', m.determinant); - console.log('------------------------------------ invert'); + console.log('------------------------------------ invert'); // WORKING ok - good m = new away.geom.Matrix3D([ - 1, - 2, - 5, - 6, - 2, - 1, - 0, - 8, - 5, - 0, - 1, - 3, - 6, - 8, - 3, - 1 - ]); + 1, 2, 5, 6, + 2, 1, 0, 8, + 5, 0, 1, 3, + 6, 8, 3, 1]); var b; @@ -553,98 +279,46 @@ var tests; console.log('invert:', b, m.rawData); m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); b = m.invert(); console.log('invert:', b, m.rawData); - console.log('------------------------------------ Prepend Rotation'); + console.log('------------------------------------ Prepend Rotation'); // OK Good m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); axis = new away.geom.Vector3D(1, 0, 0); m.prependRotation(45, axis); console.log('prependRotation:', m.rawData); - console.log('------------------------------------ prependTranslation'); + console.log('------------------------------------ prependTranslation'); // OK Good m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); m.prependTranslation(5, 10, 15); console.log('prependTranslation:', m.rawData); - console.log('------------------------------------ recompose'); + console.log('------------------------------------ recompose'); // OK Good m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var rVects = new Array(); rVects.push(new away.geom.Vector3D(5, 1, 3)); @@ -654,23 +328,10 @@ var tests; m.recompose(rVects); m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); rVects = new Array(); rVects.push(new away.geom.Vector3D(1, 2, 9)); @@ -690,124 +351,59 @@ var tests; console.log('fail - recompose:', m.rawData, b); - console.log('------------------------------------ transformVector '); + console.log('------------------------------------ transformVector '); // IT WORKS !!! m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var tVResult = m.transformVector(new away.geom.Vector3D(1, 2, 3)); console.log(tVResult); - console.log('------------------------------------ transformVector '); + console.log('------------------------------------ transformVector '); // IT WORKS !!! m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var vout = new Array(0, 1, 2, 3, 4, 5); var vin = new Array(4, 5, 6); m.transformVectors(vin, vout); console.log('transformVector', vout, vin); - console.log('------------------------------------ transpose'); + console.log('------------------------------------ transpose'); // IT WORKS !!! m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); m.transpose(); console.log('transpose', m.rawData); - console.log('------------------------------------ getAxisRotation'); + console.log('------------------------------------ getAxisRotation'); // internal class m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); //m.getAxisRotation(4 , 5 , 6 , 90 ); //console.log( 'getAxisRotation' , m.rawData ); - console.log('------------------------------------ position'); + console.log('------------------------------------ position'); // internal class m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 11, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 11, 12, + 13, 14, 15, 16]); var posVect = new away.geom.Vector3D(5, 10, 15); @@ -822,42 +418,16 @@ var tests; var v2 = new away.geom.Vector3D(7, 8, 0); var t = new away.geom.Matrix3D([ - 0, - 10, - 10, - 1, - 10, - 5, - 10, - 10, - 10, - 10, - 5, - 10, - 1, - 10, - 10, - 0 - ]); + 0, 10, 10, 1, + 10, 5, 10, 10, + 10, 10, 5, 10, + 1, 10, 10, 0]); var d = new away.geom.Matrix3D([ - 1, - 50, - 1, - 8, - 2, - 5, - 12, - 9, - 30, - 16, - 35, - 10, - 4, - 18, - 40, - 11 - ]); + 1, 50, 1, 8, + 2, 5, 12, 9, + 30, 16, 35, 10, + 4, 18, 40, 11]); t.append(d); console.log(t.rawData); @@ -869,23 +439,10 @@ var tests; var v2 = new away.geom.Vector3D(7, 8, 0); var t = new away.geom.Matrix3D([ - 0, - 10, - 10, - 1, - 10, - 5, - 10, - 10, - 10, - 10, - 5, - 10, - 1, - 10, - 10, - 0 - ]); + 0, 10, 10, 1, + 10, 5, 10, 10, + 10, 10, 5, 10, + 1, 10, 10, 0]); var d = new away.geom.Matrix3D(); t.prependRotation(90, v); @@ -899,23 +456,10 @@ var tests; var v2 = new away.geom.Vector3D(7, 8, 0); var t = new away.geom.Matrix3D([ - 0, - 10, - 10, - 1, - 10, - 5, - 10, - 10, - 10, - 10, - 5, - 10, - 1, - 10, - 10, - 0 - ]); + 0, 10, 10, 1, + 10, 5, 10, 10, + 10, 10, 5, 10, + 1, 10, 10, 0]); var d = new away.geom.Matrix3D(); @@ -932,23 +476,10 @@ var tests; for (var c = 0; c < 10; c++) { m = new away.geom.Matrix3D([ - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100), - this.getRnd(-100, 100) - ]); + this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100), + this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100), + this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100), + this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100), this.getRnd(-100, 100)]); m.copyRawDataTo(r); @@ -1005,11 +536,11 @@ var tests; }; VextMat3DTests.prototype.outputDecompose = function (result, original, a1, a2, a3) { - var a1 = 'new Vector3D( ' + a1.x + ' , ' + a1.y + ' , ' + a1.z + ' )'; - var a2 = 'new Vector3D( ' + a2.x + ' , ' + a2.y + ' , ' + a2.z + ' )'; - var a3 = 'new Vector3D( ' + a3.x + ' , ' + a3.y + ' , ' + a3.z + ' )'; + var s1 = 'new Vector3D( ' + a1.x + ' , ' + a1.y + ' , ' + a1.z + ' )'; + var s2 = 'new Vector3D( ' + a2.x + ' , ' + a2.y + ' , ' + a2.z + ' )'; + var s3 = 'new Vector3D( ' + a3.x + ' , ' + a3.y + ' , ' + a3.z + ' )'; - console.log('testDecompose( new [' + result + '], new [' + original + '] , ' + a1 + ' , ' + a2 + ' , ' + a3 + ' );'); + console.log('testDecompose( new [' + result + '], new [' + original + '] , ' + s1 + ' , ' + s2 + ' , ' + s3 + ' );'); }; VextMat3DTests.prototype.testPosition = function () { @@ -1024,92 +555,40 @@ var tests; var r = new Array(16); m = new away.geom.Matrix3D([ - 1, - 2, - 4, - 5, - 2, - 1, - 0, - 8, - 4, - 0, - 1, - 7, - 5, - 8, - 7, - 1 - ]); + 1, 2, 4, 5, + 2, 1, 0, 8, + 4, 0, 1, 7, + 5, 8, 7, 1]); m.copyRawDataTo(r); m.position = v; pos = m.position; this.outputPosition(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 7, - 5, - 0, - 7, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 7, + 5, 0, 7, 1]); m.copyRawDataTo(r); m.position = v; pos = m.position; this.outputPosition(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 2, - 5, - 0, - 2, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 2, + 5, 0, 2, 1]); m.copyRawDataTo(r); m.position = v; pos = m.position; this.outputPosition(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 1, - 5, - 0, - 1, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 1, + 5, 0, 1, 1]); m.copyRawDataTo(r); m.position = v; pos = m.position; @@ -1143,92 +622,40 @@ var tests; var r = new Array(16); m = new away.geom.Matrix3D([ - 1, - 2, - 4, - 5, - 2, - 1, - 0, - 8, - 4, - 0, - 1, - 7, - 5, - 8, - 7, - 1 - ]); + 1, 2, 4, 5, + 2, 1, 0, 8, + 4, 0, 1, 7, + 5, 8, 7, 1]); m.copyRawDataTo(r); m.appendScale(v.x, v.y, v.z); this.outputAppendScale(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 7, - 5, - 0, - 7, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 7, + 5, 0, 7, 1]); m.copyRawDataTo(r); m.appendScale(v.x, v.y, v.z); this.outputAppendScale(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 2, - 5, - 0, - 2, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 2, + 5, 0, 2, 1]); m.copyRawDataTo(r); m.appendScale(v.x, v.y, v.z); this.outputAppendScale(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 1, - 5, - 0, - 1, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 1, + 5, 0, 1, 1]); m.copyRawDataTo(r); m.appendScale(v.x, v.y, v.z); @@ -1261,92 +688,40 @@ var tests; var r = new Array(16); m = new away.geom.Matrix3D([ - 1, - 2, - 4, - 5, - 2, - 1, - 0, - 8, - 4, - 0, - 1, - 7, - 5, - 8, - 7, - 1 - ]); + 1, 2, 4, 5, + 2, 1, 0, 8, + 4, 0, 1, 7, + 5, 8, 7, 1]); m.copyRawDataTo(r); m.appendTranslation(v.x, v.y, v.z); this.outputAppendTranslation(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 7, - 5, - 0, - 7, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 7, + 5, 0, 7, 1]); m.copyRawDataTo(r); m.appendTranslation(v.x, v.y, v.z); this.outputAppendTranslation(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 2, - 5, - 0, - 2, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 2, + 5, 0, 2, 1]); m.copyRawDataTo(r); m.appendTranslation(v.x, v.y, v.z); this.outputAppendTranslation(m.rawData, r, v); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 1, - 5, - 0, - 1, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 1, + 5, 0, 1, 1]); m.copyRawDataTo(r); m.appendTranslation(v.x, v.y, v.z); @@ -1382,95 +757,43 @@ var tests; var r = new Array(16); m = new away.geom.Matrix3D([ - 1, - 2, - 4, - 5, - 2, - 1, - 0, - 8, - 4, - 0, - 1, - 7, - 5, - 8, - 7, - 1 - ]); + 1, 2, 4, 5, + 2, 1, 0, 8, + 4, 0, 1, 7, + 5, 8, 7, 1]); m.copyRawDataTo(r); - m.appendRotation(90, v); + m.appendRotation(90, v); // , p ); this.outputAppendRotation(m.rawData, r, v, p); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 7, - 5, - 0, - 7, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 7, + 5, 0, 7, 1]); m.copyRawDataTo(r); - m.appendRotation(90, v); + m.appendRotation(90, v); //, p ); this.outputAppendRotation(m.rawData, r, v, p); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 2, - 5, - 0, - 2, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 2, + 5, 0, 2, 1]); m.copyRawDataTo(r); - m.appendRotation(90, v); + m.appendRotation(90, v); //, p ); this.outputAppendRotation(m.rawData, r, v, p); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 1, - 5, - 0, - 1, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 1, + 5, 0, 1, 1]); m.copyRawDataTo(r); - m.appendRotation(90, v); + m.appendRotation(90, v); //, p ); this.outputAppendRotation(m.rawData, r, v, p); console.log('//------------------------------------------------------------ AS3'); @@ -1490,68 +813,29 @@ var tests; var r = new Array(16); m = new away.geom.Matrix3D([ - 1, - 2, - 4, - 5, - 2, - 1, - 0, - 8, - 4, - 0, - 1, - 7, - 5, - 8, - 7, - 1 - ]); + 1, 2, 4, 5, + 2, 1, 0, 8, + 4, 0, 1, 7, + 5, 8, 7, 1]); m.copyRawDataTo(r); i = m.invert(); this.outputInvert(i, m.rawData, r); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 7, - 5, - 0, - 7, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 7, + 5, 0, 7, 1]); m.copyRawDataTo(r); i = m.invert(); this.outputInvert(i, m.rawData, r); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 2, - 5, - 0, - 2, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 2, + 5, 0, 2, 1]); m.copyRawDataTo(r); i = m.invert(); @@ -1565,23 +849,10 @@ var tests; var r = new Array(16); m = new away.geom.Matrix3D([ - 1, - 2, - 4, - 5, - 6, - 7, - 8, - 9, - 4, - 0, - 1, - 7, - 5, - 8, - 7, - 1 - ]); + 1, 2, 4, 5, + 6, 7, 8, 9, + 4, 0, 1, 7, + 5, 8, 7, 1]); m.copyRowTo(0, v); console.log(v); @@ -1629,42 +900,16 @@ var tests; var r = new Array(16); m = new away.geom.Matrix3D([ - 1, - 0, - 4, - 5, - 0, - 1, - 8, - 0, - 4, - 8, - 1, - 1, - 5, - 0, - 1, - 1 - ]); + 1, 0, 4, 5, + 0, 1, 8, 0, + 4, 8, 1, 1, + 5, 0, 1, 1]); m = new away.geom.Matrix3D([ - 1, - 2, - 3, - 4, - 5, - 6, - 7, - 8, - 9, - 10, - 1, - 12, - 13, - 14, - 15, - 16 - ]); + 1, 2, 3, 4, + 5, 6, 7, 8, + 9, 10, 1, 12, + 13, 14, 15, 16]); m.copyColumnTo(0, v); console.log(v.toString()); diff --git a/tests/js/VextMat3DTests.js.map b/tests/js/VextMat3DTests.js.map index d1710ba1..7a3a5f65 100644 --- a/tests/js/VextMat3DTests.js.map +++ b/tests/js/VextMat3DTests.js.map @@ -1 +1 @@ -{"version":3,"file":"VextMat3DTests.js","sourceRoot":"","sources":["../away/geom/VextMat3DTests.ts"],"names":["tests","tests.geom","tests.geom.VextMat3DTests","tests.geom.VextMat3DTests.constructor","tests.geom.VextMat3DTests.testappend","tests.geom.VextMat3DTests.testprependRotation","tests.geom.VextMat3DTests.testcopyToMatrix3D","tests.geom.VextMat3DTests.testDecompose","tests.geom.VextMat3DTests.outputDecompose","tests.geom.VextMat3DTests.testPosition","tests.geom.VextMat3DTests.outputPosition","tests.geom.VextMat3DTests.testAppendScale","tests.geom.VextMat3DTests.outputAppendScale","tests.geom.VextMat3DTests.testAppendTranslation","tests.geom.VextMat3DTests.outputAppendTranslation","tests.geom.VextMat3DTests.testAppendRotation","tests.geom.VextMat3DTests.testInvert","tests.geom.VextMat3DTests.testCopyRowTo","tests.geom.VextMat3DTests.testCopyColumnTo","tests.geom.VextMat3DTests.outputAppendRotation","tests.geom.VextMat3DTests.outputInvert","tests.geom.VextMat3DTests.output","tests.geom.VextMat3DTests.getRnd"],"mappings":"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CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACtCA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACVA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACVA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;iBAACA,CAAEA,CAACA;;gBAElBA,CAACA,CAACA,aAAaA,CAAEA,CAACA,CAAEA,CAAAA;gBACpBA,CAACA,CAACA,iBAAiBA,CAACA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,CAAEA,CAAEA;gBACvCA,IAAIA,CAACA,uBAAuBA,CAACA,CAACA,CAACA,OAAOA,EAAGA,CAACA,EAAGA,CAACA,CAAEA,CAACA;;gBAEjDA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAGA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACtCA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACVA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACVA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;iBAACA,CAAEA,CAACA;;gBAElBA,CAACA,CAACA,aAAaA,CAAEA,CAACA,CAAEA,CAAAA;gBACpBA,CAACA,CAACA,iBAAiBA,CAACA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,CAAEA,CAAEA;gBACvCA,IAAIA,CAACA,uBAAuBA,CAACA,CAACA,CAACA,OAAOA,EAAGA,CAACA,EAAGA,CAACA,CAAGA,CAACA;;gBAElDA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAGA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACtCA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBAAEA,CAACA;oBACVA,CAACA;oBAAE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AACA;iBAACA,CAAEA,CAACA;;gBAGlBA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAEA,CAACA;oBAACA,CAACA;oBAACA,CAACA;oBAACA,CAACA;oBAClCA,CAACA;oBAACA,CAACA;oBAACA,CAACA;oBAACA,CAACA;oBACPA,CAACA;oBAACA,EAAEA;oBAACA,CAACA;oBAACA,EAAEA;oBACTA,EAAEA;oBAACA,EAAEA;oBAACA,EAAEA;oBAACA,EAAEA;iBAACA,CAACA,CAACA;;gBAElBA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;gBAACA,OAAOA,CAACA,GAAGA,CAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA,CAAEA;gBACrDA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;gBAACA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA,CAAEA;gBACtDA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;gBAACA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA,CAAEA;gBACtDA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;gBAACA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA,CAAEA;;gBAEtDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;gBAC1BA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA,CAACA;gBAACA,OAAOA,CAACA,GAAGA,CAAEA,CAACA,CAACA,OAAOA,CAAEA,CAAEA;gBACtDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;gBAC1BA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA,CAACA;gBAACA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,OAAOA,CAAEA,CAAEA;gBACvDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;gBAC1BA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA,CAACA;gBAACA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,OAAOA,CAAEA,CAAEA;gBACvDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA;gBAC1BA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA,CAACA;gBAACA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,OAAOA,CAAEA,CAAEA;gBAEvDA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA8BGA;YAEPA,CAACA;;YAEDhB,gDAAAA,UAA4BA,MAAiBA,EAAGA,QAAmBA,EAAGA,IAAyBA,EAAGA,KAA0BA;gBAMxHiB,uEAHuEA;gBACvEA,0EAA0EA;gBAEtEA,IAAAA,CAACA,GAAYA,gBAAgBA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA,CAACA;gBACpFA,IAAIA,CAACA,GAAYA,gBAAgBA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,IAAIA,CAACA;;gBAEvFA,OAAOA,CAACA,GAAGA,CAAEA,oCAAoCA,GAAGA,MAAMA,GAAGA,mBAAmBA,GAAGA,QAAQA,GAAGA,MAAMA,GAAGA,CAACA,GAAGA,KAAKA,GAAGA,CAACA,GAAGA,IAAIA,CAAEA,CAAEA;YAEnIA,CAACA;;YAEDjB,wCAAAA,UAAoBA,OAAiBA,EAAGA,IAAYA,EAAGA,QAAgBA;gBAGnEkB,OAAOA,CAACA,GAAGA,CAAEA,aAAaA,GAAGA,OAAOA,GAAGA,kBAAkBA,GAAGA,IAAIA,GAAGA,mBAAmBA,GAAGA,QAAQA,GAAGA,KAAKA,CAAEA,CAAEA;YAEjHA,CAACA;;YAEDlB,kCAAAA,UAAeA,IAAYA,EAAGA,MAAeA;gBAGzCmB,OAAOA,CAACA,GAAGA,CAAEA,iCAAiCA,GAAGA,IAAIA,GAAGA,KAAKA,GAAIA,MAAMA,GAAGA,IAAIA,CAAEA,CAAEA;YAEtFA,CAACA;;YAEDnB,kCAAAA,UAAeA,GAAYA,EAAGA,GAAYA;gBAEtCoB,OAAOA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA,CAACA,CAACA,CAACA,GAAGA,GAAGA,CAACA;YAC7DA,CAACA;YAGLpB;AAACA,QAADA,CAACA,IAAAD;QAv+BDA,qCAu+BCA;IACLA,CAACA,mCAAAD;0BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file +{"version":3,"file":"VextMat3DTests.js","sourceRoot":"","sources":["../geom/VextMat3DTests.ts"],"names":["tests","tests.geom","tests.geom.VextMat3DTests","tests.geom.VextMat3DTests.constructor","tests.geom.VextMat3DTests.testappend","tests.geom.VextMat3DTests.testprependRotation","tests.geom.VextMat3DTests.testcopyToMatrix3D","tests.geom.VextMat3DTests.testDecompose","tests.geom.VextMat3DTests.outputDecompose","tests.geom.VextMat3DTests.testPosition","tests.geom.VextMat3DTests.outputPosition","tests.geom.VextMat3DTests.testAppendScale","tests.geom.VextMat3DTests.outputAppendScale","tests.geom.VextMat3DTests.testAppendTranslation","tests.geom.VextMat3DTests.outputAppendTranslation","tests.geom.VextMat3DTests.testAppendRotation","tests.geom.VextMat3DTests.testInvert","tests.geom.VextMat3DTests.testCopyRowTo","tests.geom.VextMat3DTests.testCopyColumnTo","tests.geom.VextMat3DTests.outputAppendRotation","tests.geom.VextMat3DTests.outputInvert","tests.geom.VextMat3DTests.output","tests.geom.VextMat3DTests.getRnd"],"mappings":"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,aAAaA,CAAEA,CAACA,CAAEA;gBACpBA,CAACA,CAACA,iBAAiBA,CAACA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,CAAEA;;gBAErCA,IAAIA,CAACA,uBAAuBA,CAACA,CAACA,CAACA,OAAOA,EAAGA,CAACA,EAAIA,CAACA,CAAGA;;gBAElDA,CAACA,GAAGA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAIA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACtCA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;;gBAEjBA,CAACA,CAACA,aAAaA,CAAEA,CAACA,CAAEA;gBACpBA,CAACA,CAACA,iBAAiBA,CAACA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,CAAEA;gBACrCA,IAAIA,CAACA,uBAAuBA,CAACA,CAACA,CAACA,OAAOA,EAAGA,CAACA,EAAGA,CAACA,CAAEA;;gBAEhDA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAGA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACtCA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;;gBAEjBA,CAACA,CAACA,aAAaA,CAAEA,CAACA,CAAEA;gBACpBA,CAACA,CAACA,iBAAiBA,CAACA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,EAAGA,CAACA,CAACA,CAACA,CAAEA;gBACrCA,IAAIA,CAACA,uBAAuBA,CAACA,CAACA,CAACA,OAAOA,EAAGA,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AEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;;gBAEjBA,CAACA,CAACA,aAAaA,CAAEA,CAACA,CAAEA;gBACpBA,CAACA,GAAGA,CAACA,CAACA,MAAMA,CAACA,CAACA;gBACdA,IAAIA,CAACA,YAAYA,CAAEA,CAACA,EAAGA,CAACA,CAACA,OAAOA,EAAGA,CAACA,CAAEA;;gBAEtCA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAIA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACvCA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;;gBAEjBA,CAACA,CAACA,aAAaA,CAAEA,CAACA,CAAEA;gBACpBA,CAACA,GAAGA,CAACA,CAACA,MAAMA,CAACA,CAACA;gBACdA,IAAIA,CAACA,YAAYA,CAAEA,CAACA,EAAGA,CAACA,CAACA,OAAOA,EAAGA,CAACA,CAAEA;YAI1CA,CAACA;;YAEDd,yCAAAA;gBAGIe,IAAIA,CAACA,GAAwBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBACrDA,IAAIA,CAACA;gBACLA,IAAIA,CAACA;gBACLA,IAAIA,CAACA,GAAmBA,IAAIA,KAAKA,CAAWA,EAAEA,CAAEA;;gBAEhDA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAEA,CAACA,EAACA,CAACA,EAACA,CAACA,EAACA,CAACA;oBAClCA,CAACA,EAACA,CAACA,EAACA,CAACA,EAACA,CAACA;oBACPA,CAACA,EAACA,CAACA,EAACA,CAACA,EAACA,CAACA;oBACPA,CAACA,EAACA,CAACA,EAACA,CAACA,EAACA,CAACA,CAACA,CAACA;;gBAEbA,CAACA,CAACA,SAASA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAAEA;gBACtCA,CAACA,CAACA,SAASA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAAEA;gBACtCA,CAACA,CAACA,SAASA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAAEA;gBACtCA,CAACA,CAACA,SAASA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAAEA;gBAItCA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA6BGA;YAGPA,CAACA;YACDf,4CAAAA;gBAGIgB,IAAIA,CAACA,GAAwBA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAACA,CAACA;gBACrDA,IAAIA,CAACA;gBACLA,IAAIA,CAACA;gBACLA,IAAIA,CAACA,GAAmBA,IAAIA,KAAKA,CAAWA,EAAEA,CAAEA;;gBAEhDA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAIA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACvCA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA;oBACVA,CAACA,EAAEA,CAACA,EAAEA,CAACA,EAAEA,CAACA,CAACA,CAAEA;;gBAGjBA,CAACA,GAAIA,IAAIA,IAAIA,CAACA,IAAIA,CAACA,QAAQA,CAAEA;oBAAEA,CAACA,EAACA,CAACA,EAACA,CAACA,EAACA,CAACA;oBAClCA,CAACA,EAACA,CAACA,EAACA,CAACA,EAACA,CAACA;oBACPA,CAACA,EAACA,EAAEA,EAACA,CAACA,EAACA,EAAEA;oBACTA,EAAEA,EAACA,EAAEA,EAACA,EAAEA,EAACA,EAAEA,CAACA,CAACA;;gBAEjBA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAEA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA;gBACnDA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA;gBACpDA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA;gBACpDA,CAACA,CAACA,YAAYA,CAAEA,CAACA,EAAEA,CAACA,CAACA;gBAAGA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,QAAQA,CAACA,CAACA,CAAEA;;gBAEpDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACzBA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA;gBAAEA,OAAOA,CAACA,GAAGA,CAAEA,CAACA,CAACA,OAAOA,CAAEA;gBACpDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACzBA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA;gBAAEA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,OAAOA,CAAEA;gBACrDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACzBA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA;gBAAEA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,OAAOA,CAAEA;gBACrDA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA,CAACA,CAACA,GAAGA,CAACA;gBACzBA,CAACA,CAACA,cAAcA,CAAEA,CAACA,EAAIA,CAACA,CAAEA;gBAAEA,OAAOA,CAACA,GAAGA,CAAGA,CAACA,CAACA,OAAOA,CAAEA;gBAErDA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBA8BGA;YAEPA,CAACA;;YAEDhB,gDAAAA,UAA4BA,MAAiBA,EAAGA,QAAmBA,EAAGA,IAAyBA,EAAGA,KAA0BA;gBAGxHiB,uEAAuEA;gBACvEA,0EAA0EA;gBAE1EA,IAAIA,CAACA,GAAYA,gBAAgBA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,IAAIA,CAACA,CAACA,GAAGA,IAAIA;gBACnFA,IAAIA,CAACA,GAAYA,gBAAgBA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,KAAKA,GAAGA,KAAKA,CAACA,CAACA,GAAGA,IAAIA;;gBAEtFA,OAAOA,CAACA,GAAGA,CAAEA,oCAAoCA,GAAGA,MAAMA,GAAGA,mBAAmBA,GAAGA,QAAQA,GAAGA,MAAMA,GAAGA,CAACA,GAAGA,KAAKA,GAAGA,CAACA,GAAGA,IAAIA,CAAEA;YAEjIA,CAACA;;YAEDjB,wCAAAA,UAAoBA,OAAiBA,EAAGA,IAAoBA,EAAGA,QAAwBA;gBAGnFkB,OAAOA,CAACA,GAAGA,CAAEA,aAAaA,GAAGA,OAAOA,GAAGA,kBAAkBA,GAAGA,IAAIA,GAAGA,mBAAmBA,GAAGA,QAAQA,GAAGA,KAAKA,CAAEA;YAE/GA,CAACA;;YAEDlB,kCAAAA,UAAeA,IAAoBA,EAAGA,MAAeA;gBAGjDmB,OAAOA,CAACA,GAAGA,CAAEA,iCAAiCA,GAAGA,IAAIA,GAAGA,KAAKA,GAAIA,MAAMA,GAAGA,IAAIA,CAAEA;YAEpFA,CAACA;;YAEDnB,kCAAAA,UAAeA,GAAYA,EAAGA,GAAYA;gBAEtCoB,OAAOA,IAAIA,CAACA,KAAKA,CAACA,IAAIA,CAACA,MAAMA,CAACA,CAACA,GAAGA,CAACA,GAAGA,GAAGA,GAAGA,GAAGA,CAACA,CAACA,CAACA,GAAGA,GAAGA;YAC5DA,CAACA;YAGLpB,sBAACA;QAADA,CAACA,IAAAD;QAv+BDA,qCAu+BCA;IACLA,CAACA,mCAAAD;0BAAAA;AAADA,CAACA,yBAAA"} \ No newline at end of file diff --git a/tests/textures/ATFTextureTest.ts b/tests/textures/ATFTextureTest.ts index 826d797a..4dd1464e 100644 --- a/tests/textures/ATFTextureTest.ts +++ b/tests/textures/ATFTextureTest.ts @@ -27,7 +27,7 @@ module tests.textures private mipImgLoaded( e ) { - var stage3DManager : away.managers.StageGLManager = new away.managers.StageGLManager(); + var stage3DManager : away.managers.StageGLManager = away.managers.StageGLManager.getInstance(); var stage3D : away.base.StageGL = stage3DManager.getStageGLAt( 0 ); var context3D : away.gl.ContextGL = new away.gl.ContextGL( stage3D.canvas ); var loader : away.net.URLLoader = e.target;