Section 1
//ColorShortcuts (caurina.transitions.properties.ColorShortcuts)
package caurina.transitions.properties {
import caurina.transitions.*;
import flash.geom.*;
import flash.filters.*;
public class ColorShortcuts {
private static var LUMINANCE_B:Number = 0.072169;
private static var LUMINANCE_G:Number = 0.71516;
private static var LUMINANCE_R:Number = 0.212671;
public function ColorShortcuts(){
trace("This is an static class and should not be instantiated.");
}
public static function _color_splitter(_arg1, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
if (_arg1 == null){
_local3.push({name:"_color_redMultiplier", value:1});
_local3.push({name:"_color_redOffset", value:0});
_local3.push({name:"_color_greenMultiplier", value:1});
_local3.push({name:"_color_greenOffset", value:0});
_local3.push({name:"_color_blueMultiplier", value:1});
_local3.push({name:"_color_blueOffset", value:0});
} else {
_local3.push({name:"_color_redMultiplier", value:0});
_local3.push({name:"_color_redOffset", value:AuxFunctions.numberToR(_arg1)});
_local3.push({name:"_color_greenMultiplier", value:0});
_local3.push({name:"_color_greenOffset", value:AuxFunctions.numberToG(_arg1)});
_local3.push({name:"_color_blueMultiplier", value:0});
_local3.push({name:"_color_blueOffset", value:AuxFunctions.numberToB(_arg1)});
};
return (_local3);
}
public static function _contrast_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Number;
var _local6:Number;
var _local7:ColorTransform;
_local5 = (_arg2 + 1);
_local6 = Math.round((_arg2 * -128));
_local7 = new ColorTransform(_local5, _local5, _local5, 1, _local6, _local6, _local6, 0);
_arg1.transform.colorTransform = _local7;
}
public static function _brightness_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Boolean;
var _local5:ColorTransform;
var _local6:Number;
var _local7:Number;
_local4 = _arg2[0];
_local5 = _arg1.transform.colorTransform;
_local6 = (1 - (((_local5.redMultiplier + _local5.greenMultiplier) + _local5.blueMultiplier) / 3));
_local7 = (((_local5.redOffset + _local5.greenOffset) + _local5.blueOffset) / 3);
if (_local4){
return (((_local7 > 0)) ? (_local7 / 0xFF) : -(_local6));
//unresolved jump
};
return ((_local7 / 100));
}
public static function _saturation_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Array;
var _local5:Boolean;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
_local4 = getObjectMatrix(_arg1);
_local5 = _arg2[0];
_local6 = (_local5) ? (1 / 3) : LUMINANCE_R;
_local7 = (_local5) ? (1 / 3) : LUMINANCE_G;
_local8 = (_local5) ? (1 / 3) : LUMINANCE_B;
_local9 = (((((_local4[0] - _local6) / (1 - _local6)) + ((_local4[6] - _local7) / (1 - _local7))) + ((_local4[12] - _local8) / (1 - _local8))) / 3);
_local10 = (1 - (((((((_local4[1] / _local7) + (_local4[2] / _local8)) + (_local4[5] / _local6)) + (_local4[7] / _local8)) + (_local4[10] / _local6)) + (_local4[11] / _local7)) / 6));
return (((_local9 + _local10) / 2));
}
public static function _oldColor_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return ((_arg1.transform.colorTransform[_arg2[0]] * 100));
}
public static function _brightness_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Boolean;
var _local6:Number;
var _local7:Number;
var _local8:ColorTransform;
_local5 = _arg3[0];
if (_local5){
_local6 = (1 - Math.abs(_arg2));
_local7 = ((_arg2 > 0)) ? Math.round((_arg2 * 0xFF)) : 0;
} else {
_local6 = 1;
_local7 = Math.round((_arg2 * 100));
};
_local8 = new ColorTransform(_local6, _local6, _local6, 1, _local7, _local7, _local7, 0);
_arg1.transform.colorTransform = _local8;
}
public static function _saturation_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:Boolean;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Array;
_local5 = _arg3[0];
_local6 = (_local5) ? (1 / 3) : LUMINANCE_R;
_local7 = (_local5) ? (1 / 3) : LUMINANCE_G;
_local8 = (_local5) ? (1 / 3) : LUMINANCE_B;
_local9 = _arg2;
_local10 = (1 - _local9);
_local11 = (_local6 * _local10);
_local12 = (_local7 * _local10);
_local13 = (_local8 * _local10);
_local14 = [(_local11 + _local9), _local12, _local13, 0, 0, _local11, (_local12 + _local9), _local13, 0, 0, _local11, _local12, (_local13 + _local9), 0, 0, 0, 0, 0, 1, 0];
setObjectMatrix(_arg1, _local14);
}
private static function getObjectMatrix(_arg1:Object):Array{
var _local2:Number;
_local2 = 0;
while (_local2 < _arg1.filters.length) {
if ((_arg1.filters[_local2] is ColorMatrixFilter)){
return (_arg1.filters[_local2].matrix.concat());
};
_local2++;
};
return ([1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0]);
}
public static function getHueDistance(_arg1:Array, _arg2:Array):Number{
return (((Math.abs((_arg1[0] - _arg2[0])) + Math.abs((_arg1[1] - _arg2[1]))) + Math.abs((_arg1[2] - _arg2[2]))));
}
public static function _hue_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
setObjectMatrix(_arg1, getHueMatrix(_arg2));
}
public static function _hue_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:Array;
var _local5:Array;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local4 = getObjectMatrix(_arg1);
_local5 = [];
_local5[0] = {angle:-179.9, matrix:getHueMatrix(-179.9)};
_local5[1] = {angle:180, matrix:getHueMatrix(180)};
_local6 = 0;
while (_local6 < _local5.length) {
_local5[_local6].distance = getHueDistance(_local4, _local5[_local6].matrix);
_local6++;
};
_local7 = 15;
_local6 = 0;
while (_local6 < _local7) {
if (_local5[0].distance < _local5[1].distance){
_local8 = 1;
} else {
_local8 = 0;
};
_local5[_local8].angle = ((_local5[0].angle + _local5[1].angle) / 2);
_local5[_local8].matrix = getHueMatrix(_local5[_local8].angle);
_local5[_local8].distance = getHueDistance(_local4, _local5[_local8].matrix);
_local6++;
};
return (_local5[_local8].angle);
}
public static function getHueMatrix(_arg1:Number):Array{
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Array;
_local2 = ((_arg1 * Math.PI) / 180);
_local3 = LUMINANCE_R;
_local4 = LUMINANCE_G;
_local5 = LUMINANCE_B;
_local6 = Math.cos(_local2);
_local7 = Math.sin(_local2);
_local8 = [((_local3 + (_local6 * (1 - _local3))) + (_local7 * -(_local3))), ((_local4 + (_local6 * -(_local4))) + (_local7 * -(_local4))), ((_local5 + (_local6 * -(_local5))) + (_local7 * (1 - _local5))), 0, 0, ((_local3 + (_local6 * -(_local3))) + (_local7 * 0.143)), ((_local4 + (_local6 * (1 - _local4))) + (_local7 * 0.14)), ((_local5 + (_local6 * -(_local5))) + (_local7 * -0.283)), 0, 0, ((_local3 + (_local6 * -(_local3))) + (_local7 * -((1 - _local3)))), ((_local4 + (_local6 * -(_local4))) + (_local7 * _local4)), ((_local5 + (_local6 * (1 - _local5))) + (_local7 * _local5)), 0, 0, 0, 0, 0, 1, 0];
return (_local8);
}
public static function _color_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return (_arg1.transform.colorTransform[_arg2[0]]);
}
public static function init():void{
Tweener.registerSpecialProperty("_color_ra", _oldColor_property_get, _oldColor_property_set, ["redMultiplier"]);
Tweener.registerSpecialProperty("_color_rb", _color_property_get, _color_property_set, ["redOffset"]);
Tweener.registerSpecialProperty("_color_ga", _oldColor_property_get, _oldColor_property_set, ["greenMultiplier"]);
Tweener.registerSpecialProperty("_color_gb", _color_property_get, _color_property_set, ["greenOffset"]);
Tweener.registerSpecialProperty("_color_ba", _oldColor_property_get, _oldColor_property_set, ["blueMultiplier"]);
Tweener.registerSpecialProperty("_color_bb", _color_property_get, _color_property_set, ["blueOffset"]);
Tweener.registerSpecialProperty("_color_aa", _oldColor_property_get, _oldColor_property_set, ["alphaMultiplier"]);
Tweener.registerSpecialProperty("_color_ab", _color_property_get, _color_property_set, ["alphaOffset"]);
Tweener.registerSpecialProperty("_color_redMultiplier", _color_property_get, _color_property_set, ["redMultiplier"]);
Tweener.registerSpecialProperty("_color_redOffset", _color_property_get, _color_property_set, ["redOffset"]);
Tweener.registerSpecialProperty("_color_greenMultiplier", _color_property_get, _color_property_set, ["greenMultiplier"]);
Tweener.registerSpecialProperty("_color_greenOffset", _color_property_get, _color_property_set, ["greenOffset"]);
Tweener.registerSpecialProperty("_color_blueMultiplier", _color_property_get, _color_property_set, ["blueMultiplier"]);
Tweener.registerSpecialProperty("_color_blueOffset", _color_property_get, _color_property_set, ["blueOffset"]);
Tweener.registerSpecialProperty("_color_alphaMultiplier", _color_property_get, _color_property_set, ["alphaMultiplier"]);
Tweener.registerSpecialProperty("_color_alphaOffset", _color_property_get, _color_property_set, ["alphaOffset"]);
Tweener.registerSpecialPropertySplitter("_color", _color_splitter);
Tweener.registerSpecialPropertySplitter("_colorTransform", _colorTransform_splitter);
Tweener.registerSpecialProperty("_brightness", _brightness_get, _brightness_set, [false]);
Tweener.registerSpecialProperty("_tintBrightness", _brightness_get, _brightness_set, [true]);
Tweener.registerSpecialProperty("_contrast", _contrast_get, _contrast_set);
Tweener.registerSpecialProperty("_hue", _hue_get, _hue_set);
Tweener.registerSpecialProperty("_saturation", _saturation_get, _saturation_set, [false]);
Tweener.registerSpecialProperty("_dumbSaturation", _saturation_get, _saturation_set, [true]);
}
private static function setObjectMatrix(_arg1:Object, _arg2:Array):void{
var _local3:Array;
var _local4:Boolean;
var _local5:Number;
var _local6:ColorMatrixFilter;
_local3 = _arg1.filters.concat();
_local4 = false;
_local5 = 0;
while (_local5 < _local3.length) {
if ((_local3[_local5] is ColorMatrixFilter)){
_local3[_local5].matrix = _arg2.concat();
_local4 = true;
};
_local5++;
};
if (!_local4){
_local6 = new ColorMatrixFilter(_arg2);
_local3[_local3.length] = _local6;
};
_arg1.filters = _local3;
}
public static function _color_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:ColorTransform;
_local5 = _arg1.transform.colorTransform;
_local5[_arg3[0]] = _arg2;
_arg1.transform.colorTransform = _local5;
}
public static function _oldColor_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:ColorTransform;
_local5 = _arg1.transform.colorTransform;
_local5[_arg3[0]] = (_arg2 / 100);
_arg1.transform.colorTransform = _local5;
}
public static function _contrast_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:ColorTransform;
var _local5:Number;
var _local6:Number;
_local4 = _arg1.transform.colorTransform;
_local5 = ((((_local4.redMultiplier + _local4.greenMultiplier) + _local4.blueMultiplier) / 3) - 1);
_local6 = ((((_local4.redOffset + _local4.greenOffset) + _local4.blueOffset) / 3) / -128);
return (((_local5 + _local6) / 2));
}
public static function _colorTransform_splitter(_arg1:Object, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
if (_arg1 == null){
_local3.push({name:"_color_redMultiplier", value:1});
_local3.push({name:"_color_redOffset", value:0});
_local3.push({name:"_color_greenMultiplier", value:1});
_local3.push({name:"_color_greenOffset", value:0});
_local3.push({name:"_color_blueMultiplier", value:1});
_local3.push({name:"_color_blueOffset", value:0});
} else {
_local3.push({name:"_color_redMultiplier", value:_arg1.redMultiplier});
_local3.push({name:"_color_redOffset", value:_arg1.redOffset});
_local3.push({name:"_color_blueMultiplier", value:_arg1.blueMultiplier});
_local3.push({name:"_color_blueOffset", value:_arg1.blueOffset});
_local3.push({name:"_color_greenMultiplier", value:_arg1.greenMultiplier});
_local3.push({name:"_color_greenOffset", value:_arg1.greenOffset});
_local3.push({name:"_color_alphaMultiplier", value:_arg1.alphaMultiplier});
_local3.push({name:"_color_alphaOffset", value:_arg1.alphaOffset});
};
return (_local3);
}
}
}//package caurina.transitions.properties
Section 2
//TextShortcuts (caurina.transitions.properties.TextShortcuts)
package caurina.transitions.properties {
import caurina.transitions.*;
import flash.text.*;
public class TextShortcuts {
public function TextShortcuts(){
trace("This is an static class and should not be instantiated.");
}
public static function init():void{
Tweener.registerSpecialProperty("_text", _text_get, _text_set, null, _text_preProcess);
Tweener.registerSpecialPropertySplitter("_text_color", _generic_color_splitter, ["_text_color_r", "_text_color_g", "_text_color_b"]);
Tweener.registerSpecialProperty("_text_color_r", _textFormat_property_get, _textFormat_property_set, ["color", true, "r"]);
Tweener.registerSpecialProperty("_text_color_g", _textFormat_property_get, _textFormat_property_set, ["color", true, "g"]);
Tweener.registerSpecialProperty("_text_color_b", _textFormat_property_get, _textFormat_property_set, ["color", true, "b"]);
Tweener.registerSpecialProperty("_text_indent", _textFormat_property_get, _textFormat_property_set, ["indent"]);
Tweener.registerSpecialProperty("_text_leading", _textFormat_property_get, _textFormat_property_set, ["leading"]);
Tweener.registerSpecialProperty("_text_leftMargin", _textFormat_property_get, _textFormat_property_set, ["leftMargin"]);
Tweener.registerSpecialProperty("_text_letterSpacing", _textFormat_property_get, _textFormat_property_set, ["letterSpacing"]);
Tweener.registerSpecialProperty("_text_rightMargin", _textFormat_property_get, _textFormat_property_set, ["rightMargin"]);
Tweener.registerSpecialProperty("_text_size", _textFormat_property_get, _textFormat_property_set, ["size"]);
}
public static function _text_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
return (-(_arg1.text.length));
}
public static function _textFormat_property_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
var _local5:TextFormat;
var _local6:String;
var _local7:Boolean;
var _local8:String;
_local5 = _arg1.getTextFormat();
_local6 = _arg3[0];
_local7 = _arg3[1];
if (!_local7){
_local5[_local6] = _arg2;
} else {
_local8 = _arg3[2];
if (_local8 == "r"){
_local5[_local6] = ((_local5[_local6] & 0xFFFF) | (_arg2 << 16));
};
if (_local8 == "g"){
_local5[_local6] = ((_local5[_local6] & 0xFF00FF) | (_arg2 << 8));
};
if (_local8 == "b"){
_local5[_local6] = ((_local5[_local6] & 0xFFFF00) | _arg2);
};
};
_arg1.defaultTextFormat = _local5;
_arg1.setTextFormat(_local5);
}
public static function _text_set(_arg1:Object, _arg2:Number, _arg3:Array, _arg4:Object=null):void{
if (_arg2 < 0){
_arg1.text = _arg4.oldText.substr(0, -(Math.round(_arg2)));
} else {
_arg1.text = _arg4.newText.substr(0, Math.round(_arg2));
};
}
public static function _textFormat_property_get(_arg1:Object, _arg2:Array, _arg3:Object=null):Number{
var _local4:TextFormat;
var _local5:String;
var _local6:Boolean;
var _local7:String;
_local4 = _arg1.getTextFormat();
_local5 = _arg2[0];
_local6 = _arg2[1];
if (!_local6){
return (_local4[_local5]);
};
_local7 = _arg2[2];
if (_local7 == "r"){
return (AuxFunctions.numberToR(_local4[_local5]));
};
if (_local7 == "g"){
return (AuxFunctions.numberToG(_local4[_local5]));
};
if (_local7 == "b"){
return (AuxFunctions.numberToB(_local4[_local5]));
};
return (NaN);
}
public static function _generic_color_splitter(_arg1:Number, _arg2:Array):Array{
var _local3:Array;
_local3 = new Array();
_local3.push({name:_arg2[0], value:AuxFunctions.numberToR(_arg1)});
_local3.push({name:_arg2[1], value:AuxFunctions.numberToG(_arg1)});
_local3.push({name:_arg2[2], value:AuxFunctions.numberToB(_arg1)});
return (_local3);
}
public static function _text_preProcess(_arg1:Object, _arg2:Array, _arg3:Object, _arg4:Object):Number{
_arg4.oldText = _arg1.text;
_arg4.newText = _arg3;
return (_arg4.newText.length);
}
}
}//package caurina.transitions.properties
Section 3
//AuxFunctions (caurina.transitions.AuxFunctions)
package caurina.transitions {
public class AuxFunctions {
public static function concatObjects(... _args):Object{
var _local2:Object;
var _local3:Object;
var _local4:int;
var _local5:String;
_local2 = {};
_local4 = 0;
while (_local4 < _args.length) {
_local3 = _args[_local4];
for (_local5 in _local3) {
if (_local3[_local5] == null){
delete _local2[_local5];
} else {
_local2[_local5] = _local3[_local5];
};
};
_local4++;
};
return (_local2);
}
public static function numberToG(_arg1:Number):Number{
return (((_arg1 & 0xFF00) >> 8));
}
public static function numberToR(_arg1:Number):Number{
return (((_arg1 & 0xFF0000) >> 16));
}
public static function isInArray(_arg1:String, _arg2:Array):Boolean{
var _local3:uint;
var _local4:uint;
_local3 = _arg2.length;
_local4 = 0;
while (_local4 < _local3) {
if (_arg2[_local4] == _arg1){
return (true);
};
_local4++;
};
return (false);
}
public static function getObjectLength(_arg1:Object):uint{
var _local2:uint;
var _local3:String;
_local2 = 0;
for (_local3 in _arg1) {
_local2++;
};
return (_local2);
}
public static function numberToB(_arg1:Number):Number{
return ((_arg1 & 0xFF));
}
}
}//package caurina.transitions
Section 4
//Equations (caurina.transitions.Equations)
package caurina.transitions {
public class Equations {
public function Equations(){
trace("Equations is a static class and should not be instantiated.");
}
public static function easeOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
if (_arg1 < (1 / 2.75)){
return (((_arg3 * ((7.5625 * _arg1) * _arg1)) + _arg2));
};
if (_arg1 < (2 / 2.75)){
_arg1 = (_arg1 - (1.5 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.75)) + _arg2));
};
if (_arg1 < (2.5 / 2.75)){
_arg1 = (_arg1 - (2.25 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.9375)) + _arg2));
};
_arg1 = (_arg1 - (2.625 / 2.75));
return (((_arg3 * (((7.5625 * _arg1) * _arg1) + 0.984375)) + _arg2));
}
public static function easeInOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 == 2){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * (0.3 * 1.5)) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
if (_arg1 < 1){
--_arg1;
return (((-0.5 * ((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
};
--_arg1;
return ((((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) * 0.5) + _arg3) + _arg2));
}
public static function easeInOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * _arg1) * _arg1) + _arg2));
};
--_arg1;
return ((((-(_arg3) / 2) * ((_arg1 * (_arg1 - 2)) - 1)) + _arg2));
}
public static function easeInOutBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (((easeInBounce((_arg1 * 2), 0, _arg3, _arg4) * 0.5) + _arg2));
};
return ((((easeOutBounce(((_arg1 * 2) - _arg4), 0, _arg3, _arg4) * 0.5) + (_arg3 * 0.5)) + _arg2));
}
public static function easeInOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * ((_arg1 * _arg1) * (((_local6 + 1) * _arg1) - _local6))) + _arg2));
};
_arg1 = (_arg1 - 2);
_local6 = (_local6 * 1.525);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 2)) + _arg2));
}
public static function easeOutInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCubic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCubic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeNone(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((_arg3 * _arg1) / _arg4) + _arg2));
}
public static function easeOutBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * (((_local6 + 1) * _arg1) + _local6)) + 1)) + _arg2));
}
public static function easeInOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) / 2) * (Math.cos(((Math.PI * _arg1) / _arg4)) - 1)) + _arg2));
}
public static function easeInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.overshoot)))) ? 1.70158 : _arg5.overshoot;
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * (((_local6 + 1) * _arg1) - _local6)) + _arg2));
}
public static function easeInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeOutInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuint((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuint(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBounce((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBounce(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function init():void{
Tweener.registerTransition("easenone", easeNone);
Tweener.registerTransition("linear", easeNone);
Tweener.registerTransition("easeinquad", easeInQuad);
Tweener.registerTransition("easeoutquad", easeOutQuad);
Tweener.registerTransition("easeinoutquad", easeInOutQuad);
Tweener.registerTransition("easeoutinquad", easeOutInQuad);
Tweener.registerTransition("easeincubic", easeInCubic);
Tweener.registerTransition("easeoutcubic", easeOutCubic);
Tweener.registerTransition("easeinoutcubic", easeInOutCubic);
Tweener.registerTransition("easeoutincubic", easeOutInCubic);
Tweener.registerTransition("easeinquart", easeInQuart);
Tweener.registerTransition("easeoutquart", easeOutQuart);
Tweener.registerTransition("easeinoutquart", easeInOutQuart);
Tweener.registerTransition("easeoutinquart", easeOutInQuart);
Tweener.registerTransition("easeinquint", easeInQuint);
Tweener.registerTransition("easeoutquint", easeOutQuint);
Tweener.registerTransition("easeinoutquint", easeInOutQuint);
Tweener.registerTransition("easeoutinquint", easeOutInQuint);
Tweener.registerTransition("easeinsine", easeInSine);
Tweener.registerTransition("easeoutsine", easeOutSine);
Tweener.registerTransition("easeinoutsine", easeInOutSine);
Tweener.registerTransition("easeoutinsine", easeOutInSine);
Tweener.registerTransition("easeincirc", easeInCirc);
Tweener.registerTransition("easeoutcirc", easeOutCirc);
Tweener.registerTransition("easeinoutcirc", easeInOutCirc);
Tweener.registerTransition("easeoutincirc", easeOutInCirc);
Tweener.registerTransition("easeinexpo", easeInExpo);
Tweener.registerTransition("easeoutexpo", easeOutExpo);
Tweener.registerTransition("easeinoutexpo", easeInOutExpo);
Tweener.registerTransition("easeoutinexpo", easeOutInExpo);
Tweener.registerTransition("easeinelastic", easeInElastic);
Tweener.registerTransition("easeoutelastic", easeOutElastic);
Tweener.registerTransition("easeinoutelastic", easeInOutElastic);
Tweener.registerTransition("easeoutinelastic", easeOutInElastic);
Tweener.registerTransition("easeinback", easeInBack);
Tweener.registerTransition("easeoutback", easeOutBack);
Tweener.registerTransition("easeinoutback", easeInOutBack);
Tweener.registerTransition("easeoutinback", easeOutInBack);
Tweener.registerTransition("easeinbounce", easeInBounce);
Tweener.registerTransition("easeoutbounce", easeOutBounce);
Tweener.registerTransition("easeinoutbounce", easeInOutBounce);
Tweener.registerTransition("easeoutinbounce", easeOutInBounce);
}
public static function easeOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==_arg4) ? (_arg2 + _arg3) : (((_arg3 * 1.001) * (-(Math.pow(2, ((-10 * _arg1) / _arg4))) + 1)) + _arg2));
}
public static function easeOutInBack(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutBack((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInBack(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg1)==0) ? _arg2 : (((_arg3 * Math.pow(2, (10 * ((_arg1 / _arg4) - 1)))) + _arg2) - (_arg3 * 0.001)));
}
public static function easeInCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((_arg3 * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((((((_arg3 * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
}
public static function easeInOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((-(_arg3) / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (Math.sqrt((1 - (_arg1 * _arg1))) + 1)) + _arg2));
}
public static function easeInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((_arg3 * _arg1) * _arg1) + _arg2));
}
public static function easeInBounce(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 - easeOutBounce((_arg4 - _arg1), 0, _arg3, _arg4)) + _arg2));
}
public static function easeOutInExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutExpo((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInExpo(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((-(_arg3) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 1)) + _arg2));
}
public static function easeInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return ((((-(_arg3) * Math.cos(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg3) + _arg2));
}
public static function easeInOutQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((-(_arg3) / 2) * ((((_arg1 * _arg1) * _arg1) * _arg1) - 2)) + _arg2));
}
public static function easeOutQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return ((((-(_arg3) * _arg1) * (_arg1 - 2)) + _arg2));
}
public static function easeOutInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutElastic((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInElastic(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
--_arg1;
return ((-(((_local8 * Math.pow(2, (10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6)))) + _arg2));
}
public static function easeOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((_arg1 * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 1)) + _arg2));
}
public static function easeOutInQuad(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuad((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuad(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
return (((_arg3 * Math.sin(((_arg1 / _arg4) * (Math.PI / 2)))) + _arg2));
}
public static function easeInOutCubic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((_arg1 * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInOutQuint(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return ((((((((_arg3 / 2) * _arg1) * _arg1) * _arg1) * _arg1) * _arg1) + _arg2));
};
_arg1 = (_arg1 - 2);
return ((((_arg3 / 2) * (((((_arg1 * _arg1) * _arg1) * _arg1) * _arg1) + 2)) + _arg2));
}
public static function easeInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = (_arg1 / _arg4);
return (((-(_arg3) * (Math.sqrt((1 - (_arg1 * _arg1))) - 1)) + _arg2));
}
public static function easeOutInSine(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutSine((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInSine(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeInOutExpo(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 == 0){
return (_arg2);
};
if (_arg1 == _arg4){
return ((_arg2 + _arg3));
};
_arg1 = (_arg1 / (_arg4 / 2));
if (_arg1 < 1){
return (((((_arg3 / 2) * Math.pow(2, (10 * (_arg1 - 1)))) + _arg2) - (_arg3 * 0.0005)));
};
--_arg1;
return (((((_arg3 / 2) * 1.0005) * (-(Math.pow(2, (-10 * _arg1))) + 2)) + _arg2));
}
public static function easeOutElastic(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
var _local6:Number;
var _local7:Number;
var _local8:Number;
if (_arg1 == 0){
return (_arg2);
};
_arg1 = (_arg1 / _arg4);
if (_arg1 == 1){
return ((_arg2 + _arg3));
};
_local6 = (((!(Boolean(_arg5))) || (isNaN(_arg5.period)))) ? (_arg4 * 0.3) : _arg5.period;
_local8 = (((!(Boolean(_arg5))) || (isNaN(_arg5.amplitude)))) ? 0 : _arg5.amplitude;
if (((!(Boolean(_local8))) || ((_local8 < Math.abs(_arg3))))){
_local8 = _arg3;
_local7 = (_local6 / 4);
} else {
_local7 = ((_local6 / (2 * Math.PI)) * Math.asin((_arg3 / _local8)));
};
return (((((_local8 * Math.pow(2, (-10 * _arg1))) * Math.sin(((((_arg1 * _arg4) - _local7) * (2 * Math.PI)) / _local6))) + _arg3) + _arg2));
}
public static function easeOutCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
_arg1 = ((_arg1 / _arg4) - 1);
return (((_arg3 * Math.sqrt((1 - (_arg1 * _arg1)))) + _arg2));
}
public static function easeOutInQuart(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutQuart((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInQuart(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
public static function easeOutInCirc(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number, _arg5:Object=null):Number{
if (_arg1 < (_arg4 / 2)){
return (easeOutCirc((_arg1 * 2), _arg2, (_arg3 / 2), _arg4, _arg5));
};
return (easeInCirc(((_arg1 * 2) - _arg4), (_arg2 + (_arg3 / 2)), (_arg3 / 2), _arg4, _arg5));
}
}
}//package caurina.transitions
Section 5
//PropertyInfoObj (caurina.transitions.PropertyInfoObj)
package caurina.transitions {
public class PropertyInfoObj {
public var originalValueComplete:Object;
public var modifierParameters:Array;
public var isSpecialProperty:Boolean;
public var hasModifier:Boolean;
public var valueComplete:Number;
public var extra:Object;
public var valueStart:Number;
public var modifierFunction:Function;
public var arrayIndex:Number;
public function PropertyInfoObj(_arg1:Number, _arg2:Number, _arg3:Object, _arg4:Number, _arg5:Object, _arg6:Boolean, _arg7:Function, _arg8:Array){
valueStart = _arg1;
valueComplete = _arg2;
originalValueComplete = _arg3;
arrayIndex = _arg4;
extra = _arg5;
isSpecialProperty = _arg6;
hasModifier = Boolean(_arg7);
modifierFunction = _arg7;
modifierParameters = _arg8;
}
public function toString():String{
var _local1:String;
_local1 = "\n[PropertyInfoObj ";
_local1 = (_local1 + ("valueStart:" + String(valueStart)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("valueComplete:" + String(valueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("originalValueComplete:" + String(originalValueComplete)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("arrayIndex:" + String(arrayIndex)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("extra:" + String(extra)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("isSpecialProperty:" + String(isSpecialProperty)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("hasModifier:" + String(hasModifier)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierFunction:" + String(modifierFunction)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("modifierParameters:" + String(modifierParameters)));
_local1 = (_local1 + "]\n");
return (_local1);
}
public function clone():PropertyInfoObj{
var _local1:PropertyInfoObj;
_local1 = new PropertyInfoObj(valueStart, valueComplete, originalValueComplete, arrayIndex, extra, isSpecialProperty, modifierFunction, modifierParameters);
return (_local1);
}
}
}//package caurina.transitions
Section 6
//SpecialProperty (caurina.transitions.SpecialProperty)
package caurina.transitions {
public class SpecialProperty {
public var parameters:Array;
public var preProcess:Function;
public var setValue:Function;
public var getValue:Function;
public function SpecialProperty(_arg1:Function, _arg2:Function, _arg3:Array=null, _arg4:Function=null){
getValue = _arg1;
setValue = _arg2;
parameters = _arg3;
preProcess = _arg4;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialProperty ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("setValue:" + String(setValue)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("preProcess:" + String(preProcess)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 7
//SpecialPropertyModifier (caurina.transitions.SpecialPropertyModifier)
package caurina.transitions {
public class SpecialPropertyModifier {
public var getValue:Function;
public var modifyValues:Function;
public function SpecialPropertyModifier(_arg1:Function, _arg2:Function){
modifyValues = _arg1;
getValue = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertyModifier ");
_local1 = (_local1 + ("modifyValues:" + String(modifyValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("getValue:" + String(getValue)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 8
//SpecialPropertySplitter (caurina.transitions.SpecialPropertySplitter)
package caurina.transitions {
public class SpecialPropertySplitter {
public var parameters:Array;
public var splitValues:Function;
public function SpecialPropertySplitter(_arg1:Function, _arg2:Array){
splitValues = _arg1;
parameters = _arg2;
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + "[SpecialPropertySplitter ");
_local1 = (_local1 + ("splitValues:" + String(splitValues)));
_local1 = (_local1 + ", ");
_local1 = (_local1 + ("parameters:" + String(parameters)));
_local1 = (_local1 + "]");
return (_local1);
}
}
}//package caurina.transitions
Section 9
//Tweener (caurina.transitions.Tweener)
package caurina.transitions {
import flash.events.*;
import flash.display.*;
import flash.utils.*;
public class Tweener {
private static var _timeScale:Number = 1;
private static var _currentTimeFrame:Number;
private static var _specialPropertySplitterList:Object;
private static var _engineExists:Boolean = false;
private static var _specialPropertyModifierList:Object;
private static var _currentTime:Number;
private static var _tweenList:Array;
private static var _specialPropertyList:Object;
private static var _transitionList:Object;
private static var _inited:Boolean = false;
private static var __tweener_controller__:MovieClip;
public function Tweener(){
trace("Tweener is a static class and should not be instantiated.");
}
public static function registerSpecialPropertyModifier(_arg1:String, _arg2:Function, _arg3:Function):void{
var _local4:SpecialPropertyModifier;
if (!_inited){
init();
};
_local4 = new SpecialPropertyModifier(_arg2, _arg3);
_specialPropertyModifierList[_arg1] = _local4;
}
public static function registerSpecialProperty(_arg1:String, _arg2:Function, _arg3:Function, _arg4:Array=null, _arg5:Function=null):void{
var _local6:SpecialProperty;
if (!_inited){
init();
};
_local6 = new SpecialProperty(_arg2, _arg3, _arg4, _arg5);
_specialPropertyList[_arg1] = _local6;
}
public static function init(_arg1=null):void{
_inited = true;
_transitionList = new Object();
Equations.init();
_specialPropertyList = new Object();
_specialPropertyModifierList = new Object();
_specialPropertySplitterList = new Object();
}
private static function updateTweens():Boolean{
var _local1:int;
if (_tweenList.length == 0){
return (false);
};
_local1 = 0;
while (_local1 < _tweenList.length) {
if ((((_tweenList[_local1] == undefined)) || (!(_tweenList[_local1].isPaused)))){
if (!updateTweenByIndex(_local1)){
removeTweenByIndex(_local1);
};
if (_tweenList[_local1] == null){
removeTweenByIndex(_local1, true);
_local1--;
};
};
_local1++;
};
return (true);
}
public static function addCaller(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local3:Number;
var _local4:Array;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Function;
var _local9:TweenListObj;
var _local10:Number;
var _local11:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local4 = _arg1.concat();
} else {
_local4 = [_arg1];
};
_local5 = _arg2;
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local6 = (isNaN(_local5.time)) ? 0 : _local5.time;
_local7 = (isNaN(_local5.delay)) ? 0 : _local5.delay;
if (typeof(_local5.transition) == "string"){
_local11 = _local5.transition.toLowerCase();
_local8 = _transitionList[_local11];
} else {
_local8 = _local5.transition;
};
if (!Boolean(_local8)){
_local8 = _transitionList["easeoutexpo"];
};
_local3 = 0;
while (_local3 < _local4.length) {
if (_local5.useFrames == true){
_local9 = new TweenListObj(_local4[_local3], (_currentTimeFrame + (_local7 / _timeScale)), (_currentTimeFrame + ((_local7 + _local6) / _timeScale)), true, _local8, _local5.transitionParams);
} else {
_local9 = new TweenListObj(_local4[_local3], (_currentTime + ((_local7 * 1000) / _timeScale)), (_currentTime + (((_local7 * 1000) + (_local6 * 1000)) / _timeScale)), false, _local8, _local5.transitionParams);
};
_local9.properties = null;
_local9.onStart = _local5.onStart;
_local9.onUpdate = _local5.onUpdate;
_local9.onComplete = _local5.onComplete;
_local9.onOverwrite = _local5.onOverwrite;
_local9.onStartParams = _local5.onStartParams;
_local9.onUpdateParams = _local5.onUpdateParams;
_local9.onCompleteParams = _local5.onCompleteParams;
_local9.onOverwriteParams = _local5.onOverwriteParams;
_local9.onStartScope = _local5.onStartScope;
_local9.onUpdateScope = _local5.onUpdateScope;
_local9.onCompleteScope = _local5.onCompleteScope;
_local9.onOverwriteScope = _local5.onOverwriteScope;
_local9.onErrorScope = _local5.onErrorScope;
_local9.isCaller = true;
_local9.count = _local5.count;
_local9.waitFrames = _local5.waitFrames;
_tweenList.push(_local9);
if ((((_local6 == 0)) && ((_local7 == 0)))){
_local10 = (_tweenList.length - 1);
updateTweenByIndex(_local10);
removeTweenByIndex(_local10);
};
_local3++;
};
return (true);
}
public static function pauseAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
pauseTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function removeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(removeTweenByIndex, _arg1, _local3));
}
public static function splitTweens(_arg1:Number, _arg2:Array):uint{
var _local3:TweenListObj;
var _local4:TweenListObj;
var _local5:uint;
var _local6:String;
var _local7:Boolean;
_local3 = _tweenList[_arg1];
_local4 = _local3.clone(false);
_local5 = 0;
while (_local5 < _arg2.length) {
_local6 = _arg2[_local5];
if (Boolean(_local3.properties[_local6])){
_local3.properties[_local6] = undefined;
delete _local3.properties[_local6];
};
_local5++;
};
for (_local6 in _local4.properties) {
_local7 = false;
_local5 = 0;
while (_local5 < _arg2.length) {
if (_arg2[_local5] == _local6){
_local7 = true;
break;
};
_local5++;
};
if (!_local7){
_local4.properties[_local6] = undefined;
delete _local4.properties[_local6];
};
};
_tweenList.push(_local4);
return ((_tweenList.length - 1));
}
public static function updateFrame():void{
_currentTimeFrame++;
}
public static function resumeTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
var _local3:Number;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (!(_local2.isPaused)))){
return (false);
};
_local3 = getCurrentTweeningTime(_local2);
_local2.timeStart = (_local2.timeStart + (_local3 - _local2.timePaused));
_local2.timeComplete = (_local2.timeComplete + (_local3 - _local2.timePaused));
_local2.timePaused = undefined;
_local2.isPaused = false;
return (true);
}
public static function getVersion():String{
return ("AS3 1.31.70");
}
public static function onEnterFrame(_arg1:Event):void{
var _local2:Boolean;
updateTime();
updateFrame();
_local2 = false;
_local2 = updateTweens();
if (!_local2){
stopEngine();
};
}
public static function updateTime():void{
_currentTime = getTimer();
}
private static function updateTweenByIndex(_arg1:Number):Boolean{
var tTweening:TweenListObj;
var isOver:Boolean;
var mustUpdate:Boolean;
var nv:Number;
var t:Number;
var b:Number;
var c:Number;
var d:Number;
var pName:String;
var eventScope:Object;
var tScope:Object;
var cTime:Number;
var tProperty:Object;
var pv:Number;
var i = _arg1;
tTweening = _tweenList[i];
if ((((tTweening == null)) || (!(Boolean(tTweening.scope))))){
return (false);
};
isOver = false;
cTime = getCurrentTweeningTime(tTweening);
if (cTime >= tTweening.timeStart){
tScope = tTweening.scope;
if (tTweening.isCaller){
do {
t = (((tTweening.timeComplete - tTweening.timeStart) / tTweening.count) * (tTweening.timesCalled + 1));
b = tTweening.timeStart;
c = (tTweening.timeComplete - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d);
} while (!(cTime >= nv));
} else {
mustUpdate = (((((tTweening.skipUpdates < 1)) || (!(tTweening.skipUpdates)))) || ((tTweening.updatesSkipped >= tTweening.skipUpdates)));
if (cTime >= tTweening.timeComplete){
isOver = true;
mustUpdate = true;
};
if (!tTweening.hasStarted){
if (Boolean(tTweening.onStart)){
eventScope = (Boolean(tTweening.onStartScope)) ? tTweening.onStartScope : tScope;
try {
tTweening.onStart.apply(eventScope, tTweening.onStartParams);
} catch(e:Error) {
handleError(tTweening, e, "onStart");
};
};
for (pName in tTweening.properties) {
if (tTweening.properties[pName].isSpecialProperty){
if (Boolean(_specialPropertyList[pName].preProcess)){
tTweening.properties[pName].valueComplete = _specialPropertyList[pName].preProcess(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].originalValueComplete, tTweening.properties[pName].extra);
};
pv = _specialPropertyList[pName].getValue(tScope, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
pv = tScope[pName];
};
tTweening.properties[pName].valueStart = (isNaN(pv)) ? tTweening.properties[pName].valueComplete : pv;
};
mustUpdate = true;
tTweening.hasStarted = true;
};
if (mustUpdate){
for (pName in tTweening.properties) {
tProperty = tTweening.properties[pName];
if (isOver){
nv = tProperty.valueComplete;
} else {
if (tProperty.hasModifier){
t = (cTime - tTweening.timeStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, 0, 1, d, tTweening.transitionParams);
nv = tProperty.modifierFunction(tProperty.valueStart, tProperty.valueComplete, nv, tProperty.modifierParameters);
} else {
t = (cTime - tTweening.timeStart);
b = tProperty.valueStart;
c = (tProperty.valueComplete - tProperty.valueStart);
d = (tTweening.timeComplete - tTweening.timeStart);
nv = tTweening.transition(t, b, c, d, tTweening.transitionParams);
};
};
if (tTweening.rounded){
nv = Math.round(nv);
};
if (tProperty.isSpecialProperty){
_specialPropertyList[pName].setValue(tScope, nv, _specialPropertyList[pName].parameters, tTweening.properties[pName].extra);
} else {
tScope[pName] = nv;
};
};
tTweening.updatesSkipped = 0;
if (Boolean(tTweening.onUpdate)){
eventScope = (Boolean(tTweening.onUpdateScope)) ? tTweening.onUpdateScope : tScope;
try {
tTweening.onUpdate.apply(eventScope, tTweening.onUpdateParams);
} catch(e:Error) {
handleError(tTweening, e, "onUpdate");
};
};
} else {
tTweening.updatesSkipped++;
};
};
if (((isOver) && (Boolean(tTweening.onComplete)))){
eventScope = (Boolean(tTweening.onCompleteScope)) ? tTweening.onCompleteScope : tScope;
try {
tTweening.onComplete.apply(eventScope, tTweening.onCompleteParams);
} catch(e:Error) {
handleError(tTweening, e, "onComplete");
};
};
return (!(isOver));
};
return (true);
}
public static function setTimeScale(_arg1:Number):void{
var _local2:Number;
var _local3:Number;
if (isNaN(_arg1)){
_arg1 = 1;
};
if (_arg1 < 1E-5){
_arg1 = 1E-5;
};
if (_arg1 != _timeScale){
if (_tweenList != null){
_local2 = 0;
while (_local2 < _tweenList.length) {
_local3 = getCurrentTweeningTime(_tweenList[_local2]);
_tweenList[_local2].timeStart = (_local3 - (((_local3 - _tweenList[_local2].timeStart) * _timeScale) / _arg1));
_tweenList[_local2].timeComplete = (_local3 - (((_local3 - _tweenList[_local2].timeComplete) * _timeScale) / _arg1));
if (_tweenList[_local2].timePaused != undefined){
_tweenList[_local2].timePaused = (_local3 - (((_local3 - _tweenList[_local2].timePaused) * _timeScale) / _arg1));
};
_local2++;
};
};
_timeScale = _arg1;
};
}
public static function resumeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
resumeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
private static function handleError(_arg1:TweenListObj, _arg2:Error, _arg3:String):void{
var eventScope:Object;
var pTweening = _arg1;
var pError = _arg2;
var pCallBackName = _arg3;
if (((Boolean(pTweening.onError)) && ((pTweening.onError is Function)))){
eventScope = (Boolean(pTweening.onErrorScope)) ? pTweening.onErrorScope : pTweening.scope;
try {
pTweening.onError.apply(pTweening.scope, [pTweening.scope, pError]);
} catch(metaError:Error) {
printError(((((String(pTweening.scope) + " raised an error while executing the 'onError' handler. Original error:\n ") + pError.getStackTrace()) + "\nonError error: ") + metaError.getStackTrace()));
};
} else {
if (!Boolean(pTweening.onError)){
printError(((((String(pTweening.scope) + " raised an error while executing the '") + pCallBackName) + "'handler. \n") + pError.getStackTrace()));
};
};
}
private static function startEngine():void{
_engineExists = true;
_tweenList = new Array();
__tweener_controller__ = new MovieClip();
__tweener_controller__.addEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
_currentTimeFrame = 0;
updateTime();
}
public static function removeAllTweens():Boolean{
var _local1:Boolean;
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local1 = false;
_local2 = 0;
while (_local2 < _tweenList.length) {
removeTweenByIndex(_local2);
_local1 = true;
_local2++;
};
return (_local1);
}
public static function addTween(_arg1:Object=null, _arg2:Object=null):Boolean{
var _local4:Number;
var _local5:Number;
var _local6:String;
var _local7:Array;
var _local8:Object;
var _local9:Number;
var _local10:Number;
var _local11:Array;
var _local12:Object;
var _local13:Object;
var _local14:Function;
var _local15:Object;
var _local16:TweenListObj;
var _local17:Number;
var _local18:Array;
var _local19:Array;
var _local20:Array;
var _local21:String;
if (!Boolean(_arg1)){
return (false);
};
if ((_arg1 is Array)){
_local7 = _arg1.concat();
} else {
_local7 = [_arg1];
};
_local8 = TweenListObj.makePropertiesChain(arguments[(arguments.length - 1)]);
if (!_inited){
init();
};
if (((!(_engineExists)) || (!(Boolean(__tweener_controller__))))){
startEngine();
};
_local9 = (isNaN(_local8.time)) ? 0 : _local8.time;
_local10 = (isNaN(_local8.delay)) ? 0 : _local8.delay;
_local11 = new Array();
_local12 = {time:true, delay:true, useFrames:true, skipUpdates:true, transition:true, transitionParams:true, onStart:true, onUpdate:true, onComplete:true, onOverwrite:true, onError:true, rounded:true, onStartParams:true, onUpdateParams:true, onCompleteParams:true, onOverwriteParams:true, onStartScope:true, onUpdateScope:true, onCompleteScope:true, onOverwriteScope:true, onErrorScope:true};
_local13 = new Object();
for (_local6 in _local8) {
if (!_local12[_local6]){
if (_specialPropertySplitterList[_local6]){
_local18 = _specialPropertySplitterList[_local6].splitValues(_local8[_local6], _specialPropertySplitterList[_local6].parameters);
_local4 = 0;
while (_local4 < _local18.length) {
if (_specialPropertySplitterList[_local18[_local4].name]){
_local19 = _specialPropertySplitterList[_local18[_local4].name].splitValues(_local18[_local4].value, _specialPropertySplitterList[_local18[_local4].name].parameters);
_local5 = 0;
while (_local5 < _local19.length) {
_local11[_local19[_local5].name] = {valueStart:undefined, valueComplete:_local19[_local5].value, arrayIndex:_local19[_local5].arrayIndex, isSpecialProperty:false};
_local5++;
};
} else {
_local11[_local18[_local4].name] = {valueStart:undefined, valueComplete:_local18[_local4].value, arrayIndex:_local18[_local4].arrayIndex, isSpecialProperty:false};
};
_local4++;
};
} else {
if (_specialPropertyModifierList[_local6] != undefined){
_local20 = _specialPropertyModifierList[_local6].modifyValues(_local8[_local6]);
_local4 = 0;
while (_local4 < _local20.length) {
_local13[_local20[_local4].name] = {modifierParameters:_local20[_local4].parameters, modifierFunction:_specialPropertyModifierList[_local6].getValue};
_local4++;
};
} else {
_local11[_local6] = {valueStart:undefined, valueComplete:_local8[_local6]};
};
};
};
};
for (_local6 in _local11) {
if (_specialPropertyList[_local6] != undefined){
_local11[_local6].isSpecialProperty = true;
} else {
if (_local7[0][_local6] == undefined){
printError((((("The property '" + _local6) + "' doesn't seem to be a normal object property of ") + String(_local7[0])) + " or a registered special property."));
};
};
};
for (_local6 in _local13) {
if (_local11[_local6] != undefined){
_local11[_local6].modifierParameters = _local13[_local6].modifierParameters;
_local11[_local6].modifierFunction = _local13[_local6].modifierFunction;
};
};
if (typeof(_local8.transition) == "string"){
_local21 = _local8.transition.toLowerCase();
_local14 = _transitionList[_local21];
} else {
_local14 = _local8.transition;
};
if (!Boolean(_local14)){
_local14 = _transitionList["easeoutexpo"];
};
_local4 = 0;
while (_local4 < _local7.length) {
_local15 = new Object();
for (_local6 in _local11) {
_local15[_local6] = new PropertyInfoObj(_local11[_local6].valueStart, _local11[_local6].valueComplete, _local11[_local6].valueComplete, _local11[_local6].arrayIndex, {}, _local11[_local6].isSpecialProperty, _local11[_local6].modifierFunction, _local11[_local6].modifierParameters);
};
if (_local8.useFrames == true){
_local16 = new TweenListObj(_local7[_local4], (_currentTimeFrame + (_local10 / _timeScale)), (_currentTimeFrame + ((_local10 + _local9) / _timeScale)), true, _local14, _local8.transitionParams);
} else {
_local16 = new TweenListObj(_local7[_local4], (_currentTime + ((_local10 * 1000) / _timeScale)), (_currentTime + (((_local10 * 1000) + (_local9 * 1000)) / _timeScale)), false, _local14, _local8.transitionParams);
};
_local16.properties = _local15;
_local16.onStart = _local8.onStart;
_local16.onUpdate = _local8.onUpdate;
_local16.onComplete = _local8.onComplete;
_local16.onOverwrite = _local8.onOverwrite;
_local16.onError = _local8.onError;
_local16.onStartParams = _local8.onStartParams;
_local16.onUpdateParams = _local8.onUpdateParams;
_local16.onCompleteParams = _local8.onCompleteParams;
_local16.onOverwriteParams = _local8.onOverwriteParams;
_local16.onStartScope = _local8.onStartScope;
_local16.onUpdateScope = _local8.onUpdateScope;
_local16.onCompleteScope = _local8.onCompleteScope;
_local16.onOverwriteScope = _local8.onOverwriteScope;
_local16.onErrorScope = _local8.onErrorScope;
_local16.rounded = _local8.rounded;
_local16.skipUpdates = _local8.skipUpdates;
removeTweensByTime(_local16.scope, _local16.properties, _local16.timeStart, _local16.timeComplete);
_tweenList.push(_local16);
if ((((_local9 == 0)) && ((_local10 == 0)))){
_local17 = (_tweenList.length - 1);
updateTweenByIndex(_local17);
removeTweenByIndex(_local17);
};
_local4++;
};
return (true);
}
public static function registerTransition(_arg1:String, _arg2:Function):void{
if (!_inited){
init();
};
_transitionList[_arg1] = _arg2;
}
public static function printError(_arg1:String):void{
trace(("## [Tweener] Error: " + _arg1));
}
private static function affectTweens(_arg1:Function, _arg2:Object, _arg3:Array):Boolean{
var _local4:Boolean;
var _local5:uint;
var _local6:Array;
var _local7:uint;
var _local8:uint;
var _local9:uint;
_local4 = false;
if (!Boolean(_tweenList)){
return (false);
};
_local5 = 0;
while (_local5 < _tweenList.length) {
if (((_tweenList[_local5]) && ((_tweenList[_local5].scope == _arg2)))){
if (_arg3.length == 0){
_arg1(_local5);
_local4 = true;
} else {
_local6 = new Array();
_local7 = 0;
while (_local7 < _arg3.length) {
if (Boolean(_tweenList[_local5].properties[_arg3[_local7]])){
_local6.push(_arg3[_local7]);
};
_local7++;
};
if (_local6.length > 0){
_local8 = AuxFunctions.getObjectLength(_tweenList[_local5].properties);
if (_local8 == _local6.length){
_arg1(_local5);
_local4 = true;
} else {
_local9 = splitTweens(_local5, _local6);
_arg1(_local9);
_local4 = true;
};
};
};
};
_local5++;
};
return (_local4);
}
public static function getTweens(_arg1:Object):Array{
var _local2:uint;
var _local3:String;
var _local4:Array;
if (!Boolean(_tweenList)){
return ([]);
};
_local4 = new Array();
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
for (_local3 in _tweenList[_local2].properties) {
_local4.push(_local3);
};
};
_local2++;
};
return (_local4);
}
public static function isTweening(_arg1:Object):Boolean{
var _local2:uint;
if (!Boolean(_tweenList)){
return (false);
};
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
return (true);
};
_local2++;
};
return (false);
}
public static function pauseTweenByIndex(_arg1:Number):Boolean{
var _local2:TweenListObj;
_local2 = _tweenList[_arg1];
if ((((_local2 == null)) || (_local2.isPaused))){
return (false);
};
_local2.timePaused = getCurrentTweeningTime(_local2);
_local2.isPaused = true;
return (true);
}
public static function getCurrentTweeningTime(_arg1:Object):Number{
return ((_arg1.useFrames) ? _currentTimeFrame : _currentTime);
}
public static function getTweenCount(_arg1:Object):Number{
var _local2:uint;
var _local3:Number;
if (!Boolean(_tweenList)){
return (0);
};
_local3 = 0;
_local2 = 0;
while (_local2 < _tweenList.length) {
if (((Boolean(_tweenList[_local2])) && ((_tweenList[_local2].scope == _arg1)))){
_local3 = (_local3 + AuxFunctions.getObjectLength(_tweenList[_local2].properties));
};
_local2++;
};
return (_local3);
}
private static function stopEngine():void{
_engineExists = false;
_tweenList = null;
_currentTime = 0;
_currentTimeFrame = 0;
__tweener_controller__.removeEventListener(Event.ENTER_FRAME, Tweener.onEnterFrame);
__tweener_controller__ = null;
}
public static function removeTweensByTime(_arg1:Object, _arg2:Object, _arg3:Number, _arg4:Number):Boolean{
var removed:Boolean;
var removedLocally:Boolean;
var i:uint;
var tl:uint;
var pName:String;
var eventScope:Object;
var p_scope = _arg1;
var p_properties = _arg2;
var p_timeStart = _arg3;
var p_timeComplete = _arg4;
removed = false;
tl = _tweenList.length;
i = 0;
while (i < tl) {
if (((Boolean(_tweenList[i])) && ((p_scope == _tweenList[i].scope)))){
if ((((p_timeComplete > _tweenList[i].timeStart)) && ((p_timeStart < _tweenList[i].timeComplete)))){
removedLocally = false;
for (pName in _tweenList[i].properties) {
if (Boolean(p_properties[pName])){
if (Boolean(_tweenList[i].onOverwrite)){
eventScope = (Boolean(_tweenList[i].onOverwriteScope)) ? _tweenList[i].onOverwriteScope : _tweenList[i].scope;
try {
_tweenList[i].onOverwrite.apply(eventScope, _tweenList[i].onOverwriteParams);
} catch(e:Error) {
handleError(_tweenList[i], e, "onOverwrite");
};
};
_tweenList[i].properties[pName] = undefined;
delete _tweenList[i].properties[pName];
removedLocally = true;
removed = true;
};
};
if (removedLocally){
if (AuxFunctions.getObjectLength(_tweenList[i].properties) == 0){
removeTweenByIndex(i);
};
};
};
};
i = (i + 1);
};
return (removed);
}
public static function registerSpecialPropertySplitter(_arg1:String, _arg2:Function, _arg3:Array=null):void{
var _local4:SpecialPropertySplitter;
if (!_inited){
init();
};
_local4 = new SpecialPropertySplitter(_arg2, _arg3);
_specialPropertySplitterList[_arg1] = _local4;
}
public static function removeTweenByIndex(_arg1:Number, _arg2:Boolean=false):Boolean{
_tweenList[_arg1] = null;
if (_arg2){
_tweenList.splice(_arg1, 1);
};
return (true);
}
public static function resumeTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(resumeTweenByIndex, _arg1, _local3));
}
public static function pauseTweens(_arg1:Object, ... _args):Boolean{
var _local3:Array;
var _local4:uint;
_local3 = new Array();
_local4 = 0;
while (_local4 < _args.length) {
if ((((typeof(_args[_local4]) == "string")) && (!(AuxFunctions.isInArray(_args[_local4], _local3))))){
_local3.push(_args[_local4]);
};
_local4++;
};
return (affectTweens(pauseTweenByIndex, _arg1, _local3));
}
}
}//package caurina.transitions
Section 10
//TweenListObj (caurina.transitions.TweenListObj)
package caurina.transitions {
public class TweenListObj {
public var onUpdate:Function;
public var useFrames:Boolean;
public var hasStarted:Boolean;
public var onOverwriteParams:Array;
public var timeStart:Number;
public var count:Number;
public var timeComplete:Number;
public var onStartParams:Array;
public var onUpdateScope:Object;
public var rounded:Boolean;
public var onUpdateParams:Array;
public var properties:Object;
public var onComplete:Function;
public var transitionParams:Object;
public var updatesSkipped:Number;
public var onStart:Function;
public var onOverwriteScope:Object;
public var skipUpdates:Number;
public var onStartScope:Object;
public var scope:Object;
public var transition:Function;
public var timePaused:Number;
public var onCompleteParams:Array;
public var timesCalled:Number;
public var isCaller:Boolean;
public var onError:Function;
public var onErrorScope:Object;
public var onOverwrite:Function;
public var isPaused:Boolean;
public var waitFrames:Boolean;
public var onCompleteScope:Object;
public function TweenListObj(_arg1:Object, _arg2:Number, _arg3:Number, _arg4:Boolean, _arg5:Function, _arg6:Object){
scope = _arg1;
timeStart = _arg2;
timeComplete = _arg3;
useFrames = _arg4;
transition = _arg5;
transitionParams = _arg6;
properties = new Object();
isPaused = false;
timePaused = undefined;
isCaller = false;
updatesSkipped = 0;
timesCalled = 0;
skipUpdates = 0;
hasStarted = false;
}
public function clone(_arg1:Boolean):TweenListObj{
var _local2:TweenListObj;
var _local3:String;
_local2 = new TweenListObj(scope, timeStart, timeComplete, useFrames, transition, transitionParams);
_local2.properties = new Array();
for (_local3 in properties) {
_local2.properties[_local3] = properties[_local3].clone();
};
_local2.skipUpdates = skipUpdates;
_local2.updatesSkipped = updatesSkipped;
if (!_arg1){
_local2.onStart = onStart;
_local2.onUpdate = onUpdate;
_local2.onComplete = onComplete;
_local2.onOverwrite = onOverwrite;
_local2.onError = onError;
_local2.onStartParams = onStartParams;
_local2.onUpdateParams = onUpdateParams;
_local2.onCompleteParams = onCompleteParams;
_local2.onOverwriteParams = onOverwriteParams;
_local2.onStartScope = onStartScope;
_local2.onUpdateScope = onUpdateScope;
_local2.onCompleteScope = onCompleteScope;
_local2.onOverwriteScope = onOverwriteScope;
_local2.onErrorScope = onErrorScope;
};
_local2.rounded = rounded;
_local2.isPaused = isPaused;
_local2.timePaused = timePaused;
_local2.isCaller = isCaller;
_local2.count = count;
_local2.timesCalled = timesCalled;
_local2.waitFrames = waitFrames;
_local2.hasStarted = hasStarted;
return (_local2);
}
public function toString():String{
var _local1:String;
var _local2:Boolean;
var _local3:String;
_local1 = "\n[TweenListObj ";
_local1 = (_local1 + ("scope:" + String(scope)));
_local1 = (_local1 + ", properties:");
_local2 = true;
for (_local3 in properties) {
if (!_local2){
_local1 = (_local1 + ",");
};
_local1 = (_local1 + ("[name:" + properties[_local3].name));
_local1 = (_local1 + (",valueStart:" + properties[_local3].valueStart));
_local1 = (_local1 + (",valueComplete:" + properties[_local3].valueComplete));
_local1 = (_local1 + "]");
_local2 = false;
};
_local1 = (_local1 + (", timeStart:" + String(timeStart)));
_local1 = (_local1 + (", timeComplete:" + String(timeComplete)));
_local1 = (_local1 + (", useFrames:" + String(useFrames)));
_local1 = (_local1 + (", transition:" + String(transition)));
_local1 = (_local1 + (", transitionParams:" + String(transitionParams)));
if (skipUpdates){
_local1 = (_local1 + (", skipUpdates:" + String(skipUpdates)));
};
if (updatesSkipped){
_local1 = (_local1 + (", updatesSkipped:" + String(updatesSkipped)));
};
if (Boolean(onStart)){
_local1 = (_local1 + (", onStart:" + String(onStart)));
};
if (Boolean(onUpdate)){
_local1 = (_local1 + (", onUpdate:" + String(onUpdate)));
};
if (Boolean(onComplete)){
_local1 = (_local1 + (", onComplete:" + String(onComplete)));
};
if (Boolean(onOverwrite)){
_local1 = (_local1 + (", onOverwrite:" + String(onOverwrite)));
};
if (Boolean(onError)){
_local1 = (_local1 + (", onError:" + String(onError)));
};
if (onStartParams){
_local1 = (_local1 + (", onStartParams:" + String(onStartParams)));
};
if (onUpdateParams){
_local1 = (_local1 + (", onUpdateParams:" + String(onUpdateParams)));
};
if (onCompleteParams){
_local1 = (_local1 + (", onCompleteParams:" + String(onCompleteParams)));
};
if (onOverwriteParams){
_local1 = (_local1 + (", onOverwriteParams:" + String(onOverwriteParams)));
};
if (onStartScope){
_local1 = (_local1 + (", onStartScope:" + String(onStartScope)));
};
if (onUpdateScope){
_local1 = (_local1 + (", onUpdateScope:" + String(onUpdateScope)));
};
if (onCompleteScope){
_local1 = (_local1 + (", onCompleteScope:" + String(onCompleteScope)));
};
if (onOverwriteScope){
_local1 = (_local1 + (", onOverwriteScope:" + String(onOverwriteScope)));
};
if (onErrorScope){
_local1 = (_local1 + (", onErrorScope:" + String(onErrorScope)));
};
if (rounded){
_local1 = (_local1 + (", rounded:" + String(rounded)));
};
if (isPaused){
_local1 = (_local1 + (", isPaused:" + String(isPaused)));
};
if (timePaused){
_local1 = (_local1 + (", timePaused:" + String(timePaused)));
};
if (isCaller){
_local1 = (_local1 + (", isCaller:" + String(isCaller)));
};
if (count){
_local1 = (_local1 + (", count:" + String(count)));
};
if (timesCalled){
_local1 = (_local1 + (", timesCalled:" + String(timesCalled)));
};
if (waitFrames){
_local1 = (_local1 + (", waitFrames:" + String(waitFrames)));
};
if (hasStarted){
_local1 = (_local1 + (", hasStarted:" + String(hasStarted)));
};
_local1 = (_local1 + "]\n");
return (_local1);
}
public static function makePropertiesChain(_arg1:Object):Object{
var _local2:Object;
var _local3:Object;
var _local4:Object;
var _local5:Object;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local2 = _arg1.base;
if (_local2){
_local3 = {};
if ((_local2 is Array)){
_local4 = [];
_local8 = 0;
while (_local8 < _local2.length) {
_local4.push(_local2[_local8]);
_local8++;
};
} else {
_local4 = [_local2];
};
_local4.push(_arg1);
_local6 = _local4.length;
_local7 = 0;
while (_local7 < _local6) {
if (_local4[_local7]["base"]){
_local5 = AuxFunctions.concatObjects(makePropertiesChain(_local4[_local7]["base"]), _local4[_local7]);
} else {
_local5 = _local4[_local7];
};
_local3 = AuxFunctions.concatObjects(_local3, _local5);
_local7++;
};
if (_local3["base"]){
delete _local3["base"];
};
return (_local3);
//unresolved jump
};
return (_arg1);
}
}
}//package caurina.transitions
Section 11
//DebugDispatcher (com.blitzagency.xray.logger.events.DebugDispatcher)
package com.blitzagency.xray.logger.events {
import flash.events.*;
public class DebugDispatcher extends EventDispatcher {
public static var TRACE:String = "trace";
public function sendEvent(_arg1:String, _arg2:Object):void{
dispatchEvent(new DebugEvent(DebugDispatcher.TRACE, false, false, _arg2));
}
}
}//package com.blitzagency.xray.logger.events
Section 12
//DebugEvent (com.blitzagency.xray.logger.events.DebugEvent)
package com.blitzagency.xray.logger.events {
import flash.events.*;
public class DebugEvent extends Event {
public var obj:Object;
public function DebugEvent(_arg1:String, _arg2:Boolean, _arg3:Boolean, _arg4:Object):void{
obj = new Object();
super(_arg1, _arg2, _arg3);
obj = _arg4;
}
}
}//package com.blitzagency.xray.logger.events
Section 13
//ObjectTools (com.blitzagency.xray.logger.util.ObjectTools)
package com.blitzagency.xray.logger.util {
import flash.utils.*;
public class ObjectTools {
public function resolveBaseType(_arg1:Object):String{
return ("");
}
public static function getFullClassPath(_arg1:Object):String{
var _local2:Array;
var _local3:String;
_local2 = [];
_local3 = getQualifiedClassName(_arg1);
_local3 = ((_local3.indexOf("::") > -1)) ? _local3.split("::").join(".") : _local3;
_local2.push(_local3);
return (_local2.join("."));
}
public static function getImmediateClassPath(_arg1:Object):String{
var _local2:String;
var _local3:String;
_local2 = getQualifiedClassName(_arg1);
_local3 = getQualifiedSuperclassName(_arg1);
_local2 = ((_local2.indexOf("::") > -1)) ? _local2.split("::").join(".") : _local2;
if (_local3 == null){
return (_local2);
};
_local3 = ((_local3.indexOf("::") > -1)) ? _local3.split("::").join(".") : _local3;
return (((_local3 + ".") + _local2));
}
}
}//package com.blitzagency.xray.logger.util
Section 14
//PropertyTools (com.blitzagency.xray.logger.util.PropertyTools)
package com.blitzagency.xray.logger.util {
import flash.utils.*;
public class PropertyTools {
private static function getVariables():void{
}
public static function getProperties(_arg1:Object):Array{
var ary:Array;
var xmlDoc:XML;
var item:XML;
var name:String;
var type:String;
var value:Object;
var obj = _arg1;
ary = [];
try {
xmlDoc = describeType(obj);
for each (item in xmlDoc.variable) {
name = item.@name.toString();
type = item.@type.toString();
value = ((obj[name])!=null) ? obj[name] : "";
ary.push({name:name, type:type, value:value});
};
} catch(e:Error) {
};
return (ary);
}
private static function getMethods():void{
}
}
}//package com.blitzagency.xray.logger.util
Section 15
//Debug (com.blitzagency.xray.logger.Debug)
package com.blitzagency.xray.logger {
import flash.events.*;
import flash.utils.*;
import com.blitzagency.xray.logger.events.*;
import flash.net.*;
public class Debug {
private static var connected:Boolean = false;
private static var xrayLC:LocalConnection;
private static var ed:DebugDispatcher = new DebugDispatcher();
public static function traceObject(_arg1:Object, _arg2:Number=254, _arg3:Number=0, _arg4:String="", _arg5:Number=0):void{
var recurseDepth:Number;
var indent:Number;
var prop:String;
var lead:String;
var i:Number;
var obj:String;
var o = _arg1;
var pRecurseDepth = _arg2;
var pIndent = _arg3;
var pPackage = _arg4;
var pLevel = _arg5;
try {
recurseDepth = pRecurseDepth;
indent = pIndent;
for (prop in o) {
lead = "";
i = 0;
while (i < indent) {
lead = (lead + " ");
i = (i + 1);
};
obj = o[prop].toString();
if ((o[prop] is Array)){
obj = "[Array]";
};
if (obj == "[object Object]"){
obj = "[Object]";
};
Debug.trace((((lead + prop) + ": ") + obj), pPackage, pLevel);
if (recurseDepth > 0){
Debug.traceObject(o[prop], (recurseDepth - 1), (indent + 1), pPackage, pLevel);
};
};
} catch(e:Error) {
};
}
public static function trace(_arg1:Object, _arg2:String="", _arg3:Number=0):void{
var pMsg = _arg1;
var pPackage = _arg2;
var pLevel = _arg3;
ed.sendEvent(DebugDispatcher.TRACE, {message:pMsg, classPackage:pPackage});
if (!connected){
makeConnection();
};
if (connected){
try {
xrayLC.send("_xray_view_conn", "setTrace", pMsg, pLevel, pPackage);
} catch(e:LogError) {
LogError("No Xray Interface running");
};
};
}
private static function makeConnection():void{
var err:LogError;
xrayLC = new LocalConnection();
xrayLC.addEventListener("status", statusHandler);
xrayLC.allowDomain("*");
try {
xrayLC.connect(("_xray_standAlone_debug" + getTimer()));
connected = true;
} catch(e:Error) {
err = new LogError("log");
xrayLC.close();
setTimeout(makeConnection, 1000);
};
}
public static function addEventListener(_arg1:String, _arg2:Function):void{
ed.addEventListener(_arg1, _arg2);
}
private static function initialize():Boolean{
ed = new DebugDispatcher();
return (true);
}
private static function statusHandler(_arg1:StatusEvent):void{
if ((((((_arg1.code == null)) && ((_arg1.level == "error")))) && (connected))){
connected = false;
} else {
if ((((_arg1.level == "status")) && ((_arg1.code == null)))){
connected = true;
};
};
}
}
}//package com.blitzagency.xray.logger
class LogError extends Error {
private function LogError(_arg1:String){
super(_arg1);
}
}
Section 16
//Log (com.blitzagency.xray.logger.Log)
package com.blitzagency.xray.logger {
import com.blitzagency.xray.logger.util.*;
public class Log {
private var level:Number;
private var caller:String;// = ""
private var classPackage:String;
private var dump:Object;
private var message:String;
public function Log(_arg1:String, _arg2:Object, _arg3:Number, ... _args){
var err:LogError;
var nullArray:Array;
var str:String;
var p_message = _arg1;
var p_dump = _arg2;
var p_level = _arg3;
var rest = _args;
caller = "";
super();
try {
nullArray.push("bogus");
} catch(e:Error) {
err = new LogError("log");
} finally {
if (err.hasOwnProperty("getStackTrace")){
str = err.getStackTrace();
setCaller(resolveCaller(str));
} else {
setCaller("");
};
setMessage(p_message);
setDump(p_dump);
setLevel(p_level);
setClassPackage(p_dump);
};
}
public function setLevel(_arg1:Number):void{
level = _arg1;
}
public function getCaller():String{
return (caller);
}
public function setMessage(_arg1:String):void{
message = _arg1;
}
public function getLevel():Number{
return (level);
}
public function getDump():Object{
return (dump);
}
public function setCaller(_arg1:String):void{
caller = _arg1;
}
public function setClassPackage(_arg1:Object):void{
classPackage = ObjectTools.getImmediateClassPath(_arg1);
}
public function getMessage():String{
return (message);
}
public function getClassPackage():String{
return (classPackage);
}
public function setDump(_arg1:Object):void{
dump = _arg1;
}
private function resolveCaller(_arg1:String):String{
var ary:Array;
var str = _arg1;
ary = [];
try {
str = str.split("\n").join("");
ary = str.split("\tat ");
str = ary[3];
} catch(e:Error) {
} finally {
str = "";
};
return (str);
}
}
}//package com.blitzagency.xray.logger
class LogError extends Error {
private function LogError(_arg1:String){
super(_arg1);
}
}
Section 17
//Logger (com.blitzagency.xray.logger.Logger)
package com.blitzagency.xray.logger {
public interface Logger {
function setLevel(_arg1:Number=0):void;
function debug(_arg1:Log):void;
function fatal(_arg1:Log):void;
function warn(_arg1:Log):void;
function error(_arg1:Log):void;
function log(_arg1:String, _arg2:Object, _arg3:String, _arg4:String, _arg5:Number):void;
function info(_arg1:Log):void;
}
}//package com.blitzagency.xray.logger
Section 18
//XrayLog (com.blitzagency.xray.logger.XrayLog)
package com.blitzagency.xray.logger {
public class XrayLog {
private var logger:XrayLogger;
public function XrayLog(){
logger = XrayLogger.getInstance();
}
public function debug(_arg1:String, _arg2=""):void{
logger.debug(new Log(_arg1, _arg2, XrayLogger.DEBUG));
}
public function fatal(_arg1:String, _arg2=""):void{
logger.fatal(new Log(_arg1, _arg2, XrayLogger.FATAL));
}
public function info(_arg1:String, _arg2=""):void{
logger.info(new Log(_arg1, _arg2, XrayLogger.INFO));
}
public function warn(_arg1:String, _arg2=""):void{
logger.warn(new Log(_arg1, _arg2, XrayLogger.WARN));
}
public function error(_arg1:String, _arg2=""):void{
logger.error(new Log(_arg1, _arg2, XrayLogger.ERROR));
}
}
}//package com.blitzagency.xray.logger
Section 19
//XrayLogger (com.blitzagency.xray.logger.XrayLogger)
package com.blitzagency.xray.logger {
import flash.events.*;
import flash.utils.*;
import com.blitzagency.xray.logger.util.*;
public class XrayLogger extends EventDispatcher implements Logger {
private var displayObjectRecursionDepth:Number;// = 3
private var level:Number;// = 0
private var indentation:Number;// = 0
private var objectRecursionDepth:Number;// = 254
private var filters:Array;
public static var FATAL:Number = 4;
public static var WARN:Number = 2;
public static var ERROR:Number = 3;
public static var INFO:Number = 1;
public static var DEBUG:Number = 0;
private static var _instance:XrayLogger = null;
public static var NONE:Number = 5;
public function XrayLogger(){
level = 0;
displayObjectRecursionDepth = 3;
objectRecursionDepth = 254;
indentation = 0;
filters = [];
super();
}
public function checkFilters():Boolean{
var _local1:uint;
if (filters.length == 0){
return (true);
};
_local1 = 0;
while (_local1 < filters.length) {
_local1++;
};
return (true);
}
public function debug(_arg1:Log):void{
if (_arg1.getLevel() == level){
log(_arg1.getMessage(), _arg1.getDump(), _arg1.getCaller(), _arg1.getClassPackage(), 0);
};
}
public function setIndentation(_arg1:Number=0):void{
indentation = _arg1;
}
public function error(_arg1:Log):void{
if (_arg1.getLevel() >= level){
log(_arg1.getMessage(), _arg1.getDump(), _arg1.getCaller(), _arg1.getClassPackage(), 3);
};
}
public function setLevel(_arg1:Number=0):void{
level = _arg1;
}
public function fatal(_arg1:Log):void{
if (_arg1.getLevel() >= level){
log(_arg1.getMessage(), _arg1.getDump(), _arg1.getCaller(), _arg1.getClassPackage(), 4);
};
}
public function warn(_arg1:Log):void{
if (_arg1.getLevel() >= level){
log(_arg1.getMessage(), _arg1.getDump(), _arg1.getCaller(), _arg1.getClassPackage(), 2);
};
}
public function setObjectRecursionDepth(_arg1:Number):void{
objectRecursionDepth = _arg1;
}
public function setDisplayClipRecursionDepth(_arg1:Number):void{
displayObjectRecursionDepth = _arg1;
}
public function info(_arg1:Log):void{
if (_arg1.getLevel() >= level){
log(_arg1.getMessage(), _arg1.getDump(), _arg1.getCaller(), _arg1.getClassPackage(), 1);
};
}
public function log(_arg1:String, _arg2:Object, _arg3:String, _arg4:String, _arg5:Number):void{
var _local6:String;
var _local7:String;
var _local8:String;
var _local9:Object;
_local6 = (("(" + getTimer()) + ") ");
if (_arg4.length > 0){
_local6 = (_local6 + (_arg3 + "\n"));
};
_local6 = (_local6 + _arg1);
Debug.trace(_local6, _arg4, _arg5);
_local7 = typeof(_arg2);
if ((((((((((_local7 == "string")) || ((_local7 == "number")))) || ((_local7 == "boolean")))) || ((_local7 == "undefined")))) || ((_local7 == "null")))){
Debug.trace(_arg2, _arg4, _arg5);
} else {
if (_local7 == "xml"){
Debug.trace(_arg2.toString(), _arg4, _arg5);
} else {
_local8 = ObjectTools.getImmediateClassPath(_arg2);
if ((((_local8 == "Object")) || ((_local8 == "Object.Array")))){
Debug.traceObject(_arg2, objectRecursionDepth, indentation, _arg4, _arg5);
} else {
_local9 = PropertyTools.getProperties(_arg2);
Debug.traceObject(_local9, displayObjectRecursionDepth, indentation, _arg4, _arg5);
};
};
};
}
public function setFilters(_arg1:Array):void{
filters = _arg1;
}
public static function getInstance():XrayLogger{
if (_instance == null){
_instance = new (XrayLogger);
};
return (_instance);
}
public static function resolveLevelAsName(_arg1:Number):String{
switch (_arg1){
case 0:
return ("debug");
case 1:
return ("info");
case 2:
return ("warn");
case 3:
return ("error");
case 4:
return ("fatal");
default:
return ("debug");
};
}
}
}//package com.blitzagency.xray.logger
Section 20
//VLTracer (jp.co.digitalforest.visionalist.VL51.VLTracer)
package jp.co.digitalforest.visionalist.VL51 {
import flash.net.*;
import flash.external.*;
public final class VLTracer {
public static function sendRequest(_arg1:String, _arg2:String="", _arg3:String=""):void{
var _local4:URLRequest;
if (ExternalInterface.available){
ExternalInterface.call("VL_Send", _arg1, _arg2, _arg3);
} else {
_local4 = new URLRequest((((((("javascript:VL_Send('" + _arg1) + "','") + _arg2) + "','") + _arg3) + "');"));
navigateToURL(_local4, "_self");
};
}
}
}//package jp.co.digitalforest.visionalist.VL51
Section 21
//Camera3D (org.papervision3d.cameras.Camera3D)
package org.papervision3d.cameras {
import org.papervision3d.core.proto.*;
import org.papervision3d.core.*;
import org.papervision3d.objects.*;
public class Camera3D extends CameraObject3D {
public var goto:Number3D;
public var target:DisplayObject3D;
public function Camera3D(_arg1:DisplayObject3D=null, _arg2:Number=2, _arg3:Number=100, _arg4:Object=null){
super(_arg2, _arg3, _arg4);
this.target = ((_arg1) || (DisplayObject3D.ZERO));
this.goto = new Number3D(this.x, this.y, this.z);
}
override public function transformView(_arg1:Matrix3D=null):void{
this.lookAt(this.target);
super.transformView();
}
public function hover(_arg1:Number, _arg2:Number, _arg3:Number):void{
var _local4:DisplayObject3D;
var _local5:Number3D;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
_local4 = this.target;
_local5 = this.goto;
_local6 = 8;
switch (_arg1){
case 0:
_local7 = (_local5.x - _local4.x);
_local8 = (_local5.z - _local4.z);
_local9 = Math.atan2(_local8, _local7);
_local10 = Math.sqrt(((_local7 * _local7) + (_local8 * _local8)));
_local11 = (0.5 * _arg2);
_local12 = (_local10 * Math.cos((_local9 - _local11)));
_local13 = (_local10 * Math.sin((_local9 - _local11)));
_local14 = (_local5.y - (300 * _arg3));
this.x = (this.x - ((this.x - _local12) / _local6));
this.y = (this.y - ((this.y - _local14) / _local6));
this.z = (this.z - ((this.z - _local13) / _local6));
break;
case 1:
this.x = (this.x - ((this.x - (1000 * _arg2)) / _local6));
this.y = (this.y - ((this.y - (1000 * _arg3)) / _local6));
break;
};
}
}
}//package org.papervision3d.cameras
Section 22
//Face3D (org.papervision3d.core.geom.Face3D)
package org.papervision3d.core.geom {
import org.papervision3d.core.proto.*;
import org.papervision3d.core.*;
import org.papervision3d.objects.*;
import flash.display.*;
import flash.utils.*;
import org.papervision3d.*;
import flash.geom.*;
public class Face3D {
public var vertices:Array;
public var uv:Array;
public var materialName:String;
public var screenZ:Number;
public var visible:Boolean;
public var id:Number;
private static var _totalFaces:Number = 0;
private static var _bitmapMatrix:Matrix;
public function Face3D(_arg1:Array, _arg2:String=null, _arg3:Array=null){
this.vertices = _arg1;
this.materialName = _arg2;
this.uv = _arg3;
this.id = _totalFaces++;
if (!_bitmapMatrix){
_bitmapMatrix = new Matrix();
};
}
public function transformUV(_arg1:DisplayObject3D=null):Object{
var _local2:MaterialObject3D;
var _local3:Array;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Number;
var _local16:Matrix;
var _local17:Object;
_local2 = (((this.materialName) && (_arg1.materials))) ? _arg1.materials.materialsByName[this.materialName] : _arg1.material;
if (!this.uv){
Papervision3D.log("Face3D: transformUV() uv not found!");
} else {
if (((_local2) && (_local2.bitmap))){
_local3 = this.uv;
_local4 = _local2.bitmap.width;
_local5 = _local2.bitmap.height;
_local6 = (_local4 * _local3[0].u);
_local7 = (_local5 * (1 - _local3[0].v));
_local8 = (_local4 * _local3[1].u);
_local9 = (_local5 * (1 - _local3[1].v));
_local10 = (_local4 * _local3[2].u);
_local11 = (_local5 * (1 - _local3[2].v));
if ((((((_local6 == _local8)) && ((_local7 == _local9)))) || ((((_local6 == _local10)) && ((_local7 == _local11)))))){
_local6 = (_local6 - ((_local6)>0.05) ? 0.05 : -0.05);
_local7 = (_local7 - ((_local7)>0.07) ? 0.07 : -0.07);
};
if ((((_local10 == _local8)) && ((_local11 == _local9)))){
_local10 = (_local10 - ((_local10)>0.05) ? 0.04 : -0.04);
_local11 = (_local11 - ((_local11)>0.06) ? 0.06 : -0.06);
};
_local12 = (_local8 - _local6);
_local13 = (_local9 - _local7);
_local14 = (_local10 - _local6);
_local15 = (_local11 - _local7);
_local16 = new Matrix(_local12, _local13, _local14, _local15, _local6, _local7);
_local16.invert();
_local17 = ((_arg1.projected[this]) || ((_arg1.projected[this] = new Object())));
_local17._a = _local16.a;
_local17._b = _local16.b;
_local17._c = _local16.c;
_local17._d = _local16.d;
_local17._tx = _local16.tx;
_local17._ty = _local16.ty;
} else {
Papervision3D.log("Face3D: transformUV() material.bitmap not found!");
};
};
return (_local17);
}
public function render(_arg1:DisplayObject3D, _arg2:Sprite):Number{
var _local3:Array;
var _local4:Dictionary;
var _local5:Vertex2D;
var _local6:Vertex2D;
var _local7:Vertex2D;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:MaterialObject3D;
var _local15:BitmapData;
var _local16:Number;
var _local17:Number;
var _local18:Graphics;
var _local19:Object;
var _local20:Number;
var _local21:Number;
var _local22:Number;
var _local23:Number;
var _local24:Number;
var _local25:Number;
var _local26:Number;
var _local27:Number;
var _local28:Number;
var _local29:Number;
var _local30:Matrix;
_local3 = this.vertices;
_local4 = _arg1.projected;
_local5 = _local4[_local3[0]];
_local6 = _local4[_local3[1]];
_local7 = _local4[_local3[2]];
_local8 = _local5.x;
_local9 = _local5.y;
_local10 = _local6.x;
_local11 = _local6.y;
_local12 = _local7.x;
_local13 = _local7.y;
_local14 = (((this.materialName) && (_arg1.materials))) ? _arg1.materials.materialsByName[this.materialName] : _arg1.material;
if (_local14.invisible){
return (0);
};
if (_local14.oneSide){
if (_local14.opposite){
if ((((_local12 - _local8) * (_local11 - _local9)) - ((_local13 - _local9) * (_local10 - _local8))) > 0){
return (0);
};
} else {
if ((((_local12 - _local8) * (_local11 - _local9)) - ((_local13 - _local9) * (_local10 - _local8))) < 0){
return (0);
};
};
};
_local15 = _local14.bitmap;
_local16 = _local14.fillAlpha;
_local17 = _local14.lineAlpha;
_local18 = _arg2.graphics;
if (_local15){
_local19 = ((_arg1.projected[this]) || (transformUV(_arg1)));
_local20 = _local19._a;
_local21 = _local19._b;
_local22 = _local19._c;
_local23 = _local19._d;
_local24 = _local19._tx;
_local25 = _local19._ty;
_local26 = (_local10 - _local8);
_local27 = (_local11 - _local9);
_local28 = (_local12 - _local8);
_local29 = (_local13 - _local9);
_local30 = _bitmapMatrix;
_local30.a = ((_local20 * _local26) + (_local21 * _local28));
_local30.b = ((_local20 * _local27) + (_local21 * _local29));
_local30.c = ((_local22 * _local26) + (_local23 * _local28));
_local30.d = ((_local22 * _local27) + (_local23 * _local29));
_local30.tx = (((_local24 * _local26) + (_local25 * _local28)) + _local8);
_local30.ty = (((_local24 * _local27) + (_local25 * _local29)) + _local9);
_local18.beginBitmapFill(_local15, _local30, false, _local14.smooth);
} else {
if (_local16){
_local18.beginFill(_local14.fillColor, _local16);
};
};
if (_local17){
_local18.lineStyle(0, _local14.lineColor, _local17);
} else {
_local18.lineStyle();
};
_local18.moveTo(_local8, _local9);
_local18.lineTo(_local10, _local11);
_local18.lineTo(_local12, _local13);
if (_local17){
_local18.lineTo(_local8, _local9);
};
if (((_local15) || (_local16))){
_local18.endFill();
};
return (1);
}
}
}//package org.papervision3d.core.geom
Section 23
//Mesh3D (org.papervision3d.core.geom.Mesh3D)
package org.papervision3d.core.geom {
import org.papervision3d.core.proto.*;
import org.papervision3d.core.*;
import org.papervision3d.objects.*;
import flash.utils.*;
public class Mesh3D extends Vertices3D {
public function Mesh3D(_arg1:MaterialObject3D, _arg2:Array, _arg3:Array, _arg4:String=null, _arg5:Object=null){
super(_arg2, _arg4, _arg5);
this.geometry.faces = ((_arg3) || (new Array()));
this.material = ((_arg1) || (MaterialObject3D.DEFAULT));
}
override public function project(_arg1:DisplayObject3D, _arg2:CameraObject3D, _arg3:Array=null):Number{
var _local4:Dictionary;
var _local5:Matrix3D;
var _local6:Array;
var _local7:Array;
var _local8:Number;
var _local9:Number;
var _local10:Vertex2D;
var _local11:Vertex2D;
var _local12:Vertex2D;
var _local13:Number;
var _local14:Object;
var _local15:Face3D;
var _local16:int;
super.project(_arg1, _arg2, _arg3);
if (!_arg3){
_arg3 = this._sorted;
};
_local4 = this.projected;
_local5 = this.view;
_local6 = this.geometry.faces;
_local7 = this.faces;
_local8 = 0;
_local9 = 0;
_local16 = 0;
while ((_local15 = _local6[_local16])) {
_local14 = ((_local7[_local16]) || ((_local7[_local16] = {})));
_local14.face = _local15;
_local14.instance = this;
_local10 = _local4[_local15.vertices[0]];
_local11 = _local4[_local15.vertices[1]];
_local12 = _local4[_local15.vertices[2]];
_local13 = ((Number(_local10.visible) + Number(_local11.visible)) + Number(_local12.visible));
_local14.visible = (_local13 == 3);
if (_local14.visible){
_local8 = (_local8 + (_local14.screenZ = (((_local10.z + _local11.z) + _local12.z) / 3)));
_local9++;
if (_arg3){
_arg3.push(_local14);
};
};
_local16++;
};
return ((this.screenZ = (_local8 / _local9)));
}
public function projectTexture(_arg1:String="x", _arg2:String="y"):void{
var _local3:Array;
var _local4:Object;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:MaterialObject3D;
var _local10:String;
var _local11:Face3D;
var _local12:Array;
var _local13:Vertex3D;
var _local14:Vertex3D;
var _local15:Vertex3D;
var _local16:NumberUV;
var _local17:NumberUV;
var _local18:NumberUV;
_local3 = this.geometry.faces;
_local4 = this.boundingBox();
_local5 = _local4.min[_arg1];
_local6 = _local4.size[_arg1];
_local7 = _local4.min[_arg2];
_local8 = _local4.size[_arg2];
_local9 = this.material;
for (_local10 in _local3) {
_local11 = _local3[Number(_local10)];
_local12 = _local11.vertices;
_local13 = _local12[0];
_local14 = _local12[1];
_local15 = _local12[2];
_local16 = new NumberUV(((_local13[_arg1] - _local5) / _local6), ((_local13[_arg2] - _local7) / _local8));
_local17 = new NumberUV(((_local14[_arg1] - _local5) / _local6), ((_local14[_arg2] - _local7) / _local8));
_local18 = new NumberUV(((_local15[_arg1] - _local5) / _local6), ((_local15[_arg2] - _local7) / _local8));
_local11.uv = [_local16, _local17, _local18];
};
}
}
}//package org.papervision3d.core.geom
Section 24
//Vertex2D (org.papervision3d.core.geom.Vertex2D)
package org.papervision3d.core.geom {
public class Vertex2D {
public var visible:Boolean;
public var extra:Object;
public var x:Number;
public var y:Number;
public var z:Number;
public function Vertex2D(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0){
this.x = _arg1;
this.y = _arg2;
this.z = _arg3;
this.visible = false;
}
}
}//package org.papervision3d.core.geom
Section 25
//Vertex3D (org.papervision3d.core.geom.Vertex3D)
package org.papervision3d.core.geom {
public class Vertex3D {
public var extra:Object;
public var x:Number;
public var y:Number;
public var z:Number;
public function Vertex3D(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0){
this.x = _arg1;
this.y = _arg2;
this.z = _arg3;
}
}
}//package org.papervision3d.core.geom
Section 26
//Vertices3D (org.papervision3d.core.geom.Vertices3D)
package org.papervision3d.core.geom {
import org.papervision3d.core.proto.*;
import org.papervision3d.core.*;
import org.papervision3d.objects.*;
import flash.utils.*;
import org.papervision3d.scenes.*;
public class Vertices3D extends DisplayObject3D {
public function Vertices3D(_arg1:Array, _arg2:String=null, _arg3:Object=null){
super(_arg2, new GeometryObject3D(), _arg3);
this.geometry.vertices = ((_arg1) || (new Array()));
}
override public function project(_arg1:DisplayObject3D, _arg2:CameraObject3D, _arg3:Array=null):Number{
var _local4:Dictionary;
var _local5:Matrix3D;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Array;
var _local16:int;
var _local17:Number;
var _local18:Number;
var _local19:Vertex3D;
var _local20:Vertex2D;
var _local21:Number;
var _local22:Number;
var _local23:Number;
var _local24:Number;
var _local25:Number;
var _local26:Number;
var _local27:Number;
super.project(_arg1, _arg2, _arg3);
_local4 = this.projected;
_local5 = this.view;
_local6 = _local5.n11;
_local7 = _local5.n12;
_local8 = _local5.n13;
_local9 = _local5.n21;
_local10 = _local5.n22;
_local11 = _local5.n23;
_local12 = _local5.n31;
_local13 = _local5.n32;
_local14 = _local5.n33;
_local15 = this.geometry.vertices;
_local16 = _local15.length;
_local17 = _arg2.focus;
_local18 = _arg2.zoom;
while ((_local19 = _local15[--_local16])) {
_local22 = _local19.x;
_local23 = _local19.y;
_local24 = _local19.z;
_local25 = ((((_local22 * _local6) + (_local23 * _local7)) + (_local24 * _local8)) + _local5.n14);
_local26 = ((((_local22 * _local9) + (_local23 * _local10)) + (_local24 * _local11)) + _local5.n24);
_local27 = ((((_local22 * _local12) + (_local23 * _local13)) + (_local24 * _local14)) + _local5.n34);
_local20 = ((_local4[_local19]) || ((_local4[_local19] = new Vertex2D())));
if ((_local20.visible = (_local27 > 0))){
_local21 = ((_local17 / (_local17 + _local27)) * _local18);
_local20.x = (_local25 * _local21);
_local20.y = (_local26 * _local21);
_local20.z = _local27;
};
};
return (0);
}
public function transformVertices(_arg1:Matrix3D):void{
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Array;
var _local15:int;
var _local16:Vertex3D;
var _local17:Number;
var _local18:Number;
var _local19:Number;
var _local20:Number;
var _local21:Number;
var _local22:Number;
_local2 = _arg1.n11;
_local3 = _arg1.n12;
_local4 = _arg1.n13;
_local5 = _arg1.n21;
_local6 = _arg1.n22;
_local7 = _arg1.n23;
_local8 = _arg1.n31;
_local9 = _arg1.n32;
_local10 = _arg1.n33;
_local11 = _arg1.n14;
_local12 = _arg1.n24;
_local13 = _arg1.n34;
_local14 = this.geometry.vertices;
_local15 = _local14.length;
while ((_local16 = _local14[--_local15])) {
_local17 = _local16.x;
_local18 = _local16.y;
_local19 = _local16.z;
_local20 = ((((_local17 * _local2) + (_local18 * _local3)) + (_local19 * _local4)) + _local11);
_local21 = ((((_local17 * _local5) + (_local18 * _local6)) + (_local19 * _local7)) + _local12);
_local22 = ((((_local17 * _local8) + (_local18 * _local9)) + (_local19 * _local10)) + _local13);
_local16.x = _local20;
_local16.y = _local21;
_local16.z = _local22;
};
}
public function boundingBox():Object{
var _local1:Object;
var _local2:Object;
var _local3:String;
var _local4:Vertex3D;
_local1 = this.geometry.vertices;
_local2 = new Object();
_local2.min = new Number3D();
_local2.max = new Number3D();
_local2.size = new Number3D();
for (_local3 in _local1) {
_local4 = _local1[Number(_local3)];
_local2.min.x = ((_local2.min.x)==undefined) ? _local4.x : Math.min(_local4.x, _local2.min.x);
_local2.max.x = ((_local2.max.x)==undefined) ? _local4.x : Math.max(_local4.x, _local2.max.x);
_local2.min.y = ((_local2.min.y)==undefined) ? _local4.y : Math.min(_local4.y, _local2.min.y);
_local2.max.y = ((_local2.max.y)==undefined) ? _local4.y : Math.max(_local4.y, _local2.max.y);
_local2.min.z = ((_local2.min.z)==undefined) ? _local4.z : Math.min(_local4.z, _local2.min.z);
_local2.max.z = ((_local2.max.z)==undefined) ? _local4.z : Math.max(_local4.z, _local2.max.z);
};
_local2.size.x = (_local2.max.x - _local2.min.x);
_local2.size.y = (_local2.max.y - _local2.min.y);
_local2.size.z = (_local2.max.z - _local2.min.z);
return (_local2);
}
}
}//package org.papervision3d.core.geom
Section 27
//CameraObject3D (org.papervision3d.core.proto.CameraObject3D)
package org.papervision3d.core.proto {
import org.papervision3d.core.*;
import org.papervision3d.objects.*;
public class CameraObject3D extends DisplayObject3D {
public var sort:Boolean;
public var zoom:Number;
public var focus:Number;
private static var _flipY:Matrix3D = Matrix3D.scaleMatrix(1, -1, 1);
public static var DEFAULT_POS:Number3D = new Number3D(0, 0, -1000);
public function CameraObject3D(_arg1:Number=3, _arg2:Number=500, _arg3:Object=null){
this.x = (_arg3) ? ((_arg3.x) || (DEFAULT_POS.x)) : DEFAULT_POS.x;
this.y = (_arg3) ? ((_arg3.y) || (DEFAULT_POS.y)) : DEFAULT_POS.y;
this.z = (_arg3) ? ((_arg3.z) || (DEFAULT_POS.z)) : DEFAULT_POS.z;
this.zoom = _arg1;
this.focus = _arg2;
this.sort = (_arg3) ? !((_arg3.sort == false)) : true;
}
public function transformView(_arg1:Matrix3D=null):void{
this.view = Matrix3D.inverse(Matrix3D.multiply(((_arg1) || (this.transform)), _flipY));
}
public function pan(_arg1:Number):void{
super.yaw(_arg1);
}
public function tilt(_arg1:Number):void{
super.pitch(_arg1);
}
}
}//package org.papervision3d.core.proto
Section 28
//DisplayObjectContainer3D (org.papervision3d.core.proto.DisplayObjectContainer3D)
package org.papervision3d.core.proto {
import flash.events.*;
import org.papervision3d.materials.*;
import org.papervision3d.objects.*;
import flash.utils.*;
import org.papervision3d.*;
public class DisplayObjectContainer3D extends EventDispatcher {
protected var _children:Dictionary;
public var root:DisplayObjectContainer3D;
private var _childrenTotal:int;
protected var _childrenByName:Object;
public function DisplayObjectContainer3D():void{
this._children = new Dictionary(false);
this._childrenByName = new Dictionary(true);
this._childrenTotal = 0;
}
public function getChildByName(_arg1:String):DisplayObject3D{
return (this._childrenByName[_arg1]);
}
public function addCollada(_arg1:String, _arg2:MaterialsList=null, _arg3:Number=1):void{
Papervision3D.log("The addCollada() method has been deprecated. Use addChildren( new Collada( filename ) )");
}
public function removeChildByName(_arg1:String):DisplayObject3D{
return (removeChild(getChildByName(_arg1)));
}
public function get numChildren():int{
return (this._childrenTotal);
}
override public function toString():String{
return (childrenList());
}
public function addChildren(_arg1:DisplayObject3D):DisplayObjectContainer3D{
var _local2:DisplayObject3D;
for each (_local2 in _arg1.children) {
_arg1.removeChild(_local2);
this.addChild(_local2);
};
return (this);
}
public function removeChild(_arg1:DisplayObject3D):DisplayObject3D{
delete this._childrenByName[this._children[_arg1]];
delete this._children[_arg1];
_arg1.parent = null;
_arg1.root = null;
return (_arg1);
}
public function addChild(_arg1:DisplayObject3D, _arg2:String=null):DisplayObject3D{
_arg2 = ((((_arg2) || (_arg1.name))) || (String(_arg1.id)));
this._children[_arg1] = _arg2;
this._childrenByName[_arg2] = _arg1;
this._childrenTotal++;
_arg1.parent = this;
_arg1.root = this.root;
return (_arg1);
}
public function childrenList():String{
var _local1:String;
var _local2:String;
_local1 = "";
for (_local2 in this._children) {
_local1 = (_local1 + (_local2 + "\n"));
};
return (_local1);
}
public function get children():Object{
return (this._childrenByName);
}
}
}//package org.papervision3d.core.proto
Section 29
//GeometryObject3D (org.papervision3d.core.proto.GeometryObject3D)
package org.papervision3d.core.proto {
import flash.events.*;
import org.papervision3d.materials.*;
import org.papervision3d.core.*;
import org.papervision3d.core.geom.*;
import org.papervision3d.scenes.*;
public class GeometryObject3D extends EventDispatcher {
protected var _boundingSphere2:Number;
protected var _boundingSphereDirty:Boolean;// = true
public var ready:Boolean;// = false
protected var _material:MaterialObject3D;
public var faces:Array;
public var vertices:Array;
public function GeometryObject3D(_arg1:Object=null):void{
ready = false;
_boundingSphereDirty = true;
super();
}
public function transformVertices(_arg1:Matrix3D):void{
}
public function get boundingSphere2():Number{
if (_boundingSphereDirty){
return (getBoundingSphere2());
};
return (_boundingSphere2);
}
public function getBoundingSphere2():Number{
var _local1:Number;
var _local2:Number;
var _local3:Vertex3D;
_local1 = 0;
for each (_local3 in this.vertices) {
_local2 = (((_local3.x * _local3.x) + (_local3.y * _local3.y)) + (_local3.z * _local3.z));
_local1 = ((_local2)>_local1) ? _local2 : _local1;
};
this._boundingSphereDirty = false;
return ((_boundingSphere2 = _local1));
}
public function transformUV(_arg1:MaterialObject3D):void{
var _local2:String;
if (_arg1.bitmap){
for (_local2 in this.faces) {
faces[_local2].transformUV(_arg1);
};
};
}
}
}//package org.papervision3d.core.proto
Section 30
//MaterialObject3D (org.papervision3d.core.proto.MaterialObject3D)
package org.papervision3d.core.proto {
import flash.events.*;
import flash.display.*;
public class MaterialObject3D extends EventDispatcher {
public var name:String;
public var scene:SceneObject3D;
public var lineColor:Number;
public var lineAlpha:Number;
public var fillAlpha:Number;
public var oneSide:Boolean;
public var fillColor:Number;
public var id:Number;
public var smooth:Boolean;
public var bitmap:BitmapData;
public var invisible:Boolean;
public var opposite:Boolean;
public static var DEFAULT_COLOR:int = 0;
public static var DEBUG_COLOR:int = 0xFF00FF;
private static var _totalMaterialObjects:Number = 0;
public function MaterialObject3D(_arg1:Object=null){
if (((_arg1) && (_arg1.bitmap))){
this.bitmap = _arg1.bitmap;
};
this.lineColor = (_arg1) ? ((_arg1.lineColor) || (DEFAULT_COLOR)) : DEFAULT_COLOR;
this.lineAlpha = (_arg1) ? ((_arg1.lineAlpha) || (0)) : 0;
this.fillColor = (_arg1) ? ((_arg1.fillColor) || (DEFAULT_COLOR)) : DEFAULT_COLOR;
this.fillAlpha = (_arg1) ? ((_arg1.fillAlpha) || (0)) : 0;
this.invisible = (_arg1) ? ((_arg1.invisible) || (false)) : false;
this.smooth = (_arg1) ? ((_arg1.smooth) || (false)) : false;
this.doubleSided = (_arg1) ? ((_arg1.doubleSided) || (false)) : false;
this.opposite = (_arg1) ? ((_arg1.opposite) || (false)) : false;
this.id = _totalMaterialObjects++;
}
public function updateBitmap():void{
}
public function get doubleSided():Boolean{
return (!(this.oneSide));
}
public function clone():MaterialObject3D{
var _local1:MaterialObject3D;
_local1 = new MaterialObject3D();
_local1.bitmap = this.bitmap;
_local1.smooth = this.smooth;
_local1.lineColor = this.lineColor;
_local1.lineAlpha = this.lineAlpha;
_local1.fillColor = this.fillColor;
_local1.fillAlpha = this.fillAlpha;
_local1.oneSide = this.oneSide;
_local1.opposite = this.opposite;
_local1.invisible = this.invisible;
_local1.scene = this.scene;
_local1.name = this.name;
return (_local1);
}
override public function toString():String{
return (((((("[MaterialObject3D] bitmap:" + this.bitmap) + " lineColor:") + this.lineColor) + " fillColor:") + fillColor));
}
public function copy(_arg1:MaterialObject3D):void{
this.bitmap = _arg1.bitmap;
this.smooth = _arg1.smooth;
this.lineColor = _arg1.lineColor;
this.lineAlpha = _arg1.lineAlpha;
this.fillColor = _arg1.fillColor;
this.fillAlpha = _arg1.fillAlpha;
this.oneSide = _arg1.oneSide;
this.opposite = _arg1.opposite;
this.invisible = _arg1.invisible;
this.scene = _arg1.scene;
this.name = _arg1.name;
}
public function set doubleSided(_arg1:Boolean):void{
this.oneSide = !(_arg1);
}
public static function get DEFAULT():MaterialObject3D{
var _local1:MaterialObject3D;
_local1 = new (MaterialObject3D);
_local1.lineColor = (0xFFFFFF * Math.random());
_local1.lineAlpha = 1;
_local1.fillColor = DEFAULT_COLOR;
_local1.fillAlpha = 1;
_local1.doubleSided = false;
return (_local1);
}
public static function get DEBUG():MaterialObject3D{
var _local1:MaterialObject3D;
_local1 = new (MaterialObject3D);
_local1.lineColor = (0xFFFFFF * Math.random());
_local1.lineAlpha = 1;
_local1.fillColor = DEBUG_COLOR;
_local1.fillAlpha = 0.37;
_local1.doubleSided = true;
return (_local1);
}
}
}//package org.papervision3d.core.proto
Section 31
//SceneObject3D (org.papervision3d.core.proto.SceneObject3D)
package org.papervision3d.core.proto {
import org.papervision3d.materials.*;
import org.papervision3d.objects.*;
import flash.display.*;
import flash.utils.*;
import org.papervision3d.*;
public class SceneObject3D extends DisplayObjectContainer3D {
public var container:Sprite;
private var geometries:Dictionary;
public var objects:Array;
public var stats:Object;
public var materials:MaterialsList;
public function SceneObject3D(_arg1:Sprite){
if (_arg1){
this.container = _arg1;
} else {
Papervision3D.log("Scene3D: container argument required.");
};
this.objects = new Array();
this.materials = new MaterialsList();
Papervision3D.log((((((Papervision3D.NAME + " ") + Papervision3D.VERSION) + " (") + Papervision3D.DATE) + ")\n"));
this.stats = new Object();
this.stats.points = 0;
this.stats.polys = 0;
this.stats.triangles = 0;
this.stats.performance = 0;
this.stats.rendered = 0;
this.root = this;
}
override public function addChild(_arg1:DisplayObject3D, _arg2:String=null):DisplayObject3D{
var _local3:DisplayObject3D;
_local3 = super.addChild(_arg1, _arg2);
this.objects.push(_local3);
return (_local3);
}
public function renderCamera(_arg1:CameraObject3D):void{
var _local2:Object;
var _local3:Array;
var _local4:DisplayObject3D;
var _local5:Number;
_local2 = this.stats;
_local2.performance = getTimer();
MovieMaterial.updateAnimatedBitmaps();
if (_arg1){
_arg1.transformView();
_local3 = this.objects;
_local5 = _local3.length;
while ((_local4 = _local3[--_local5])) {
if (_local4.visible){
_local4.project(_arg1, _arg1);
};
};
};
if (_arg1.sort){
this.objects.sortOn("screenZ", Array.NUMERIC);
};
_local2.rendered = 0;
renderObjects(_arg1.sort);
}
protected function renderObjects(_arg1:Boolean):void{
}
override public function removeChild(_arg1:DisplayObject3D):DisplayObject3D{
var _local2:int;
super.removeChild(_arg1);
_local2 = 0;
while (_local2 < this.objects.length) {
if (this.objects[_local2] === _arg1){
this.objects.splice(_local2, 1);
return (_arg1);
};
_local2++;
};
return (_arg1);
}
}
}//package org.papervision3d.core.proto
Section 32
//Matrix3D (org.papervision3d.core.Matrix3D)
package org.papervision3d.core {
public class Matrix3D {
public var n31:Number;
public var n32:Number;
public var n11:Number;
public var n13:Number;
public var n14:Number;
public var n33:Number;
public var n12:Number;
public var n21:Number;
public var n22:Number;
public var n23:Number;
public var n24:Number;
public var n34:Number;
private static var toDEGREES:Number = 57.2957795130823;
private static var toRADIANS:Number = 0.0174532925199433;
public function Matrix3D(_arg1:Array=null){
if (((!(_arg1)) || ((_arg1.length < 12)))){
n11 = (n22 = (n33 = 1));
n12 = (n13 = (n14 = (n21 = (n23 = (n24 = (n31 = (n32 = (n34 = 0))))))));
} else {
n11 = _arg1[0];
n12 = _arg1[1];
n13 = _arg1[2];
n14 = _arg1[3];
n21 = _arg1[4];
n22 = _arg1[5];
n23 = _arg1[6];
n24 = _arg1[7];
n31 = _arg1[8];
n32 = _arg1[9];
n33 = _arg1[10];
n34 = _arg1[11];
};
}
public function calculateMultiply3x3(_arg1:Matrix3D, _arg2:Matrix3D):void{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Number;
var _local16:Number;
var _local17:Number;
var _local18:Number;
var _local19:Number;
var _local20:Number;
_local3 = _arg1.n11;
_local4 = _arg2.n11;
_local5 = _arg1.n21;
_local6 = _arg2.n21;
_local7 = _arg1.n31;
_local8 = _arg2.n31;
_local9 = _arg1.n12;
_local10 = _arg2.n12;
_local11 = _arg1.n22;
_local12 = _arg2.n22;
_local13 = _arg1.n32;
_local14 = _arg2.n32;
_local15 = _arg1.n13;
_local16 = _arg2.n13;
_local17 = _arg1.n23;
_local18 = _arg2.n23;
_local19 = _arg1.n33;
_local20 = _arg2.n33;
this.n11 = (((_local3 * _local4) + (_local9 * _local6)) + (_local15 * _local8));
this.n12 = (((_local3 * _local10) + (_local9 * _local12)) + (_local15 * _local14));
this.n13 = (((_local3 * _local16) + (_local9 * _local18)) + (_local15 * _local20));
this.n21 = (((_local5 * _local4) + (_local11 * _local6)) + (_local17 * _local8));
this.n22 = (((_local5 * _local10) + (_local11 * _local12)) + (_local17 * _local14));
this.n23 = (((_local5 * _local16) + (_local11 * _local18)) + (_local17 * _local20));
this.n31 = (((_local7 * _local4) + (_local13 * _local6)) + (_local19 * _local8));
this.n32 = (((_local7 * _local10) + (_local13 * _local12)) + (_local19 * _local14));
this.n33 = (((_local7 * _local16) + (_local13 * _local18)) + (_local19 * _local20));
}
public function get trace():Number{
return ((((this.n11 + this.n22) + this.n33) + 1));
}
public function get det():Number{
return ((((((this.n11 * this.n22) - (this.n21 * this.n12)) * this.n33) - (((this.n11 * this.n32) - (this.n31 * this.n12)) * this.n23)) + (((this.n21 * this.n32) - (this.n31 * this.n22)) * this.n13)));
}
public function copy3x3(_arg1:Matrix3D):Matrix3D{
this.n11 = _arg1.n11;
this.n12 = _arg1.n12;
this.n13 = _arg1.n13;
this.n21 = _arg1.n21;
this.n22 = _arg1.n22;
this.n23 = _arg1.n23;
this.n31 = _arg1.n31;
this.n32 = _arg1.n32;
this.n33 = _arg1.n33;
return (this);
}
public function calculateAdd(_arg1:Matrix3D, _arg2:Matrix3D):void{
this.n11 = (_arg1.n11 + _arg2.n11);
this.n12 = (_arg1.n12 + _arg2.n12);
this.n13 = (_arg1.n13 + _arg2.n13);
this.n14 = (_arg1.n14 + _arg2.n14);
this.n21 = (_arg1.n21 + _arg2.n21);
this.n22 = (_arg1.n22 + _arg2.n22);
this.n23 = (_arg1.n23 + _arg2.n23);
this.n24 = (_arg1.n24 + _arg2.n24);
this.n31 = (_arg1.n31 + _arg2.n31);
this.n32 = (_arg1.n32 + _arg2.n32);
this.n33 = (_arg1.n33 + _arg2.n33);
this.n34 = (_arg1.n34 + _arg2.n34);
}
public function calculateMultiply(_arg1:Matrix3D, _arg2:Matrix3D):void{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
var _local15:Number;
var _local16:Number;
var _local17:Number;
var _local18:Number;
var _local19:Number;
var _local20:Number;
var _local21:Number;
var _local22:Number;
var _local23:Number;
var _local24:Number;
var _local25:Number;
var _local26:Number;
_local3 = _arg1.n11;
_local4 = _arg2.n11;
_local5 = _arg1.n21;
_local6 = _arg2.n21;
_local7 = _arg1.n31;
_local8 = _arg2.n31;
_local9 = _arg1.n12;
_local10 = _arg2.n12;
_local11 = _arg1.n22;
_local12 = _arg2.n22;
_local13 = _arg1.n32;
_local14 = _arg2.n32;
_local15 = _arg1.n13;
_local16 = _arg2.n13;
_local17 = _arg1.n23;
_local18 = _arg2.n23;
_local19 = _arg1.n33;
_local20 = _arg2.n33;
_local21 = _arg1.n14;
_local22 = _arg2.n14;
_local23 = _arg1.n24;
_local24 = _arg2.n24;
_local25 = _arg1.n34;
_local26 = _arg2.n34;
this.n11 = (((_local3 * _local4) + (_local9 * _local6)) + (_local15 * _local8));
this.n12 = (((_local3 * _local10) + (_local9 * _local12)) + (_local15 * _local14));
this.n13 = (((_local3 * _local16) + (_local9 * _local18)) + (_local15 * _local20));
this.n14 = ((((_local3 * _local22) + (_local9 * _local24)) + (_local15 * _local26)) + _local21);
this.n21 = (((_local5 * _local4) + (_local11 * _local6)) + (_local17 * _local8));
this.n22 = (((_local5 * _local10) + (_local11 * _local12)) + (_local17 * _local14));
this.n23 = (((_local5 * _local16) + (_local11 * _local18)) + (_local17 * _local20));
this.n24 = ((((_local5 * _local22) + (_local11 * _local24)) + (_local17 * _local26)) + _local23);
this.n31 = (((_local7 * _local4) + (_local13 * _local6)) + (_local19 * _local8));
this.n32 = (((_local7 * _local10) + (_local13 * _local12)) + (_local19 * _local14));
this.n33 = (((_local7 * _local16) + (_local13 * _local18)) + (_local19 * _local20));
this.n34 = ((((_local7 * _local22) + (_local13 * _local24)) + (_local19 * _local26)) + _local25);
}
public function toString():String{
var _local1:String;
_local1 = "";
_local1 = (_local1 + ((((((((int((n11 * 1000)) / 1000) + "\t\t") + (int((n12 * 1000)) / 1000)) + "\t\t") + (int((n13 * 1000)) / 1000)) + "\t\t") + (int((n14 * 1000)) / 1000)) + "\n"));
_local1 = (_local1 + ((((((((int((n21 * 1000)) / 1000) + "\t\t") + (int((n22 * 1000)) / 1000)) + "\t\t") + (int((n23 * 1000)) / 1000)) + "\t\t") + (int((n24 * 1000)) / 1000)) + "\n"));
_local1 = (_local1 + ((((((((int((n31 * 1000)) / 1000) + "\t\t") + (int((n32 * 1000)) / 1000)) + "\t\t") + (int((n33 * 1000)) / 1000)) + "\t\t") + (int((n34 * 1000)) / 1000)) + "\n"));
return (_local1);
}
public function copy(_arg1:Matrix3D):Matrix3D{
this.n11 = _arg1.n11;
this.n12 = _arg1.n12;
this.n13 = _arg1.n13;
this.n14 = _arg1.n14;
this.n21 = _arg1.n21;
this.n22 = _arg1.n22;
this.n23 = _arg1.n23;
this.n24 = _arg1.n24;
this.n31 = _arg1.n31;
this.n32 = _arg1.n32;
this.n33 = _arg1.n33;
this.n34 = _arg1.n34;
return (this);
}
public function calculateInverse(_arg1:Matrix3D):void{
var _local2:Number;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
_local2 = _arg1.det;
if (Math.abs(_local2) > 0.001){
_local2 = (1 / _local2);
_local3 = _arg1.n11;
_local4 = _arg1.n21;
_local5 = _arg1.n31;
_local6 = _arg1.n12;
_local7 = _arg1.n22;
_local8 = _arg1.n32;
_local9 = _arg1.n13;
_local10 = _arg1.n23;
_local11 = _arg1.n33;
_local12 = _arg1.n14;
_local13 = _arg1.n24;
_local14 = _arg1.n34;
this.n11 = (_local2 * ((_local7 * _local11) - (_local8 * _local10)));
this.n12 = (-(_local2) * ((_local6 * _local11) - (_local8 * _local9)));
this.n13 = (_local2 * ((_local6 * _local10) - (_local7 * _local9)));
this.n14 = (-(_local2) * (((_local6 * ((_local10 * _local14) - (_local11 * _local13))) - (_local7 * ((_local9 * _local14) - (_local11 * _local12)))) + (_local8 * ((_local9 * _local13) - (_local10 * _local12)))));
this.n21 = (-(_local2) * ((_local4 * _local11) - (_local5 * _local10)));
this.n22 = (_local2 * ((_local3 * _local11) - (_local5 * _local9)));
this.n23 = (-(_local2) * ((_local3 * _local10) - (_local4 * _local9)));
this.n24 = (_local2 * (((_local3 * ((_local10 * _local14) - (_local11 * _local13))) - (_local4 * ((_local9 * _local14) - (_local11 * _local12)))) + (_local5 * ((_local9 * _local13) - (_local10 * _local12)))));
this.n31 = (_local2 * ((_local4 * _local8) - (_local5 * _local7)));
this.n32 = (-(_local2) * ((_local3 * _local8) - (_local5 * _local6)));
this.n33 = (_local2 * ((_local3 * _local7) - (_local4 * _local6)));
this.n34 = (-(_local2) * (((_local3 * ((_local7 * _local14) - (_local8 * _local13))) - (_local4 * ((_local6 * _local14) - (_local8 * _local12)))) + (_local5 * ((_local6 * _local13) - (_local7 * _local12)))));
};
}
public static function rotationMatrixWithReference(_arg1:Number3D, _arg2:Number, _arg3:Number3D):Matrix3D{
var _local4:Matrix3D;
_local4 = Matrix3D.translationMatrix(_arg3.x, -(_arg3.y), _arg3.z);
Matrix3D.translationMatrix(_arg3.x, -(_arg3.y), _arg3.z).calculateMultiply(_local4, Matrix3D.rotationMatrix(_arg1.x, _arg1.y, _arg1.z, _arg2));
_local4.calculateMultiply(_local4, Matrix3D.translationMatrix(-(_arg3.x), _arg3.y, -(_arg3.z)));
return (_local4);
}
public static function multiplyVector3x3(_arg1:Matrix3D, _arg2:Number3D):void{
var _local3:Number;
var _local4:Number;
var _local5:Number;
_local3 = _arg2.x;
_local4 = _arg2.y;
_local5 = _arg2.z;
_arg2.x = (((_local3 * _arg1.n11) + (_local4 * _arg1.n12)) + (_local5 * _arg1.n13));
_arg2.y = (((_local3 * _arg1.n21) + (_local4 * _arg1.n22)) + (_local5 * _arg1.n23));
_arg2.z = (((_local3 * _arg1.n31) + (_local4 * _arg1.n32)) + (_local5 * _arg1.n33));
}
public static function multiply3x3(_arg1:Matrix3D, _arg2:Matrix3D):Matrix3D{
var _local3:Matrix3D;
_local3 = new (Matrix3D);
_local3.calculateMultiply3x3(_arg1, _arg2);
return (_local3);
}
public static function normalizeQuaternion(_arg1:Object):Object{
var _local2:Number;
_local2 = magnitudeQuaternion(_arg1);
_arg1.x = (_arg1.x / _local2);
_arg1.y = (_arg1.y / _local2);
_arg1.z = (_arg1.z / _local2);
_arg1.w = (_arg1.w / _local2);
return (_arg1);
}
public static function multiplyVector(_arg1:Matrix3D, _arg2:Number3D):void{
var _local3:Number;
var _local4:Number;
var _local5:Number;
_local3 = _arg2.x;
_local4 = _arg2.y;
_local5 = _arg2.z;
_arg2.x = ((((_local3 * _arg1.n11) + (_local4 * _arg1.n12)) + (_local5 * _arg1.n13)) + _arg1.n14);
_arg2.y = ((((_local3 * _arg1.n21) + (_local4 * _arg1.n22)) + (_local5 * _arg1.n23)) + _arg1.n24);
_arg2.z = ((((_local3 * _arg1.n31) + (_local4 * _arg1.n32)) + (_local5 * _arg1.n33)) + _arg1.n34);
}
public static function axis2quaternion(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Object{
var _local5:Number;
var _local6:Number;
var _local7:Object;
_local5 = Math.sin((_arg4 / 2));
_local6 = Math.cos((_arg4 / 2));
_local7 = new Object();
_local7.x = (_arg1 * _local5);
_local7.y = (_arg2 * _local5);
_local7.z = (_arg3 * _local5);
_local7.w = _local6;
return (normalizeQuaternion(_local7));
}
public static function translationMatrix(_arg1:Number, _arg2:Number, _arg3:Number):Matrix3D{
var _local4:Matrix3D;
_local4 = IDENTITY;
_local4.n14 = _arg1;
_local4.n24 = _arg2;
_local4.n34 = _arg3;
return (_local4);
}
public static function magnitudeQuaternion(_arg1:Object):Number{
return (Math.sqrt(((((_arg1.w * _arg1.w) + (_arg1.x * _arg1.x)) + (_arg1.y * _arg1.y)) + (_arg1.z * _arg1.z))));
}
public static function euler2quaternion(_arg1:Number, _arg2:Number, _arg3:Number):Object{
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Object;
_local4 = Math.sin((_arg1 * 0.5));
_local5 = Math.cos((_arg1 * 0.5));
_local6 = Math.sin((_arg2 * 0.5));
_local7 = Math.cos((_arg2 * 0.5));
_local8 = Math.sin((_arg3 * 0.5));
_local9 = Math.cos((_arg3 * 0.5));
_local10 = (_local5 * _local7);
_local11 = (_local4 * _local6);
_local12 = new Object();
_local12.x = ((_local8 * _local10) - (_local9 * _local11));
_local12.y = (((_local9 * _local4) * _local7) + ((_local8 * _local5) * _local6));
_local12.z = (((_local9 * _local5) * _local6) - ((_local8 * _local4) * _local7));
_local12.w = ((_local9 * _local10) + (_local8 * _local11));
return (_local12);
}
public static function rotationX(_arg1:Number):Matrix3D{
var _local2:Matrix3D;
var _local3:Number;
var _local4:Number;
_local2 = IDENTITY;
_local3 = Math.cos(_arg1);
_local4 = Math.sin(_arg1);
_local2.n22 = _local3;
_local2.n23 = -(_local4);
_local2.n32 = _local4;
_local2.n33 = _local3;
return (_local2);
}
public static function rotationY(_arg1:Number):Matrix3D{
var _local2:Matrix3D;
var _local3:Number;
var _local4:Number;
_local2 = IDENTITY;
_local3 = Math.cos(_arg1);
_local4 = Math.sin(_arg1);
_local2.n11 = _local3;
_local2.n13 = -(_local4);
_local2.n31 = _local4;
_local2.n33 = _local3;
return (_local2);
}
public static function rotationZ(_arg1:Number):Matrix3D{
var _local2:Matrix3D;
var _local3:Number;
var _local4:Number;
_local2 = IDENTITY;
_local3 = Math.cos(_arg1);
_local4 = Math.sin(_arg1);
_local2.n11 = _local3;
_local2.n12 = -(_local4);
_local2.n21 = _local4;
_local2.n22 = _local3;
return (_local2);
}
public static function clone(_arg1:Matrix3D):Matrix3D{
return (new Matrix3D([_arg1.n11, _arg1.n12, _arg1.n13, _arg1.n14, _arg1.n21, _arg1.n22, _arg1.n23, _arg1.n24, _arg1.n31, _arg1.n32, _arg1.n33, _arg1.n34]));
}
public static function rotationMatrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix3D{
var _local5:Matrix3D;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Number;
_local5 = IDENTITY;
_local6 = Math.cos(_arg4);
_local7 = Math.sin(_arg4);
_local8 = (1 - _local6);
_local9 = ((_arg1 * _arg2) * _local8);
_local10 = ((_arg2 * _arg3) * _local8);
_local11 = ((_arg1 * _arg3) * _local8);
_local12 = (_local7 * _arg3);
_local13 = (_local7 * _arg2);
_local14 = (_local7 * _arg1);
_local5.n11 = (_local6 + ((_arg1 * _arg1) * _local8));
_local5.n12 = (-(_local12) + _local9);
_local5.n13 = (_local13 + _local11);
_local5.n21 = (_local12 + _local9);
_local5.n22 = (_local6 + ((_arg2 * _arg2) * _local8));
_local5.n23 = (-(_local14) + _local10);
_local5.n31 = (-(_local13) + _local11);
_local5.n32 = (_local14 + _local10);
_local5.n33 = (_local6 + ((_arg3 * _arg3) * _local8));
return (_local5);
}
public static function add(_arg1:Matrix3D, _arg2:Matrix3D):Matrix3D{
var _local3:Matrix3D;
_local3 = new (Matrix3D);
_local3.calculateAdd(_arg1, _arg2);
return (_local3);
}
public static function rotateAxis(_arg1:Matrix3D, _arg2:Number3D):void{
var _local3:Number;
var _local4:Number;
var _local5:Number;
_local3 = _arg2.x;
_local4 = _arg2.y;
_local5 = _arg2.z;
_arg2.x = ((((_local3 * _arg1.n11) + (_local4 * _arg1.n12)) + (_local5 * _arg1.n13)) + _arg1.n14);
_arg2.y = ((((_local3 * _arg1.n21) + (_local4 * _arg1.n22)) + (_local5 * _arg1.n23)) + _arg1.n24);
_arg2.z = ((((_local3 * _arg1.n31) + (_local4 * _arg1.n32)) + (_local5 * _arg1.n33)) + _arg1.n34);
_arg2.normalize();
}
public static function multiply(_arg1:Matrix3D, _arg2:Matrix3D):Matrix3D{
var _local3:Matrix3D;
_local3 = new (Matrix3D);
_local3.calculateMultiply(_arg1, _arg2);
return (_local3);
}
public static function multiplyQuaternion(_arg1:Object, _arg2:Object):Object{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Object;
_local3 = _arg1.x;
_local4 = _arg1.y;
_local5 = _arg1.z;
_local6 = _arg1.w;
_local7 = _arg2.x;
_local8 = _arg2.y;
_local9 = _arg2.z;
_local10 = _arg2.w;
_local11 = new Object();
_local11.x = ((((_local6 * _local7) + (_local3 * _local10)) + (_local4 * _local9)) - (_local5 * _local8));
_local11.y = ((((_local6 * _local8) + (_local4 * _local10)) + (_local5 * _local7)) - (_local3 * _local9));
_local11.z = ((((_local6 * _local9) + (_local5 * _local10)) + (_local3 * _local8)) - (_local4 * _local7));
_local11.w = ((((_local6 * _local10) - (_local3 * _local7)) - (_local4 * _local8)) - (_local5 * _local9));
return (_local11);
}
public static function euler2matrix(_arg1:Number3D):Matrix3D{
var _local2:Matrix3D;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
_local2 = IDENTITY;
_local3 = (_arg1.x * toRADIANS);
_local4 = (_arg1.y * toRADIANS);
_local5 = (_arg1.z * toRADIANS);
_local6 = Math.cos(_local3);
_local7 = Math.sin(_local3);
_local8 = Math.cos(_local4);
_local9 = Math.sin(_local4);
_local10 = Math.cos(_local5);
_local11 = Math.sin(_local5);
_local12 = (_local6 * _local9);
_local13 = (_local7 * _local9);
_local2.n11 = (_local8 * _local10);
_local2.n12 = (-(_local8) * _local11);
_local2.n13 = _local9;
_local2.n21 = ((_local13 * _local10) + (_local6 * _local11));
_local2.n22 = ((-(_local13) * _local11) + (_local6 * _local10));
_local2.n23 = (-(_local7) * _local8);
_local2.n31 = ((-(_local12) * _local10) + (_local7 * _local11));
_local2.n32 = ((_local12 * _local11) + (_local7 * _local10));
_local2.n33 = (_local6 * _local8);
return (_local2);
}
public static function scaleMatrix(_arg1:Number, _arg2:Number, _arg3:Number):Matrix3D{
var _local4:Matrix3D;
_local4 = IDENTITY;
_local4.n11 = _arg1;
_local4.n22 = _arg2;
_local4.n33 = _arg3;
return (_local4);
}
public static function quaternion2matrix(_arg1:Number, _arg2:Number, _arg3:Number, _arg4:Number):Matrix3D{
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:Number;
var _local14:Matrix3D;
_local5 = (_arg1 * _arg1);
_local6 = (_arg1 * _arg2);
_local7 = (_arg1 * _arg3);
_local8 = (_arg1 * _arg4);
_local9 = (_arg2 * _arg2);
_local10 = (_arg2 * _arg3);
_local11 = (_arg2 * _arg4);
_local12 = (_arg3 * _arg3);
_local13 = (_arg3 * _arg4);
_local14 = IDENTITY;
_local14.n11 = (1 - (2 * (_local9 + _local12)));
_local14.n12 = (2 * (_local6 - _local13));
_local14.n13 = (2 * (_local7 + _local11));
_local14.n21 = (2 * (_local6 + _local13));
_local14.n22 = (1 - (2 * (_local5 + _local12)));
_local14.n23 = (2 * (_local10 - _local8));
_local14.n31 = (2 * (_local7 - _local11));
_local14.n32 = (2 * (_local10 + _local8));
_local14.n33 = (1 - (2 * (_local5 + _local9)));
return (_local14);
}
public static function inverse(_arg1:Matrix3D):Matrix3D{
var _local2:Matrix3D;
_local2 = new (Matrix3D);
_local2.calculateInverse(_arg1);
return (_local2);
}
public static function matrix2euler(_arg1:Matrix3D):Number3D{
var _local2:Number3D;
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
_local2 = new Number3D();
_local3 = -(Math.asin(Math.max(-1, Math.min(1, _arg1.n13))));
_local4 = Math.cos(_local3);
_local2.y = (_local3 * toDEGREES);
if (Math.abs(_local4) > 0.005){
_local5 = (_arg1.n33 / _local4);
_local6 = (-(_arg1.n23) / _local4);
_local2.x = (Math.atan2(_local6, _local5) * toDEGREES);
_local5 = (_arg1.n11 / _local4);
_local6 = (-(_arg1.n12) / _local4);
_local2.z = (Math.atan2(_local6, _local5) * toDEGREES);
} else {
_local2.x = 0;
_local5 = _arg1.n22;
_local6 = _arg1.n21;
_local2.z = (Math.atan2(_local6, _local5) * toDEGREES);
};
return (_local2);
}
public static function get IDENTITY():Matrix3D{
return (new Matrix3D([1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0]));
}
}
}//package org.papervision3d.core
Section 33
//Number3D (org.papervision3d.core.Number3D)
package org.papervision3d.core {
public class Number3D {
public var x:Number;
public var y:Number;
public var z:Number;
public function Number3D(_arg1:Number=0, _arg2:Number=0, _arg3:Number=0){
this.x = _arg1;
this.y = _arg2;
this.z = _arg3;
}
public function toString():String{
return (((((("x:" + x) + " y:") + y) + " z:") + z));
}
public function normalize():void{
var _local1:Number;
_local1 = this.modulo;
if (((!((_local1 == 0))) && (!((_local1 == 1))))){
this.x = (this.x / _local1);
this.y = (this.y / _local1);
this.z = (this.z / _local1);
};
}
public function get modulo():Number{
return (Math.sqrt((((this.x * this.x) + (this.y * this.y)) + (this.z * this.z))));
}
public function clone():Number3D{
return (new Number3D(this.x, this.y, this.z));
}
public static function sub(_arg1:Number3D, _arg2:Number3D):Number3D{
return (new Number3D((_arg1.x - _arg2.x), (_arg1.y - _arg2.y), (_arg1.z - _arg2.z)));
}
public static function add(_arg1:Number3D, _arg2:Number3D):Number3D{
return (new Number3D((_arg1.x + _arg2.x), (_arg1.y + _arg2.y), (_arg1.z + _arg2.z)));
}
public static function cross(_arg1:Number3D, _arg2:Number3D):Number3D{
return (new Number3D(((_arg2.y * _arg1.z) - (_arg2.z * _arg1.y)), ((_arg2.z * _arg1.x) - (_arg2.x * _arg1.z)), ((_arg2.x * _arg1.y) - (_arg2.y * _arg1.x))));
}
public static function get ZERO():Number3D{
return (new Number3D(0, 0, 0));
}
public static function dot(_arg1:Number3D, _arg2:Number3D):Number{
return ((((_arg1.x * _arg2.x) + (_arg1.y * _arg2.y)) + (_arg2.z * _arg1.z)));
}
}
}//package org.papervision3d.core
Section 34
//NumberUV (org.papervision3d.core.NumberUV)
package org.papervision3d.core {
public class NumberUV {
public var u:Number;
public var v:Number;
public function NumberUV(_arg1:Number=0, _arg2:Number=0){
this.u = _arg1;
this.v = _arg2;
}
public function toString():String{
return (((("u:" + u) + " v:") + v));
}
public function clone():NumberUV{
return (new NumberUV(this.u, this.v));
}
public static function get ZERO():NumberUV{
return (new NumberUV(0, 0));
}
}
}//package org.papervision3d.core
Section 35
//BitmapMaterial (org.papervision3d.materials.BitmapMaterial)
package org.papervision3d.materials {
import org.papervision3d.core.proto.*;
import flash.display.*;
public class BitmapMaterial extends MaterialObject3D {
protected var _texture;
public function BitmapMaterial(_arg1, _arg2:Object=null){
super(_arg2);
texture = _arg1;
}
public function set texture(_arg1):void{
this.bitmap = createBitmap(_arg1);
this._texture = _arg1;
}
protected function createBitmap(_arg1):BitmapData{
return (_arg1);
}
public function get texture(){
return (this._texture);
}
override public function toString():String{
return (((((("Texture:" + this.texture) + " lineColor:") + this.lineColor) + " lineAlpha:") + this.lineAlpha));
}
}
}//package org.papervision3d.materials
Section 36
//ColorMaterial (org.papervision3d.materials.ColorMaterial)
package org.papervision3d.materials {
import org.papervision3d.core.proto.*;
public class ColorMaterial extends MaterialObject3D {
public function ColorMaterial(_arg1:Number=0xFF00FF, _arg2:Number=100, _arg3:Object=null){
super(_arg3);
this.fillColor = _arg1;
this.fillAlpha = _arg2;
}
override public function toString():String{
return (((("ColorMaterial - color:" + this.fillColor) + " alpha:") + this.fillAlpha));
}
}
}//package org.papervision3d.materials
Section 37
//MaterialsList (org.papervision3d.materials.MaterialsList)
package org.papervision3d.materials {
import org.papervision3d.core.proto.*;
import flash.utils.*;
public class MaterialsList {
public var materialsByName:Dictionary;
protected var _materials:Dictionary;
private var _materialsTotal:int;
public function MaterialsList(_arg1=null):void{
var _local2:String;
var _local3:String;
super();
this.materialsByName = new Dictionary(true);
this._materials = new Dictionary(false);
this._materialsTotal = 0;
if (_arg1){
if ((_arg1 is Array)){
for (_local2 in _arg1) {
this.addMaterial(_arg1[_local2]);
};
} else {
if ((_arg1 is Object)){
for (_local3 in _arg1) {
this.addMaterial(_arg1[_local3], _local3);
};
};
};
};
}
public function get numMaterials():int{
return (this._materialsTotal);
}
public function addMaterial(_arg1:MaterialObject3D, _arg2:String=null):MaterialObject3D{
_arg2 = ((((_arg2) || (_arg1.name))) || (String(_arg1.id)));
this._materials[_arg1] = _arg2;
this.materialsByName[_arg2] = _arg1;
this._materialsTotal++;
return (_arg1);
}
public function removeMaterial(_arg1:MaterialObject3D):MaterialObject3D{
delete this.materialsByName[this._materials[_arg1]];
delete this._materials[_arg1];
return (_arg1);
}
public function toString():String{
var _local1:String;
var _local2:MaterialObject3D;
_local1 = "";
for each (_local2 in this.materialsByName) {
_local1 = (_local1 + (this._materials[_local2] + "\n"));
};
return (_local1);
}
public function removeMaterialByName(_arg1:String):MaterialObject3D{
return (removeMaterial(getMaterialByName(_arg1)));
}
public function clone():MaterialsList{
var _local1:MaterialsList;
var _local2:MaterialObject3D;
_local1 = new MaterialsList();
for each (_local2 in this.materialsByName) {
_local1.addMaterial(_local2.clone(), this._materials[_local2]);
};
return (_local1);
}
public function getMaterialByName(_arg1:String):MaterialObject3D{
return (this.materialsByName[_arg1]);
}
}
}//package org.papervision3d.materials
Section 38
//MovieAssetMaterial (org.papervision3d.materials.MovieAssetMaterial)
package org.papervision3d.materials {
import flash.display.*;
import flash.utils.*;
public class MovieAssetMaterial extends MovieMaterial {
private static var _library:Object = new Object();
private static var _count:Object = new Object();
public function MovieAssetMaterial(_arg1, _arg2:Boolean=false, _arg3:Object=null){
super(_arg1, _arg2, _arg3);
}
override protected function createBitmap(_arg1):BitmapData{
var _local2:MovieClip;
var _local3:MovieClip;
var _local4:Class;
if (this._texture != _arg1){
var _local5 = _count;
var _local6 = this._texture;
var _local7 = (_local5[_local6] - 1);
_local5[_local6] = _local7;
_local3 = _library[this._texture];
if (((_local3) && ((_count[this._texture] == 0)))){
_library[this._texture] = null;
};
};
_local2 = _library[_arg1];
if (!_local2){
_local4 = (getDefinitionByName(_arg1) as Class);
_local2 = new (_local4);
_library[_arg1] = _local2;
_count[_arg1] = 0;
} else {
_local5 = _count;
_local6 = _arg1;
_local7 = (_local5[_local6] + 1);
_local5[_local6] = _local7;
};
return (super.createBitmap(_local2));
}
}
}//package org.papervision3d.materials
Section 39
//MovieMaterial (org.papervision3d.materials.MovieMaterial)
package org.papervision3d.materials {
import flash.display.*;
import flash.utils.*;
import flash.geom.*;
public class MovieMaterial extends BitmapMaterial {
public var movieTransparent:Boolean;
public var movie:MovieClip;
private static var animatedMaterials:Dictionary = new Dictionary(false);
public function MovieMaterial(_arg1, _arg2:Boolean=false, _arg3:Object=null){
super(initBitmap(_arg1, _arg2), _arg3);
animatedMaterials[this] = false;
}
public function get animated():Boolean{
return (animatedMaterials[this]);
}
public function set animated(_arg1:Boolean):void{
animatedMaterials[this] = _arg1;
}
override protected function createBitmap(_arg1):BitmapData{
if (this.bitmap){
this.bitmap.dispose();
};
this.bitmap = new BitmapData(_arg1.width, _arg1.height, this.movieTransparent, 0);
this.movie = _arg1;
updateBitmap();
return (this.bitmap);
}
override public function updateBitmap():void{
var _local1:BitmapData;
var _local2:MovieClip;
var _local3:Matrix;
_local1 = this.bitmap;
_local2 = this.movie;
_local1.fillRect(_local1.rect, this.fillColor);
_local3 = new Matrix();
_local3.scale(_local2.scaleX, _local2.scaleY);
_local1.draw(_local2, _local3, _local2.transform.colorTransform);
}
private function initBitmap(_arg1, _arg2:Boolean){
this.movieTransparent = ((_arg2) || (true));
return (_arg1);
}
public static function updateAnimatedBitmaps():void{
var _local1:Object;
for (_local1 in animatedMaterials) {
if (animatedMaterials[_local1]){
_local1.updateBitmap();
};
};
}
}
}//package org.papervision3d.materials
Section 40
//DisplayObject3D (org.papervision3d.objects.DisplayObject3D)
package org.papervision3d.objects {
import org.papervision3d.core.proto.*;
import org.papervision3d.materials.*;
import org.papervision3d.core.*;
import flash.display.*;
import com.blitzagency.xray.logger.*;
import flash.utils.*;
import org.papervision3d.*;
public class DisplayObject3D extends DisplayObjectContainer3D {
public var extra:Object;
public var id:int;
private var _rotationY:Number;
private var _rotationZ:Number;
private var _rotationX:Number;
public var material:MaterialObject3D;
public var materials:MaterialsList;
private var _scaleDirty:Boolean;// = false
private var _scaleX:Number;
public var screenZ:Number;
public var geometry:GeometryObject3D;
private var _scaleY:Number;
private var _scaleZ:Number;
public var projected:Dictionary;
public var visible:Boolean;
public var transform:Matrix3D;
public var name:String;
public var scene:SceneObject3D;
public var container:Sprite;
public var parent:DisplayObjectContainer3D;
public var view:Matrix3D;
public var faces:Array;
protected var _transformDirty:Boolean;// = false
private var _rotationDirty:Boolean;// = false
protected var _sorted:Array;
private static var BACKWARD:Number3D = new Number3D(0, 0, -1);
private static var FORWARD:Number3D = new Number3D(0, 0, 1);
private static var LEFT:Number3D = new Number3D(-1, 0, 0);
private static var DOWN:Number3D = new Number3D(0, -1, 0);
private static var toDEGREES:Number = 57.2957795130823;
private static var _totalDisplayObjects:int = 0;
private static var UP:Number3D = new Number3D(0, 1, 0);
private static var RIGHT:Number3D = new Number3D(1, 0, 0);
private static var toRADIANS:Number = 0.0174532925199433;
public function DisplayObject3D(_arg1:String=null, _arg2:GeometryObject3D=null, _arg3:Object=null):void{
var _local4:Number;
faces = new Array();
_transformDirty = false;
_rotationDirty = false;
_scaleDirty = false;
super();
Papervision3D.log(("DisplayObject3D: " + _arg1));
this.transform = Matrix3D.IDENTITY;
this.view = Matrix3D.IDENTITY;
this.x = (_arg3) ? ((_arg3.x) || (0)) : 0;
this.y = (_arg3) ? ((_arg3.y) || (0)) : 0;
this.z = (_arg3) ? ((_arg3.z) || (0)) : 0;
rotationX = (_arg3) ? ((_arg3.rotationX) || (0)) : 0;
rotationY = (_arg3) ? ((_arg3.rotationY) || (0)) : 0;
rotationZ = (_arg3) ? ((_arg3.rotationZ) || (0)) : 0;
_local4 = (Papervision3D.usePERCENT) ? 100 : 1;
scaleX = (_arg3) ? ((_arg3.scaleX) || (_local4)) : _local4;
scaleY = (_arg3) ? ((_arg3.scaleY) || (_local4)) : _local4;
scaleZ = (_arg3) ? ((_arg3.scaleZ) || (_local4)) : _local4;
if (((_arg3) && (_arg3.extra))){
this.extra = _arg3.extra;
};
if (((_arg3) && (_arg3.container))){
this.container = _arg3.container;
};
this.visible = true;
this.id = _totalDisplayObjects++;
this.name = ((_arg1) || (String(this.id)));
if (_arg2){
addGeometry(_arg2);
};
}
public function set z(_arg1:Number):void{
this.transform.n34 = _arg1;
}
public function moveDown(_arg1:Number):void{
translate(_arg1, DOWN);
}
public function project(_arg1:DisplayObject3D, _arg2:CameraObject3D, _arg3:Array=null):Number{
var _local4:Number;
var _local5:Number;
var _local6:DisplayObject3D;
if (!_arg3){
_arg3 = new Array();
this._sorted = _arg3;
};
if (this._transformDirty){
updateTransform();
};
this.view.calculateMultiply(_arg1.view, this.transform);
_local4 = 0;
_local5 = 0;
for each (_local6 in this._childrenByName) {
if (_local6.visible){
_local4 = (_local4 + _local6.project(this, _arg2, _arg3));
_local5++;
};
};
return ((this.screenZ = (_local4 / _local5)));
}
public function lookAt(_arg1:DisplayObject3D, _arg2:Number3D=null):void{
var _local3:Number3D;
var _local4:Number3D;
var _local5:Number3D;
var _local6:Number3D;
var _local7:Number3D;
var _local8:Matrix3D;
var _local9:XrayLog;
_local3 = new Number3D(this.x, this.y, this.z);
_local4 = new Number3D(_arg1.x, _arg1.y, _arg1.z);
_local5 = Number3D.sub(_local4, _local3);
_local5.normalize();
if (_local5.modulo > 0.1){
_local6 = Number3D.cross(_local5, ((_arg2) || (UP)));
_local6.normalize();
_local7 = Number3D.cross(_local5, _local6);
_local7.normalize();
_local8 = this.transform;
_local8.n11 = _local6.x;
_local8.n21 = _local6.y;
_local8.n31 = _local6.z;
_local8.n12 = -(_local7.x);
_local8.n22 = -(_local7.y);
_local8.n32 = -(_local7.z);
_local8.n13 = _local5.x;
_local8.n23 = _local5.y;
_local8.n33 = _local5.z;
this._transformDirty = false;
this._rotationDirty = true;
} else {
_local9 = new XrayLog();
_local9.debug("lookAt Error");
};
}
public function set rotationX(_arg1:Number):void{
this._rotationX = (Papervision3D.useDEGREES) ? (-(_arg1) * toRADIANS) : -(_arg1);
this._transformDirty = true;
}
public function set rotationY(_arg1:Number):void{
this._rotationY = (Papervision3D.useDEGREES) ? (-(_arg1) * toRADIANS) : -(_arg1);
this._transformDirty = true;
}
public function set rotationZ(_arg1:Number):void{
this._rotationZ = (Papervision3D.useDEGREES) ? (-(_arg1) * toRADIANS) : -(_arg1);
this._transformDirty = true;
}
public function addGeometry(_arg1:GeometryObject3D=null):void{
if (_arg1){
this.geometry = _arg1;
};
this.projected = new Dictionary();
}
public function moveUp(_arg1:Number):void{
translate(_arg1, UP);
}
public function pitch(_arg1:Number):void{
var _local2:Number3D;
var _local3:Matrix3D;
_arg1 = (Papervision3D.useDEGREES) ? (_arg1 * toRADIANS) : _arg1;
_local2 = RIGHT.clone();
if (this._transformDirty){
updateTransform();
};
Matrix3D.rotateAxis(transform, _local2);
_local3 = Matrix3D.rotationMatrix(_local2.x, _local2.y, _local2.z, _arg1);
this.transform.calculateMultiply3x3(_local3, transform);
this._rotationDirty = true;
}
public function distanceTo(_arg1:DisplayObject3D):Number{
var _local2:Number;
var _local3:Number;
var _local4:Number;
_local2 = (this.x - _arg1.x);
_local3 = (this.y - _arg1.y);
_local4 = (this.z - _arg1.z);
return (Math.sqrt((((_local2 * _local2) + (_local3 * _local3)) + (_local4 * _local4))));
}
public function translate(_arg1:Number, _arg2:Number3D):void{
var _local3:Number3D;
_local3 = _arg2.clone();
if (this._transformDirty){
updateTransform();
};
Matrix3D.rotateAxis(transform, _local3);
this.x = (this.x + (_arg1 * _local3.x));
this.y = (this.y + (_arg1 * _local3.y));
this.z = (this.z + (_arg1 * _local3.z));
}
public function hitTestObject(_arg1:DisplayObject3D, _arg2:Number=1):Boolean{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local3 = (this.x - _arg1.x);
_local4 = (this.y - _arg1.y);
_local5 = (this.z - _arg1.z);
_local6 = (((_local3 * _local3) + (_local4 * _local4)) + (_local5 * _local5));
_local7 = (this.geometry) ? this.geometry.boundingSphere2 : 0;
_local8 = (_arg1.geometry) ? _arg1.geometry.boundingSphere2 : 0;
_local7 = (_local7 * _arg2);
return (((_local7 + _local8) > _local6));
}
private function updateRotation():void{
var _local1:Number3D;
_local1 = Matrix3D.matrix2euler(this.transform);
this._rotationX = (_local1.x * toRADIANS);
this._rotationY = (_local1.y * toRADIANS);
this._rotationZ = (_local1.z * toRADIANS);
this._rotationDirty = false;
}
public function yaw(_arg1:Number):void{
var _local2:Number3D;
var _local3:Matrix3D;
_arg1 = (Papervision3D.useDEGREES) ? (_arg1 * toRADIANS) : _arg1;
_local2 = UP.clone();
if (this._transformDirty){
updateTransform();
};
Matrix3D.rotateAxis(transform, _local2);
_local3 = Matrix3D.rotationMatrix(_local2.x, _local2.y, _local2.z, _arg1);
this.transform.calculateMultiply3x3(_local3, transform);
this._rotationDirty = true;
}
override public function toString():String{
return (((((((this.name + ": x:") + Math.round(this.x)) + " y:") + Math.round(this.y)) + " z:") + Math.round(this.z)));
}
public function copyTransform(_arg1):void{
var _local2:Matrix3D;
var _local3:Matrix3D;
_local2 = this.transform;
_local3 = ((_arg1 is DisplayObject3D)) ? _arg1.transform : _arg1;
_local2.n11 = _local3.n11;
_local2.n12 = _local3.n12;
_local2.n13 = _local3.n13;
_local2.n14 = _local3.n14;
_local2.n21 = _local3.n21;
_local2.n22 = _local3.n22;
_local2.n23 = _local3.n23;
_local2.n24 = _local3.n24;
_local2.n31 = _local3.n31;
_local2.n32 = _local3.n32;
_local2.n33 = _local3.n33;
_local2.n34 = _local3.n34;
this._transformDirty = false;
this._rotationDirty = true;
}
public function get z():Number{
return (this.transform.n34);
}
public function roll(_arg1:Number):void{
var _local2:Number3D;
var _local3:Matrix3D;
_arg1 = (Papervision3D.useDEGREES) ? (_arg1 * toRADIANS) : _arg1;
_local2 = FORWARD.clone();
if (this._transformDirty){
updateTransform();
};
Matrix3D.rotateAxis(transform, _local2);
_local3 = Matrix3D.rotationMatrix(_local2.x, _local2.y, _local2.z, _arg1);
this.transform.calculateMultiply3x3(_local3, transform);
this._rotationDirty = true;
}
public function getMaterialByName(_arg1:String):MaterialObject3D{
var _local2:MaterialObject3D;
var _local3:DisplayObject3D;
_local2 = this.materials.getMaterialByName(_arg1);
if (_local2){
return (_local2);
};
for each (_local3 in this._childrenByName) {
_local2 = _local3.getMaterialByName(_arg1);
if (_local2){
return (_local2);
};
};
return (null);
}
public function moveLeft(_arg1:Number):void{
translate(_arg1, LEFT);
}
public function get y():Number{
return (this.transform.n24);
}
public function set scale(_arg1:Number):void{
if (Papervision3D.usePERCENT){
_arg1 = (_arg1 / 100);
};
this._scaleX = (this._scaleY = (this._scaleZ = _arg1));
this._transformDirty = true;
}
public function render(_arg1:SceneObject3D):void{
var _local2:Array;
var _local3:Sprite;
var _local4:Number;
var _local5:Object;
var _local6:int;
_local2 = this._sorted;
_local2.sortOn("screenZ", (Array.DESCENDING | Array.NUMERIC));
_local3 = ((this.container) || (_arg1.container));
_local4 = 0;
_local6 = 0;
while ((_local5 = _local2[_local6])) {
if (_local5.visible){
_local4 = (_local4 + _local5.face.render(_local5.instance, _local3));
};
_local6++;
};
_arg1.stats.rendered = (_arg1.stats.rendered + _local4);
}
public function get rotationY():Number{
if (this._rotationDirty){
updateRotation();
};
return ((Papervision3D.useDEGREES) ? (-(this._rotationY) * toDEGREES) : -(this._rotationY));
}
public function get rotationZ():Number{
if (this._rotationDirty){
updateRotation();
};
return ((Papervision3D.useDEGREES) ? (-(this._rotationZ) * toDEGREES) : -(this._rotationZ));
}
public function set scaleY(_arg1:Number):void{
if (Papervision3D.usePERCENT){
this._scaleY = (_arg1 / 100);
} else {
this._scaleY = _arg1;
};
this._transformDirty = true;
}
public function set scaleZ(_arg1:Number):void{
if (Papervision3D.usePERCENT){
this._scaleZ = (_arg1 / 100);
} else {
this._scaleZ = _arg1;
};
this._transformDirty = true;
}
public function get rotationX():Number{
if (this._rotationDirty){
updateRotation();
};
return ((Papervision3D.useDEGREES) ? (-(this._rotationX) * toDEGREES) : -(this._rotationX));
}
public function set scaleX(_arg1:Number):void{
if (Papervision3D.usePERCENT){
this._scaleX = (_arg1 / 100);
} else {
this._scaleX = _arg1;
};
this._transformDirty = true;
}
public function get x():Number{
return (this.transform.n14);
}
protected function updateTransform():void{
var _local1:Object;
var _local2:Matrix3D;
var _local3:Matrix3D;
var _local4:Matrix3D;
_local1 = Matrix3D.euler2quaternion(-(this._rotationY), -(this._rotationZ), this._rotationX);
_local2 = Matrix3D.quaternion2matrix(_local1.x, _local1.y, _local1.z, _local1.w);
_local3 = this.transform;
_local2.n14 = _local3.n14;
_local2.n24 = _local3.n24;
_local2.n34 = _local3.n34;
_local3.copy(_local2);
_local4 = Matrix3D.IDENTITY;
_local4.n11 = this._scaleX;
_local4.n22 = this._scaleY;
_local4.n33 = this._scaleZ;
this.transform.calculateMultiply(_local3, _local4);
this._transformDirty = false;
}
public function moveForward(_arg1:Number):void{
translate(_arg1, FORWARD);
}
public function copyPosition(_arg1):void{
var _local2:Matrix3D;
var _local3:Matrix3D;
_local2 = this.transform;
_local3 = ((_arg1 is DisplayObject3D)) ? _arg1.transform : _arg1;
_local2.n14 = _local3.n14;
_local2.n24 = _local3.n24;
_local2.n34 = _local3.n34;
}
public function hitTestPoint(_arg1:Number, _arg2:Number, _arg3:Number):Boolean{
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Number;
var _local8:Number;
_local4 = (this.x - _arg1);
_local5 = (this.y - _arg2);
_local6 = (this.z - _arg3);
_local7 = (((_arg1 * _arg1) + (_arg2 * _arg2)) + (_arg3 * _arg3));
_local8 = (this.geometry) ? this.geometry.boundingSphere2 : 0;
return ((_local8 > _local7));
}
public function moveRight(_arg1:Number):void{
translate(_arg1, RIGHT);
}
public function moveBackward(_arg1:Number):void{
translate(_arg1, BACKWARD);
}
public function materialsList():String{
var _local1:String;
var _local2:String;
var _local3:DisplayObject3D;
_local1 = "";
for (_local2 in this.materials) {
_local1 = (_local1 + (_local2 + "\n"));
};
for each (_local3 in this._childrenByName) {
for (_local2 in _local3.materials.materialsByName) {
_local1 = (_local1 + (("+ " + _local2) + "\n"));
};
};
return (_local1);
}
public function set x(_arg1:Number):void{
this.transform.n14 = _arg1;
}
public function set y(_arg1:Number):void{
this.transform.n24 = _arg1;
}
public static function get ZERO():DisplayObject3D{
return (new (DisplayObject3D));
}
}
}//package org.papervision3d.objects
Section 41
//Plane (org.papervision3d.objects.Plane)
package org.papervision3d.objects {
import org.papervision3d.core.proto.*;
import org.papervision3d.core.*;
import org.papervision3d.core.geom.*;
public class Plane extends Mesh3D {
public var segmentsH:Number;
public var segmentsW:Number;
public static var DEFAULT_SCALE:Number = 1;
public static var DEFAULT_SEGMENTS:Number = 1;
public static var DEFAULT_SIZE:Number = 500;
public function Plane(_arg1:MaterialObject3D=null, _arg2:Number=0, _arg3:Number=0, _arg4:Number=0, _arg5:Number=0, _arg6:Object=null){
var _local7:Number;
super(_arg1, new Array(), new Array(), null, _arg6);
this.segmentsW = ((_arg4) || (DEFAULT_SEGMENTS));
this.segmentsH = ((_arg5) || (this.segmentsW));
_local7 = DEFAULT_SCALE;
if (!_arg3){
if (_arg2){
_local7 = _arg2;
};
if (((_arg1) && (_arg1.bitmap))){
_arg2 = (_arg1.bitmap.width * _local7);
_arg3 = (_arg1.bitmap.height * _local7);
} else {
_arg2 = (DEFAULT_SIZE * _local7);
_arg3 = (DEFAULT_SIZE * _local7);
};
};
buildPlane(_arg2, _arg3);
}
private function buildPlane(_arg1:Number, _arg2:Number):void{
var _local3:Number;
var _local4:Number;
var _local5:Number;
var _local6:Number;
var _local7:Array;
var _local8:Array;
var _local9:Number;
var _local10:Number;
var _local11:Number;
var _local12:Number;
var _local13:int;
var _local14:NumberUV;
var _local15:NumberUV;
var _local16:NumberUV;
var _local17:int;
var _local18:Number;
var _local19:Number;
var _local20:Vertex3D;
var _local21:Vertex3D;
var _local22:Vertex3D;
_local3 = this.segmentsW;
_local4 = this.segmentsH;
_local5 = (_local3 + 1);
_local6 = (_local4 + 1);
_local7 = this.geometry.vertices;
_local8 = this.geometry.faces;
_local9 = (_arg1 / 2);
_local10 = (_arg2 / 2);
_local11 = (_arg1 / _local3);
_local12 = (_arg2 / _local4);
_local13 = 0;
while (_local13 < (_local3 + 1)) {
_local17 = 0;
while (_local17 < _local6) {
_local18 = ((_local13 * _local11) - _local9);
_local19 = ((_local17 * _local12) - _local10);
_local7.push(new Vertex3D(_local18, _local19, 0));
_local17++;
};
_local13++;
};
_local13 = 0;
while (_local13 < _local3) {
_local17 = 0;
while (_local17 < _local4) {
_local20 = _local7[((_local13 * _local6) + _local17)];
_local21 = _local7[((_local13 * _local6) + (_local17 + 1))];
_local22 = _local7[(((_local13 + 1) * _local6) + _local17)];
_local14 = new NumberUV((_local13 / _local3), (_local17 / _local4));
_local15 = new NumberUV((_local13 / _local3), ((_local17 + 1) / _local4));
_local16 = new NumberUV(((_local13 + 1) / _local3), (_local17 / _local4));
_local8.push(new Face3D([_local20, _local22, _local21], null, [_local14, _local16, _local15]));
_local20 = _local7[(((_local13 + 1) * _local6) + (_local17 + 1))];
_local21 = _local7[(((_local13 + 1) * _local6) + _local17)];
_local22 = _local7[((_local13 * _local6) + (_local17 + 1))];
_local14 = new NumberUV(((_local13 + 1) / _local3), ((_local17 + 1) / _local4));
_local15 = new NumberUV(((_local13 + 1) / _local3), (_local17 / _local4));
_local16 = new NumberUV((_local13 / _local3), ((_local17 + 1) / _local4));
_local8.push(new Face3D([_local20, _local22, _local21], null, [_local14, _local16, _local15]));
_local17++;
};
_local13++;
};
this.geometry.ready = true;
}
}
}//package org.papervision3d.objects
Section 42
//MovieScene3D (org.papervision3d.scenes.MovieScene3D)
package org.papervision3d.scenes {
import org.papervision3d.core.proto.*;
import org.papervision3d.objects.*;
import flash.display.*;
import flash.utils.*;
public class MovieScene3D extends Scene3D {
private var spriteList:Dictionary;
private var containerList:Array;
public function MovieScene3D(_arg1:Sprite){
super(_arg1);
this.containerList = new Array();
spriteList = new Dictionary();
}
override public function addChild(_arg1:DisplayObject3D, _arg2:String=null):DisplayObject3D{
_arg1 = super.addChild(_arg1, _arg2);
_arg1.container = new Sprite();
container.addChild(_arg1.container);
this.containerList.push(_arg1.container);
spriteList[_arg1] = _arg1.container;
return (_arg1);
}
public function getSprite(_arg1:DisplayObject3D):Sprite{
return (spriteList[_arg1]);
}
override protected function renderObjects(_arg1:Boolean):void{
var _local2:Number;
var _local3:Sprite;
var _local4:Array;
var _local5:Number;
var _local6:DisplayObject3D;
var _local7:Array;
var _local8:Object;
_local2 = this.objects.length;
_local4 = this.containerList;
_local5 = 0;
while ((_local3 = _local4[_local5++])) {
_local3.graphics.clear();
};
_local7 = this.objects;
_local5 = _local7.length;
if (_arg1){
while ((_local6 = _local7[--_local5])) {
if (_local6.visible){
container.addChild(_local6.container);
_local6.render(this);
};
};
} else {
while ((_local6 = _local7[--_local5])) {
if (_local6.visible){
_local6.render(this);
};
};
};
_local8 = this.stats;
_local8.performance = (getTimer() - _local8.performance);
}
}
}//package org.papervision3d.scenes
Section 43
//Scene3D (org.papervision3d.scenes.Scene3D)
package org.papervision3d.scenes {
import org.papervision3d.core.proto.*;
import org.papervision3d.objects.*;
import flash.display.*;
import flash.utils.*;
public class Scene3D extends SceneObject3D {
public function Scene3D(_arg1:Sprite){
super(_arg1);
}
override protected function renderObjects(_arg1:Boolean):void{
var _local2:DisplayObject3D;
var _local3:Array;
var _local4:Number;
var _local5:Object;
this.container.graphics.clear();
_local3 = this.objects;
_local4 = _local3.length;
while ((_local2 = _local3[--_local4])) {
if (_local2.visible){
_local2.render(this);
};
};
_local5 = this.stats;
_local5.performance = (getTimer() - _local5.performance);
}
}
}//package org.papervision3d.scenes
Section 44
//Papervision3D (org.papervision3d.Papervision3D)
package org.papervision3d {
public class Papervision3D {
public static var useDEGREES:Boolean = true;
public static var VERBOSE:Boolean = true;
public static var AUTHOR:String = "(c) 2006-2007 Copyright by Carlos Ulloa | papervision3d.org | carlos@papervision3d.org";
public static var DATE:String = "09.05.07";
public static var NAME:String = "Papervision3D";
public static var VERSION:String = "Beta RC1";
public static var usePERCENT:Boolean = false;
public static function log(_arg1:String):void{
if (Papervision3D.VERBOSE){
};
}
}
}//package org.papervision3d
Section 45
//btn_mc_24 (uniqlotry_fla.btn_mc_24)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class btn_mc_24 extends MovieClip {
public var music:MovieClip;
public var ja:MovieClip;
public var en:MovieClip;
public function btn_mc_24(){
addFrameScript(0, frame1);
}
function frame1(){
if (MovieClip(parent).isEng == "ja"){
ja.gotoAndStop(2);
ja.mouseEnabled = false;
} else {
en.gotoAndStop(2);
en.mouseEnabled = false;
};
}
}
}//package uniqlotry_fla
Section 46
//english_30 (uniqlotry_fla.english_30)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class english_30 extends MovieClip {
public var Root:MovieClip;
public function english_30(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
if (this.mouseEnabled == true){
gotoAndStop(1);
};
}
function frame1(){
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_UP, CLICK);
Root = MovieClip(parent.parent);
stop();
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
}
public function CLICK(_arg1:Event){
var _local2:Se;
_local2 = new Se();
_local2.play(0, 1);
Root.LANG();
this.mouseEnabled = false;
MovieClip(parent).ja.mouseEnabled = true;
MovieClip(parent).ja.gotoAndStop(1);
gotoAndStop(2);
}
public function OV(_arg1){
gotoAndStop(2);
}
}
}//package uniqlotry_fla
Section 47
//fukidashi_7 (uniqlotry_fla.fukidashi_7)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class fukidashi_7 extends MovieClip {
public var arrow:MovieClip;
public var text:TextField;
public var bg:MovieClip;
public function fukidashi_7(){
addFrameScript(0, frame1);
}
public function TEXT(_arg1:String){
if (_arg1.slice((_arg1.length - 1)) == "."){
text.text = _arg1;
} else {
text.text = (_arg1 + ".");
};
text.autoSize = "center";
bg.width = (text.width + 20);
bg.x = (-(bg.width) / 2);
this.scaleX = 0.1;
this.scaleY = 0.1;
Tweener.addTween(this, {scaleX:1, scaleY:1, time:0.4, transition:"easeInOutBack"});
}
function frame1(){
ColorShortcuts.init();
TextShortcuts.init();
}
}
}//package uniqlotry_fla
Section 48
//japanese_29 (uniqlotry_fla.japanese_29)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class japanese_29 extends MovieClip {
public var Root:MovieClip;
public function japanese_29(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
if (this.mouseEnabled == true){
gotoAndStop(1);
};
}
function frame1(){
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_UP, CLICK);
Root = MovieClip(parent.parent);
stop();
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
}
public function CLICK(_arg1:Event){
var _local2:Se;
_local2 = new Se();
_local2.play(0, 1);
Root.LANG();
this.mouseEnabled = false;
MovieClip(parent).en.mouseEnabled = true;
MovieClip(parent).en.gotoAndStop(1);
gotoAndStop(2);
}
public function OV(_arg1){
gotoAndStop(2);
}
}
}//package uniqlotry_fla
Section 49
//line_15 (uniqlotry_fla.line_15)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class line_15 extends MovieClip {
public function line_15(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package uniqlotry_fla
Section 50
//loading_1 (uniqlotry_fla.loading_1)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class loading_1 extends MovieClip {
public var TEXTTOTAL:int;
public var TOTAL:int;
public var TEXT;
public var TITLE:String;
public var Result:int;
public var i:int;
public var n:int;
public var flg:int;
public var num:TextField;
public var RANDOM;
public var time:int;
public var loadNum:Number;
public var RNUM:int;
public function loading_1(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
i = 0;
n = 0;
time = 0;
TITLE = "UNIQLO TRY";
RANDOM = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!#$%&/@";
TEXT = "RESEARCH ENTERTAINMENT.";
TOTAL = TITLE.length;
TEXTTOTAL = TEXT.length;
this.addEventListener(Event.ENTER_FRAME, LOAD);
loadNum = 0;
flg = 0;
}
public function COPY(_arg1:int){
num.text = (("N=" + (Math.round(loadNum) + _arg1)) + "/343");
}
public function LOAD(_arg1){
loadNum = Math.round(((loaderInfo.bytesLoaded / loaderInfo.bytesTotal) * 150));
if (Math.round(loadNum) < 10){
num.text = (("N=00" + Math.round(loadNum)) + "/343");
} else {
if (Math.round(loadNum) < 100){
num.text = (("N=0" + Math.round(loadNum)) + "/343");
} else {
num.text = (("N=" + Math.round(loadNum)) + "/343");
};
};
if (Math.ceil(loadNum) >= 150){
num.text = (("N=" + 150) + "/343");
if (flg == 0){
if (MovieClip(parent).currentFrame == 1){
MovieClip(parent).gotoAndStop(2);
removeEventListener(Event.ENTER_FRAME, LOAD);
};
this.alpha = (this.alpha - 0.05);
if (this.alpha < 0){
removeEventListener(Event.ENTER_FRAME, LOAD);
this.visible = false;
};
};
};
}
}
}//package uniqlotry_fla
Section 51
//logo_8 (uniqlotry_fla.logo_8)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class logo_8 extends MovieClip {
public var SAry:Array;
public var search_results:Search_results;
public var pull3:MovieClip;
public var pull4:MovieClip;
public var search:MovieClip;
public var pull2:MovieClip;
public var cover:MovieClip;
public var pull1:MovieClip;
public function logo_8(){
addFrameScript(0, frame1, 1, frame2);
}
function frame1(){
SAry = [0, 0, 0, 0, 0, 0];
cover.visible = false;
ColorShortcuts.init();
}
function frame2(){
stop();
COLORCHANGE(1);
}
public function COLORCHANGE(_arg1){
var _local2:*;
_local2 = 1;
while (_local2 <= 4) {
this[("pull" + _local2)].COLOR(1);
_local2++;
};
Tweener.removeTweens(search.bg);
Tweener.removeTweens(search.text);
Tweener.removeTweens(search_results);
Tweener.addTween(search.bg, {_color:("0x" + MovieClip(parent).COL), time:1, transition:"linear"});
if (search.bg.currentFrame == 1){
Tweener.addTween(search.text, {_color:("0x" + MovieClip(parent).COL), time:1, transition:"linear"});
} else {
Tweener.addTween(search.text, {_color:"0xFFFFFF", time:1, transition:"linear"});
};
Tweener.addTween(search_results, {_color:("0x" + MovieClip(parent).COL), time:1, transition:"linear"});
}
public function LANG(){
pull4.LANG();
}
}
}//package uniqlotry_fla
Section 52
//MainTimeline (uniqlotry_fla.MainTimeline)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import org.papervision3d.core.proto.*;
import org.papervision3d.materials.*;
import org.papervision3d.objects.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import jp.co.digitalforest.visionalist.VL51.*;
import flash.utils.*;
import flash.net.*;
import org.papervision3d.scenes.*;
import org.papervision3d.cameras.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class MainTimeline extends MovieClip {
public var xml:String;
public var Q1Cloud:Number;
public var A1Pos:Array;
public var Q5NumAry:Array;
public var A1Array:Array;
public var VFLG;
public var Distance:Number;
public var Q9_4XARY:Array;
public var Q14_3YARY;
public var Q12_6YARY:Array;
public var ShapeNum:int;
public var speed;
public var FLV;
public var netStream2:NetStream;
public var Q14_2XARY;
public var Q12_5XARY:Array;
public var Q5Obj:Object;
public var Q14NumAry:Array;
public var kouho:int;
public var flg:Number;
public var i:int;
public var m:int;
public var j:int;
public var video:Video;
public var planeSize:int;
public var A2Pos:Array;
public var QARY:Array;
public var EN10:Array;
public var EN11:Array;
public var EN12:Array;
public var EN13:Array;
public var EN14:Array;
public var EN16:Array;
public var EN17:Array;
public var container:Sprite;
public var scene:MovieScene3D;
public var EN15:Array;
public var FOCUSFLG:int;
public var Q9_4YARY:Array;
public var Q11XARY:Array;
public var Q10Obj:Object;
public var EN1:Array;
public var EN2:Array;
public var EN4:Array;
public var Q3TotalAry:Array;
public var EN7:Array;
public var EN8:Array;
public var Q7TotalAry:Array;
public var EN5:Array;
public var EN9:Array;
public var FOCUS:int;
public var Q6Obj:Object;
public var Q9_3XARY:Array;
public var Q12_5YARY:Array;
public var rollrandom2:Number;
public var EN3:Array;
public var EN6:Array;
public var Q10obj:Object;
public var TargetY:int;
public var PosNum:int;
public var TargetX:int;
public var Q7_6XARY:Array;
public var Q12TotalAry:Array;
public var Obj;
public var FPS:int;
public var Q16TotalAry:Array;
public var Q14_1XARY:Array;
public var Q12_4XARY:Array;
public var nowNum;
public var TargetZ:int;
public var Q14_2YARY;
public var Q4NumAry:Array;
public var GraphX:int;
public var GraphY:int;
public var GraphZ:int;
public var Q8_4XARY:Array;
public var myTimer:Timer;
public var ENARY:Array;
public var Q11YARY:Array;
public var checkFlag:Boolean;
public var Q9_3YARY:Array;
public var Q7Obj:Object;
public var planeObj:DisplayObject3D;
public var Q13NumAry:Array;
public var Q7_6YARY:Array;
public var connection2:NetConnection;
public var Q9NumAry:Array;
public var Q9_2XARY:Array;
public var clientObj:Object;
public var FOCUSOBJ;
public var Q7_5XARY:Array;
public var Graph:Sprite;
public var Q12_4YARY:Array;
public var loading:MovieClip;
public var MAP:Object;
public var FILTERING:int;
public var Q14_1YARY:Array;
public var qNum;
public var Q18NumAry:Array;
public var Q12_3XARY:Array;
public var Q8_4YARY:Array;
public var COL;
public var Q8Obj:Object;
public var Q8_3XARY:Array;
public var bmd:BitmapData;
public var FirstTime;
public var Q9_2YARY:Array;
public var Q7_5YARY:Array;
public var perTime:int;
public var mc:Object;
public var Q3NumAry:Array;
public var Q2TotalAry:Array;
public var Q6TotalAry:Array;
public var Q9_1XARY:Array;
public var logo:MovieClip;
public var ShapeObj:DisplayObject3D;
public var Q7_4XARY:Array;
public var na:Array;
public var Q12_3YARY:Array;
public var Q9Obj:Object;
public var Q8_3YARY:Array;
public var Q12NumAry:Array;
public var Q11TotalAry:Array;
public var Q15TotalAry:Array;
public var Q14_7XARY;
public var Q12_2XARY:Array;
public var angleX:Number;
public var angleY:Number;
public var videoTime:int;
public var Q8NumAry:Array;
public var Q8_2XARY:Array;
public var planeByContainer:Dictionary;
public var logonum;
public var A6Pos:Array;
public var Q1:Array;
public var Q2:Array;
public var Q3:Array;
public var Q4:Array;
public var Q5:Array;
public var Q6:Array;
public var Q7:Array;
public var Q8:Array;
public var Q9:Array;
public var Q9_1YARY:Array;
public var Q7_4YARY:Array;
public var Q11_3XARY;
public var Q17NumAry:Array;
public var Q10:Array;
public var Q11:Array;
public var Q12:Array;
public var Q13:Array;
public var Q14:Array;
public var Q15:Array;
public var Q16:Array;
public var Q17:Array;
public var Q12_2YARY:Array;
public var camDis:int;
public var Q8_2YARY:Array;
public var se:Se;
public var isUnicode:Boolean;
public var Q7_3XARY:Array;
public var title:MovieClip;
public var Q12_1XARY:Array;
public var Q14_7YARY;
public var A7Pos:Array;
public var arr:Array;
public var Q14_6XARY;
public var Q2NumAry:Array;
public var maxAlbums:int;
public var Q8_1XARY:Array;
public var Q6_4XARY:Array;
public var english:MovieClip;
public var pos:Number;
public var A16ARY:Array;
public var rotSize:int;
public var Q11_3YARY;
public var Q15Obj:Object;
public var Q7_3YARY:Array;
public var musicTime:int;
public var Q11NumAry:Array;
public var Q11_2XARY;
public var Q15obj:Object;
public var Q7_2XARY:Array;
public var Q1TotalAry:Array;
public var Q9TotalAry:Array;
public var Q7NumAry:Array;
public var Q5TotalAry:Array;
public var Q12_1YARY:Array;
public var Q14_6YARY;
public var Q6_4YARY:Array;
public var trans:SoundTransform;
public var time;
public var Q8_1YARY:Array;
public var Q10TotalAry:Array;
public var Q1Obj:Object;
public var A17ARY:Array;
public var connection:NetConnection;
public var Q14_5XARY;
public var Q12_8XARY:Array;
public var Q16NumAry:Array;
public var Q6_3XARY:Array;
public var Q18TotalAry:Array;
public var Q14TotalAry:Array;
public var Q11_2YARY;
public var loadVtime;
public var Q7_2YARY:Array;
public var TRYXARY:Array;
public var Q11_1XARY;
public var Q1NumAry:Array;
public var camera:Camera3D;
public var speccontainer:Sprite;
public var segment:int;
public var Q2Obj:Object;
public var Q14_5YARY;
public var Q12_8YARY:Array;
public var typo:Object;
public var Q6_3YARY:Array;
public var Q10NumAry:Array;
public var isEng;
public var Q14_4XARY;
public var color;
public var Q2obj:Object;
public var Q6NumAry:Array;
public var Q6_2XARY:Array;
public var Q12_7XARY:Array;
public var Fmaterial:BitmapMaterial;
public var TRYYARY:Array;
public var rollrandom:Number;
public var Q11_1YARY;
public var num:int;
public var stream:NetStream;
public var wNum;
public var Q3Obj:Object;
public var Q15NumAry:Array;
public var SearchAry:Array;
public var Q4TotalAry:Array;
public var Q8TotalAry:Array;
public var paperSize:Number;
public var spec:MovieClip;
public var Q14_4YARY;
public var Q12_7YARY:Array;
public var SPEC:int;
public var Q6_2YARY:Array;
public var FbmpData:BitmapData;
public var Data:Array;
public var cloudSize:int;
public var Q13TotalAry:Array;
public var Q12_6XARY:Array;
public var ZOOM:int;
public var Q17TotalAry:Array;
public var Q14_3XARY;
public var loaderObj:XMLLoader;
public var QUESTION:int;
public var question:MovieClip;
public var Q4Obj:Object;
public var link:MovieClip;
public var RAD;
public function MainTimeline(){
addFrameScript(0, frame1, 1, frame2, 2, frame3, 3, frame4, 4, frame5);
}
public function STOP(){
var _local1:cover;
pos = link.music.channel.position;
link.music.channel.stop();
myTimer.removeEventListener("timer", timerHandler);
this.removeEventListener(Event.ENTER_FRAME, loop);
_local1 = new cover();
_local1.bg.width = stage.stageWidth;
_local1.bg.height = stage.stageHeight;
addChild(_local1);
Tweener.addTween(_local1.retry, {_color:("0x" + COL), time:0, transition:"linear"});
_local1.x = 500;
_local1.y = 300;
}
public function PERCENT(_arg1){
var _local2:int;
var _local3:ColorMaterial;
var _local4:*;
_local2 = 0;
while (_local2 < 7) {
_local3 = new ColorMaterial(0xFFFFFF);
_local4 = new Plane(_local3, 1, 1, 1, 1);
_local4.name = ("d" + _local2);
scene.addChild(_local4);
_local2++;
};
}
public function ZOOMIN(){
var target:DisplayObject3D;
var goPosition:DisplayObject3D;
var goTarget:DisplayObject3D;
planeObj.visible = false;
Graph.visible = false;
if (FOCUS != 1){
target = camera.target;
nowNum = arr.splice(0, 1);
if (nowNum > num){
nowNum = Math.floor((Math.random() * num));
};
if (isEng == "en"){
english.visible = true;
if ((((((((((QUESTION == 3)) || ((QUESTION == 11)))) || ((QUESTION == 12)))) || ((QUESTION == 13)))) || ((QUESTION == 14)))){
english.TEXT(scene.getChildByName(("AlbumP" + nowNum)).extra[("EN" + QUESTION)]);
} else {
if ((((QUESTION == 10)) && ((scene.getChildByName(("AlbumP" + nowNum)).extra[("A" + QUESTION)] == 5)))){
english.TEXT(scene.getChildByName(("AlbumP" + nowNum)).extra[("EN" + QUESTION)]);
} else {
english.TEXT(this[("EN" + QUESTION)][(scene.getChildByName(("AlbumP" + nowNum)).extra[("A" + QUESTION)] - 1)]);
};
};
};
FLV = (((((scene.getChildByName(("AlbumP" + nowNum)).extra.Id + "/") + scene.getChildByName(("AlbumP" + nowNum)).extra.Id) + "-") + QUESTION) + ".flv");
stream.bufferTime = 1;
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
connection.connect(null);
stream.play(("flv/" + FLV));
video.attachNetStream(stream);
VFLG = 1;
Tweener.removeTweens(camera);
plane = scene.getChildByName(("AlbumP" + nowNum));
camera.extra.goPosition.copyPosition(target);
camera.extra.goTarget.copyPosition(plane);
goPosition = camera.extra.goPosition;
goTarget = camera.extra.goTarget;
TargetX = (-(Math.sin((plane.rotationY * RAD))) * Math.abs((Math.cos((plane.rotationX * RAD)) * 100)));
TargetY = (-(Math.sin((plane.rotationX * RAD))) * 100);
TargetZ = (-(Math.cos((plane.rotationY * RAD))) * Math.abs((Math.cos((plane.rotationX * RAD)) * 100)));
if ((((i >= maxAlbums)) && ((musicTime > 2)))){
Tweener.removeTweens(plane);
Tweener.addTween(plane, {x:(goTarget.x + TargetX), y:(goTarget.y + TargetY), z:(goTarget.z + TargetZ), time:0.4, delay:0.8, transition:"easeOutQuint"});
};
TargetX = (-(Math.sin((plane.rotationY * RAD))) * Math.abs((Math.cos((plane.rotationX * RAD)) * (camDis + 100))));
TargetY = (-(Math.sin((plane.rotationX * RAD))) * (camDis + 100));
TargetZ = (-(Math.cos((plane.rotationY * RAD))) * Math.abs((Math.cos((plane.rotationX * RAD)) * (camDis + 100))));
Tweener.removeTweens(camera);
Tweener.addTween(camera, {x:((goTarget.x + TargetX) + ((Math.random() * 400) - 200)), y:((goTarget.y + TargetY) + ((Math.random() * 400) - 200)), z:((goTarget.z + TargetZ) + ((Math.random() * 400) - 200)), time:0.4, transition:"easeOutQuint", onComplete:function ():void{
Tweener.addTween(camera, {x:(goTarget.x + TargetX), y:(goTarget.y + TargetY), z:(goTarget.z + TargetZ), time:1.6, transition:"easeOutSine"});
}});
Tweener.addTween(target, {x:goTarget.x, y:goTarget.y, z:goTarget.z, time:1, transition:"easeOutQuint"});
};
}
public function START(_arg1){
link.music.channel = link.music.sound.play(pos, 999, link.music.trans);
this.removeChildAt((this.numChildren - 1));
cover_mc = null;
if (musicTime > 2){
plane = scene.getChildByName(("AlbumP" + nowNum));
TargetX = (-(Math.sin((plane.rotationY * RAD))) * Math.abs((Math.cos((plane.rotationX * RAD)) * (camDis + 100))));
TargetY = (-(Math.sin((plane.rotationX * RAD))) * (camDis + 100));
TargetZ = (-(Math.cos((plane.rotationY * RAD))) * Math.abs((Math.cos((plane.rotationX * RAD)) * (camDis + 100))));
Tweener.removeTweens(camera);
Tweener.addTween(camera, {x:(plane.x + TargetX), y:(plane.y + TargetY), z:(plane.z + TargetZ), time:1.6, transition:"easeOutSine"});
Tweener.addTween(camera.target, {x:plane.x, y:plane.y, z:plane.z, time:1, transition:"easeOutQuint"});
} else {
Tweener.removeTweens(camera);
Tweener.addTween(camera, {x:0, y:0, z:-3000, time:5, transition:"easeOutSine"});
Tweener.addTween(camera.target, {x:0, y:0, z:0, time:6, transition:"easeOutQuint"});
};
myTimer.addEventListener("timer", timerHandler);
this.addEventListener(Event.ENTER_FRAME, loop);
}
public function timerHandler(_arg1:TimerEvent):void{
var event = _arg1;
if (musicTime == 7){
};
if (musicTime > 7){
musicTime = 0;
QUESTION++;
if (QUESTION > QARY.length){
VLTracer.sendRequest("try_rp");
QUESTION = 1;
} else {
if (QUESTION == 11){
ShapeNum = (Math.floor((Math.random() * 3)) + 1);
} else {
if (QUESTION == 12){
ShapeNum = (Math.floor((Math.random() * 8)) + 1);
} else {
if (QUESTION == 14){
ShapeNum = (Math.floor((Math.random() * 7)) + 1);
};
};
};
};
if (QUESTION == 13){
MAP.visible = true;
} else {
MAP.visible = false;
};
question.q.TYPO(QARY[(QUESTION - 1)], ENARY[(QUESTION - 1)]);
if (((((((((!((QUESTION == 3))) && (!((QUESTION == 11))))) && (!((QUESTION == 12))))) && (!((QUESTION == 13))))) && (!((QUESTION == 14))))){
TYPO((this[("Q" + QUESTION)].length - 1));
};
Graph.visible = false;
time = 0;
COLORCHANGE(1);
};
if ((((FOCUSFLG == 1)) && ((musicTime >= 2)))){
musicTime = 0;
QUESTION++;
if (QUESTION == 16){
VLTracer.sendRequest("try_rp");
QUESTION = 1;
};
if (isEng == "en"){
english.visible = true;
if ((((((((((QUESTION == 3)) || ((QUESTION == 11)))) || ((QUESTION == 12)))) || ((QUESTION == 13)))) || ((QUESTION == 14)))){
english.TEXT(scene.getChildByName(("AlbumP" + nowNum)).extra[("EN" + QUESTION)]);
} else {
if ((((QUESTION == 10)) && ((scene.getChildByName(("AlbumP" + nowNum)).extra[("A" + QUESTION)] == 5)))){
english.TEXT(scene.getChildByName(("AlbumP" + nowNum)).extra[("EN" + QUESTION)]);
} else {
english.TEXT(this[("EN" + QUESTION)][(scene.getChildByName(("AlbumP" + nowNum)).extra[("A" + QUESTION)] - 1)]);
};
};
};
FLV = (((((scene.getChildByName(("AlbumP" + nowNum)).extra.Id + "/") + scene.getChildByName(("AlbumP" + nowNum)).extra.Id) + "-") + QUESTION) + ".flv");
stream.bufferTime = 1;
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
connection.connect(null);
stream.play(("flv/" + FLV));
video.attachNetStream(stream);
VFLG = 1;
if (QUESTION > QARY.length){
QUESTION = 1;
} else {
if (QUESTION == 11){
ShapeNum = (Math.floor((Math.random() * 3)) + 1);
} else {
if (QUESTION == 12){
ShapeNum = (Math.floor((Math.random() * 8)) + 1);
} else {
if (QUESTION == 14){
ShapeNum = (Math.floor((Math.random() * 7)) + 1);
};
};
};
};
if (QUESTION == 13){
MAP.visible = true;
} else {
MAP.visible = false;
};
question.q.TYPO(QARY[(QUESTION - 1)], ENARY[(QUESTION - 1)]);
if (((((((((!((QUESTION == 3))) && (!((QUESTION == 11))))) && (!((QUESTION == 12))))) && (!((QUESTION == 13))))) && (!((QUESTION == 14))))){
TYPO((this[("Q" + QUESTION)].length - 1));
};
Graph.visible = false;
COLORCHANGE(1);
i = 0;
} else {
if (num >= maxAlbums){
paper = scene.getChildByName(("AlbumP" + nowNum));
if (FILTERING != 0){
if (paper.extra.Search == 1){
Tweener.addTween(paper, {x:paper.extra.TARGET.x, y:paper.extra.TARGET.y, z:paper.extra.TARGET.z, rotationX:paper.extra.TARGET.rotationX, rotationY:paper.extra.TARGET.rotationY, rotationZ:paper.extra.TARGET.rotationZ, time:0.5, transition:"easeOutQuint"});
};
} else {
Tweener.addTween(paper, {x:paper.extra.TARGET.x, y:paper.extra.TARGET.y, z:paper.extra.TARGET.z, rotationX:paper.extra.TARGET.rotationX, rotationY:paper.extra.TARGET.rotationY, rotationZ:paper.extra.TARGET.rotationZ, time:0.5, transition:"easeOutQuint"});
};
if (musicTime > 2){
ZOOMIN();
} else {
if (musicTime == 0){
english.visible = false;
if (FILTERING != 0){
makeIndependentNumArr(SearchAry.length, 5);
} else {
makeIndependentNumArr(maxAlbums, 5);
};
i = 0;
Tweener.removeTweens(camera);
Tweener.addTween(camera, {x:0, y:0, z:-1500, time:1, transition:"easeInQuint", onComplete:function ():void{
Tweener.addTween(camera, {x:0, y:0, z:-3000, time:5, transition:"easeOutSine"});
}});
Tweener.addTween(camera.target, {x:0, y:0, z:0, time:6, transition:"easeOutQuint"});
};
};
};
};
musicTime++;
}
function frame1(){
VLTracer.sendRequest("try_top");
stop();
ColorShortcuts.init();
TextShortcuts.init();
COL = "FF0000";
color = new colorBar();
bmd = new BitmapData(color.width, color.height, false, 0);
bmd.draw(color);
Tweener.addTween(loading, {_color:("0x" + COL), time:0, transition:"linear"});
}
public function netStatusHandler(_arg1:NetStatusEvent):void{
VFLG = 1;
switch (_arg1.info.code){
case "NetConnection.Connect.Success":
stream.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, asyncErrorHandler);
video.attachNetStream(stream);
break;
case "NetStream.Play.StreamNotFound":
break;
case "NetStream.Play.Stop":
break;
case "NetStream.Play.Start":
planeObj.visible = true;
break;
};
}
function frame2(){
se = new Se();
isEng = "ja";
if (loaderInfo.parameters.isEng == "en"){
isEng = "en";
};
Q1Obj = new Object();
Q2Obj = new Object();
Q3Obj = new Object();
Q4Obj = new Object();
Q5Obj = new Object();
Q6Obj = new Object();
Q7Obj = new Object();
Q8Obj = new Object();
Q9Obj = new Object();
Q10Obj = new Object();
Q15Obj = new Object();
Q1NumAry = new Array();
Q2NumAry = new Array();
Q3NumAry = new Array();
Q4NumAry = new Array();
Q5NumAry = new Array();
Q6NumAry = new Array();
Q7NumAry = new Array();
Q8NumAry = new Array();
Q9NumAry = new Array();
Q10NumAry = new Array();
Q11NumAry = new Array();
Q12NumAry = new Array();
Q13NumAry = new Array();
Q14NumAry = new Array();
Q15NumAry = new Array();
Q16NumAry = new Array();
Q17NumAry = new Array();
Q18NumAry = new Array();
Q1TotalAry = new Array();
Q2TotalAry = new Array();
Q3TotalAry = new Array();
Q4TotalAry = new Array();
Q5TotalAry = new Array();
Q6TotalAry = new Array();
Q7TotalAry = new Array();
Q8TotalAry = new Array();
Q9TotalAry = new Array();
Q10TotalAry = new Array();
Q11TotalAry = new Array();
Q12TotalAry = new Array();
Q13TotalAry = new Array();
Q14TotalAry = new Array();
Q15TotalAry = new Array();
Q16TotalAry = new Array();
Q17TotalAry = new Array();
Q18TotalAry = new Array();
Q1 = ["快適", "やや快適", "かわらない", "ちょっと不安", "不安"];
Q2 = ["かなりフィットしてます", "フィットしてます", "もっとフィットしてほしいです"];
Q3 = [""];
Q4 = ["毎日", "3日に一度ぐらい", "週に一度ぐらい", "たまに"];
Q5 = ["家や近所へ", "旅行", "ヨガ", "スポーツなどのアウトドア", "オフィス", "ショッピング", "ドレスアップの重ね着"];
Q6 = ["高い", "ちょっと高い", "満足", "大満足"];
Q7 = ["0枚", "1枚", "2枚", "3枚", "4枚", "5枚以上"];
Q8 = ["チューブトップ", "タンクトップ", "キャミソール", "全部"];
Q9 = ["10分未満", "10分~20分", "20分~30分", "30分以上"];
Q10 = ["ブランド", "品質", "デザイン", "価格", "その他"];
Q11 = [""];
Q12 = [""];
Q13 = [""];
Q14 = [""];
Q15 = ["~1万円", "1~2万円", "2~3万円", "3~4万円", "4万円~"];
Q16 = ["ナデ肩", "ちょっとナデ肩", "普通", "ちょっとイカリ肩", "イカリ肩"];
Q17 = ["ぽっちゃり", "ふつうちっちゃい", "大柄", "筋肉質", "ちょっとやせ型", "ふくよか", "ちょうどいい", "大きい", "ボンキュッボン"];
EN1 = ["Very comfortable", "Comfortable", "Feels the same", "Slightly uncomfortable", "Uncomfortable"];
EN2 = ["Quite well", "They fit", "Want them to fit better"];
EN3 = [""];
EN4 = ["Every day", "About once every three days", "About once a week", "Occasionally"];
EN5 = ["At home or around my neighborhood", "On vacation", "Yoga", "Sports or outdoor activities", "For work", "For shopping", "Underneath a dressy outfit"];
EN6 = ["High", "Slightly high", "Satisfied", "Very satisfied"];
EN7 = ["0", "1", "2", "3", "4", "More than 5"];
EN8 = ["Tube top", "Tank top", "Camisole", "All"];
EN9 = ["Less than 10 minutes", "10-20 minutes", "20-30 minutes", "More than 30 minutes"];
EN10 = [" Brand", "Quality", "Design", "Price", "Other"];
EN11 = [""];
EN12 = [""];
EN13 = [""];
EN14 = [""];
EN15 = ["Less than 10,000 yen", "1-20,000 yen", "2-30,000 yen", "3-40,000 yen", "More than 40,000 yen"];
EN16 = ["SLOPING SHOULDERS", "SLIGHTLY SLOPING SHOULDERS", "NORMAL SHOULDERS", "SLIGHTLY SQUARE SHOULDERS", "SQUARE SHOULDERS"];
EN17 = ["A LITTLE CHUBBY", "AVERAGE BUILD", "SMALL", "TALL", "WELL MUSCLED", "A LITTLE SLIM", "PLUMP", "JUST FINE", "LARGE", "VOLUPTUOUS"];
A1Array = [0];
Q1Cloud = 250;
A1Pos = new Array();
A2Pos = [800, 1200, 0, -1200];
A6Pos = [800, 1200, 500, -1200];
A7Pos = [-1400, -1200, -600, 300, 500, 1000];
play();
}
function frame5(){
logo.alpha = 0;
title.alpha = 0;
link.alpha = 0;
question.alpha = 0;
Tweener.addTween(title, {alpha:1, time:0.5, transition:"linear"});
Tweener.addTween(link, {alpha:1, time:0.5, transition:"linear"});
Tweener.addTween(question, {alpha:1, time:0.5, transition:"linear"});
Tweener.addTween(loading, {alpha:0, time:0.5, transition:"linear", onComplete:function ():void{
loading.visible = false;
}});
Tweener.addTween(question.icon, {_color:("0x" + COL), time:0, transition:"linear"});
Tweener.addTween(question.q, {_color:("0x" + COL), time:0, transition:"linear"});
Tweener.addTween(question.en, {_color:("0x" + COL), time:0, transition:"linear"});
Tweener.addTween(title, {_color:("0x" + COL), time:0, transition:"linear"});
Tweener.addTween(spec.bg, {_color:("0x" + COL), time:0, transition:"linear"});
Tweener.addTween(english.bg, {_color:("0x" + COL), time:0, transition:"linear"});
Tweener.addTween(english.arrow, {_color:("0x" + COL), time:0, transition:"linear"});
Tweener.addTween(link, {_color:("0x" + COL), time:0, transition:"linear"});
video = new Video();
spec.addChild(video);
video.x = (video.y = 10);
video.width = 100;
video.height = 100;
addChild(Graph);
question.q.TYPO(QARY[(QUESTION - 1)], ENARY[(QUESTION - 1)]);
Tweener.addTween(Graph, {_color:("0x" + COL), time:0, transition:"linear"});
PERCENT(7);
Graph.visible = false;
if (((((((((!((QUESTION == 3))) && (!((QUESTION == 11))))) && (!((QUESTION == 12))))) && (!((QUESTION == 13))))) && (!((QUESTION == 14))))){
TYPO((this[("Q" + QUESTION)].length - 1));
};
addChild(title);
addChild(spec);
addChild(english);
addChild(question);
addChild(logo);
addChild(link);
english.visible = false;
Tweener.addTween(camera, {x:0, y:0, z:-1000, time:1, transition:"easeInQuint", onComplete:function ():void{
Tweener.addTween(camera, {x:0, y:0, z:-3000, time:5, transition:"easeOutExpo"});
}});
Tweener.addTween(camera.target, {x:0, y:0, z:0, time:6, transition:"easeOutQuint"});
VFLG = 0;
this.addEventListener(Event.ENTER_FRAME, loop);
myTimer = new Timer(2000);
myTimer.addEventListener("timer", timerHandler);
myTimer.start();
pos = 0;
connection2 = new NetConnection();
connection2.connect(null);
netStream2 = new NetStream(connection2);
loadVtime = 0;
perTime = 0;
trans = netStream2.soundTransform;
trans.volume = 0;
netStream2.soundTransform = trans;
na = [];
j = 1;
checkFlag = false;
m = 0;
makeIndependentNumArr(maxAlbums, 5);
}
function frame4(){
stop();
planeByContainer = new Dictionary();
paperSize = 0.45;
cloudSize = 3000;
rotSize = 360;
wNum = Math.ceil((Math.sqrt((maxAlbums / 2)) * 2));
num = 0;
rollrandom = 0;
rollrandom2 = 0;
angleX = 0;
angleY = 0;
Distance = 0;
camDis = 350;
flg = 0;
ZOOM = 1;
RAD = (Math.PI / 180);
QUESTION = 1;
SPEC = 1;
nowNum = 0;
time = 0;
FirstTime = 480;
speed = 2;
logonum = 0;
planeSize = 100;
segment = 1;
connection = new NetConnection();
connection.connect(null);
stream = new NetStream(connection);
clientObj = new Object();
stream.client = clientObj;
videoTime = 0;
i = 0;
FPS = 30;
FILTERING = 0;
FOCUS = 0;
FOCUSFLG = 0;
musicTime = 1;
Q2obj = new Object();
Q2obj.a1 = 0;
Q2obj.a2 = 0;
Q2obj.a3 = 0;
Q10obj = new Object();
Q10obj.a1 = 0;
Q10obj.a2 = 0;
Q10obj.a3 = 0;
Q10obj.a4 = 0;
Q10obj.a5 = 0;
Q15obj = new Object();
Q15obj.a1 = 0;
Q15obj.a2 = 0;
Q15obj.a3 = 0;
Q15obj.a4 = 0;
Q15obj.a5 = 0;
mc = new Object();
typo = new Object();
Graph = new Sprite();
qNum = 3;
ShapeNum = (Math.floor((Math.random() * 8)) + 1);
ShapeObj = new DisplayObject3D();
TRYXARY = [-371, 355, -272, 249, -282, 184, -11, -278, 249, 88, -181, 360, -91, 247, 249, -54, 249, -336, 379, -56, 34, -254, -181, -319, 183, -372, -280, -265, 360, 354, -185, 383, -224, -321, 185, 359, 266, -185, 87, 156, 247, 249, -183, -274, -374, -279, -222, -222, -181, -185, 250, -181, -282, -54, 89, -224, 293, -375, 45, 1, 4, -145, -92, 296, -231, -282, -49, -182, 66, -90, -51, 196, -228, -227, 64, -90, -221, -268, -54, -184, 355, 183, -281, -318, 33, -89, 62, -265, -222, 178, -182, 358, -227, -263, 181, 90, -273, -37, -371, -31, -51, -145, -375, -97, -55, 186, -185, -51, 195, 30, -365, -55, -238, -114, -18, 250, 250, 263, -222, 248, 301, 252, 187, -372, 282, -231, 371, -226, -186, -320, 34, 186, 80, -53, 81, 35, -146, 359, 32, -147, -278, -281, -142, -181, 296, 157, -55, 249, 360, -324, 251, -145, -50, 386, -328, -90, -272, -52, -221, -259, 355, -222, -93, 39, -376, -136, -221, -182, -89, 351, 357, -117, 302, 176, 169, -279, -55, 250, -146, -92, 204, 357, -373, 186, 369, 267, 161, -226, -229, -146, -118, -94, -376, 87, 35, 186, -318, -319, -184, -51, 62, 184, 186, -278, -186, 72, 357, -257, -95, -225, 183, 344, -370, 5, 250, 292, -101, 274, -376, 375, 353, -222, 303, -124, 55, -20, 34, -104, 295, 249, -281, 249, 181, 380, -266, -186, 301, -280, 350, 331, -52, 33, 186, -36, 48, 365, -319, -130, 51, 35, 287, 33, 289, -132, -228, -280, -280, -52, 305, -376, -321, 85, 215, 5, 186, 248, 253, -52, 85, -321, -244, -280, -145, 87, -49, 30, -12, -269, 247, -280, -281, -222, 183, 41, 188, 376, -92, -138, 86, -184, -225, -133, 302, -54, 214, 338, -104, 286, -277, -184, -239, 276, -97, -372, -35, 335, -360, 291, 88, -321, -181, 34, -20, -316, -318, 340, -91, -54, 183, 75, 184, -95, -280, -224, -227, 299, -252, 36, 214, -224, -225, 297, 346, -317, -373, -248, -142, 270, -348, -321, -226, -233, 288];
TRYYARY = [2, -1, 55, 53, 20, 60, -38, -32, -24, 38, -12, -16, 2, -37, -27, 3, 33, -35, 53, 11, -2, 17, 35, 12, -17, 13, 59, 22, -36, -20, 3, 60, 33, 32, 10, 14, 7, -20, -18, 61, -17, 45, 3, 31, 59, 46, -15, -36, 16, 56, 29, -6, 2, -23, 13, -7, -2, 5, -30, -32, -37, 29, 17, -26, -17, 7, -36, -18, 61, -1, 61, 60, -22, -11, -35, 23, 6, 48, 41, -9, -20, 8, 31, 2, -14, 31, -37, 35, 43, 59, 40, -22, -36, 27, 62, 26, 58, -32, -8, -33, 34, -3, 22, 51, -11, 53, 37, -1, 56, 20, -29, 60, -2, 58, -34, -6, 28, 61, 14, 60, 31, 12, 52, 21, 4, -5, 33, 6, -26, -10, -5, 12, 52, 44, -28, 27, -2, -4, 1, 28, 54, 54, -22, -20, 11, 57, 18, -37, -2, -24, 1, -16, 43, 62, -29, -11, 27, -21, -21, 25, -35, -5, 44, -24, 49, -28, 30, -38, 15, 23, -33, 61, 19, 59, 57, 62, 42, -18, 16, 20, 61, -37, -11, -17, 24, 4, 61, 46, -31, 36, -38, 35, 61, 17, -13, -8, 24, -7, 61, 36, 58, 13, 4, 58, 52, 58, 3, 18, -55, 27, -37, 36, -21, -31, -35, -11, -40, 59, 46, 41, 15, 5, -37, -36, 60, -33, 1, 57, -19, 34, -33, 62, 40, 61, 35, -35, 28, 31, 20, 62, 57, -2, -37, -34, 57, 18, -5, 60, -33, -19, 7, 13, -2, -32, -17, 44, -36, 55, 34, 30, -17, 37, 61, -36, 34, 15, 60, 16, 45, 12, 0, -23, 10, -5, -30, 26, -33, 40, -1, -9, -12, 61, -18, 53, 32, 46, -60, 49, 36, 24, 56, 55, 42, 27, 59, 51, -33, 58, 31, 17, -11, 7, -52, 60, -36, 57, -34, 54, -8, 42, 60, 37, -37, 60, 49, 44, -17, -36, 22, -32, -4, -26, 47, 6, -24, -30, 8, 45, 58, -4, 60, 50, 29, 41, 41, 5, 46, 57, -37, 60, 19, -23, 58];
Q8_1XARY = [80, -91, 18, -57, 70, 78, -16, -55, -113, 27, -44, 43, -91, 40, -57, 62, -81, -112, -21, 12, -81, 56, -34, 35, 63, 18, -65, 0, 64, -106, -62, 15, -53, -5, -13, -101, 37, -79, -71, 65, 28, -42, -37, 0, -70, 49, -45, 25, -19, 38, 4, 92, 89, 1, -33, -19, 51, -23, 3, 84, -39, -91];
Q8_1YARY = [137, 102, 211, 150, 118, 180, 181, 239, 115, 112, 111, 110, 189, 130, 192, 129, 141, 93, 0xFF, 175, 209, 190, 193, 231, 153, 141, 111, 0xFF, 202, 145, 127, 189, 172, 164, 202, 168, 147, 157, 173, 101, 167, 226, 145, 216, 226, 168, 209, 247, 234, 202, 113, 116, 92, 145, 170, 113, 222, 136, 236, 159, 249, 120];
Q8_4YARY = [68, -100, 29, 69, 64, -100, -39, -59, 18, 35, 55, -59, -35, -67, 18, -83, 39, 51, -24, 61, -85, 10, -96, -38, -2, -93, -2, 39, -119, -36, -112, 35, -57, -125, -5, -44, -52, 39, -53, 37, 43, -83, -66, -37, 17, -19, 24, 64, -34, -109, -32, 35, 50, -42, 56, -41, 19, 48, 21, 43, 6, -16, 1, -18, -29, 70, -4, 59, -90, 18, -25, 55, 28, 2, -111, -49, 11, -58, -92, 27, -8, 19, 0, 52, -77, 70, 3, 49, -18, -65, -63, -18, -22, -78, -57, -1, 19, 33, 33, 1, -10, 9, -17, -20, -77, 51, 67, -73, 13];
Q8_4XARY = [19, -35, -41, 2, -71, -5, 13, 1, 69, 10, -20, -12, -61, -37, 5, 17, 69, 89, 2, 57, 28, -86, 21, -84, 3, 6, -101, -11, -3, 66, -26, -50, 41, -14, -81, -34, 55, 53, -74, -26, -90, -32, -66, 51, 84, 55, -88, 38, 36, 9, 20, -65, -110, -20, 69, -4, -28, -73, 49, 39, 38, -9, 79, 36, -46, -36, -70, -90, -49, -55, -26, 2, 35, 21, -9, 26, -10, -27, -21, -10, -40, 20, -53, -39, -57, -16, -24, 23, -58, 20, 48, 74, -92, -1, -51, 62, -70, 86, -106, 46, -27, -38, 18, -73, 41, -54, -52, -16, -103];
Q8_3XARY = [136, 217, 98, 106, 130, 78, 185, 200, 226, 125, 103, 126, 188, 123, 126, 174, 86, 152, 83, 195, 142, 134, 72, 124, 168, 70, 135, 162, 25, 206, 39, 225, 222, 112, 107, 190, 159, 147, 176, 144, 92, 169, 196, 112, 207, 99, 162, 94, 132, 64, 113, 114, 217, 173, 117, 183, 105, 78, 156, 150, 85, 181, 124, 54, 139, 42, 154, 206, 116, 202, 174, 182, 166, 154, 152, 136, 59];
Q8_3YARY = [-81, -133, -168, -82, -145, -148, -166, -159, -99, -106, -149, 31, -72, -86, -58, -28, -116, -137, -170, -54, -2, -124, -130, -40, -137, -104, -18, -45, -145, -145, -134, -117, -80, -134, -113, -128, 4, 17, -116, -56, -136, -64, -28, -178, -116, -98, -156, -63, -180, -165, -25, -65, -63, -174, -6, -148, -43, -94, -24, -90, -81, -48, 12, -121, -43, -154, -178, -44, -157, -94, -7, -96, -90, -110, -71, -159, -145];
Q8_2XARY = [-161, -163, -63, -201, -228, -217, -144, -99, -213, -244, -162, -194, -121, -215, -46, -159, -214, -176, -96, -128, -152, -209, -187, -146, -135, -191, -172, -83, -120, -142, -184, -233, -190, -172, -152, -189, -142, -136, -224, -105, -125, -193, -166, -105, -136, -80, -116, -108, -205, -151, -80, -167, -174, -233, -135, -180, -197, -179, -61, -234, -142, -118, -153, -194, -113, -129, -165, -207, -202, -138, -220, -221, -215, -158, -167, -115, -95, -180, -244, -190, -191, -239, -213, -150, -183, -148, -73, -221, -146, -140, -162, -156, -164, -247, -237];
Q8_2YARY = [-4, -147, -157, -107, -140, -164, -126, -170, -136, -85, -183, -68, -105, -29, -149, -121, -93, -58, -130, -153, -159, -77, -22, 14, -86, -5, -102, -145, -58, -144, -39, -124, -100, -12, -57, -170, -45, -20, -42, -88, -128, -49, 14, -153, -171, -118, -176, -114, -172, -175, -161, -164, -79, -55, -64, 4, -121, -142, -139, -150, -106, -87, -42, -137, -73, -40, -89, -38, -17, -182, -77, -117, -56, -133, -45, -136, -100, -119, -133, -83, -155, -98, -152, -81, -182, 27, -129, -101, -23, -4, -70, -102, -27, -109, -71];
Q6_2XARY = [787, 689, 804, 766, 803, 666, 758, 734, 652, 700, 779, 774, 747, 770, 640, 717, 621, 793, 610, 769, 606, 797, 801, 762, 606, 605, 644, 731, 676, 718, 630, 711, 797, 767, 604, 642, 643, 682, 660, 755, 665, 627, 681, 805, 741, 785, 648, 802, 753, 745, 609, 652, 655, 701, 617, 659, 761, 791, 729, 694];
Q6_3XARY = [360, 236, -69, 386, -350, -371, 362, 87, 252, -166, -393, -257, -17, 261, -314, 202, 202, -271, 373, 312, -412, 322, -199, 283, -288, 311, -33, -156, -275, 64, -332, -90, 322, 305, -352, -60, 378, -410, -380, 227, 235, 324, 24, 379, -93, -267, -320, -399, 312, -227, 263, -415, 162, -417, -183, 382, 159, 86, 239, 26, 57, -292, 380, -115, 196, 178, -231, 121, 82, 163, -189, 201, 225, -289, 100, 380, -361, 180, -271, 40, 0x0100, -387, -299, -415, 384, -71, 322, 328, -6, 182, -131, -25, 127, -306, 276, 374, 376, 302, 0x0101, -171, 231, -227, -201, -394, -4, -263, -318, 313, 368, 110, -341, 18, -409, -96, 181, -249, 112, -212, 349, -217, -13, 75, -136, 282, 340, -404, -69, 237, 17, 66, 6, 39, -205, 318, -51, -189, -338, -276, 347, -348, 296, 284, -177, -139, 62, -323, 100, -156, -350, -110, 386, 301, 147, -258, -39, 247, -128, 168, 385, 334, 383, 4, 244, -234, -283, -353, 137, -310, 294, -415, -364, 243, -48, 280, -283, -210, -27, 119, -116, 368, -112, -92, -251, -48, 302, 292, 222, -334, 275, -149, -78, 353, -290, 339, -404, 46, 92, -249, 263, -161, 221, 209, 247, -372, 142, -305, -343, -351, -415, -327, 41, -264, -143, 151, 301, -400, -388, -381, 357, 137, -241, -337, 213];
Q6_4XARY = [-663, -704, -679, -804, -688, -740, -668, -770, -758, -807, -635, -637, -807, -697, -747, -645, -685, -792, -727, -808, -794, -688, -701, -823, -676, -717, -754, -633, -796, -837, -830, -782, -784, -729, -661, -675, -700, -640, -780, -832, -637, -666, -835, -639, -795, -814, -835, -666, -721, -738, -653, -764, -653, -773, -836, -647, -822, -767, -671, -719];
Q6_2YARY = [-53, 15, 5, 53, 27, 5, 47, 10, 94, 111, -62, 86, 105, 41, 85, 112, -47, 61, -33, -68, 28, -30, -15, -24, -18, 18, -70, 110, -87, 14, -58, -91, 46, -33, 0, -32, 49, 12, -81, -10, 103, 76, 110, 20, -85, 74, -16, -14, -79, 0, 46, 55, 44, 14, 64, -3, 98, -41, -89, -89];
Q6_3YARY = [145, -214, -323, 12, 9, 192, -122, 9, 154, -361, -132, 166, -391, -281, 9, 347, 9, -302, 108, 242, -45, -12, -277, -257, -188, -75, 408, 383, -206, 9, -106, 405, 9, -94, -10, -389, 87, -67, 175, -310, 156, -205, 408, -70, 9, 154, 267, -112, -222, 351, 299, -26, 369, 19, 11, -37, 9, -378, 10, -390, -322, 9, -52, 10, -254, 9, -329, 387, 399, -276, -354, -327, -227, 301, -374, 69, 211, -265, 10, 9, 169, 158, -173, -4, 28, 9, -32, 223, -327, 359, -374, -326, -297, -267, -268, -96, -85, -235, 9, 377, 170, 10, 365, 140, 9, 183, -140, -66, -107, -305, -231, 9, 81, -383, -338, 9, 9, 357, -155, -262, 409, -316, -308, 282, -175, -90, 407, -303, -327, -383, 409, -325, 10, -49, 408, 372, -88, 317, 183, -51, 264, -145, -289, 11, 404, -247, 392, -298, -32, 402, -24, -109, -287, 329, -392, -200, 398, -348, -6, -189, 48, -392, 179, -247, 160, -210, -361, -157, -246, 60, -198, 318, -326, 9, 178, -344, 9, -367, -313, 128, -380, -321, -315, 8, 9, -127, 334, 9, -165, -371, -388, 164, -287, 204, 103, -386, -311, -233, -182, 10, 10, -319, -293, -183, 379, 285, -69, 230, 40, -122, 405, -218, 392, -355, 252, 121, -149, -165, -138, 9, 339, 249, -239];
Q6_4YARY = [-6, 46, -75, -19, 97, 110, -25, -55, 108, -62, 10, -14, 78, -84, -90, 54, -47, 93, -91, 1, 47, 61, -56, -39, -39, -90, -60, -3, -70, 18, 46, -80, -46, -90, 4, 91, 107, -30, 62, -24, 30, -65, 29, 43, -32, -52, 9, 81, -61, -61, -51, -87, 67, 103, -8, -39, 63, 47, 45, 108];
Q7_2XARY = [-574, -596, -572, -574, -574, -574, -573];
Q7_3XARY = [-402, -354, -320, -404, -343, -406, -350, -366, -388, -334, -326, -384, -307, -414, -378, -407, -306, -382, -396, -345, -383, -372, -372, -310, -366, -350, -422, -338, -396, -362, -328, -326, -407, -382, -382, -347, -330, -356, -415, -422, -347, -372, -311, -414, -311, -396, -321, -330, -383, -358, -356, -393, -385, -407, -319, -312, -364, -333, -363, -414, -376, -418, -340, -422, -359, -329, -341, -395, -317, -339, -347, -328, -326, -338, -372, -357, -307];
Q7_4XARY = [103, -3, 117, -49, 101, -82, -22, 78, 123, -105, -74, -129, 89, -91, 71, -86, 79, 40, -148, -26, -71, 28, 81, -44, 64, -23, 42, 49, 121, -22, -48, 61, 48, 55, 60, 42, -124, -44, -14, 17, 79, -4, -140, -113, 66, -43, 85, -27, -65, 49, -125, -103, 35, 61, 110, -114, -106, 44, 62, 98, -95, -57, 63, 1, 83, 57, -81, -119, 56, -77, 102, 19, 89, -23, -52, -90, -148, -109, 38, -104, -16, 38, 89, 42, 49, 95, 50, -127, -5, 99, 7, 123, 101, 49, -96, 75, 110, 71, -8, -70, -142, 112, -53, -79, -72, 117, -39, 37, -81, 85, -127, 17, -101, 101, 75, 15, -13, 55, 70, 18, 68, -39, 22, 88, 58, 95, 19, -2, 41, 78, 25, -2, -38, 91, -132, -42, 64, 67, 123, -2, -108, 114, 36, 56, -32, 80, -34, -66, 19, -1, 69, 124, -21, 18, -88, -23, 98, 107, -102, -50, 98, 58, -150, 79, 43, 121, -61, -76, 40, -122, -43, 106, 14, 122, 73, -145, 89, -66];
Q7_5XARY = [317, 306, 318, 318, 317, 292, 276, 317, 318, 318, 280, 319, 281, 266, 319, 303, 317, 300, 305, 286, 334, 315, 297, 276, 290, 272];
Q7_6XARY = [471, 526, 538, 487, 494, 481, 539, 511, 555, 528, 470, 469, 545, 482, 520, 544, 469, 500, 468, 511, 508, 556, 481, 500, 487, 548, 468, 516, 557, 497, 542, 554, 485, 492, 484, 515, 526, 484, 534, 469, 537, 476, 545, 468, 479, 502, 535, 468, 539, 532, 494, 557, 470, 530, 500];
Q7_2YARY = [33, 76, -32, 77, 12, 55, -10];
Q7_3YARY = [68, 4, 33, -91, 33, 96, -82, -21, 88, 20, -92, -92, -87, -75, 95, -58, -69, -74, 105, 95, -64, -33, -8, -92, -92, 20, -87, 83, 77, 109, 39, -74, -51, -24, -52, -2, -67, -68, -77, -91, 114, 118, 81, 82, 46, -73, 94, 102, 113, 3, -13, -51, -37, 83, 65, -65, 2, 51, 96, -63, -16, 68, 15, -70, 118, 69, -69, -37, 51, 8, -92, 88, 24, 109, -70, 13, 65];
Q7_4YARY = [-96, -243, 89, -195, 109, 142, -196, 134, -103, -205, -228, 193, 182, 242, 94, -168, 114, -14, -136, -8, -186, 262, -121, 195, 30, 15, 6, 163, -144, -243, -164, -159, -56, 145, 51, -232, 213, 55, 269, 197, 65, 2, 186, -161, 198, -10, 10, -173, 182, 182, -144, 211, -34, -198, 67, -175, -133, -179, -16, 51, -146, -236, -223, -197, -161, 122, -116, -193, -117, 165, -119, -16, 204, 54, 211, -216, 141, 189, 79, 141, -219, -154, 87, 206, -136, -55, 97, -116, 28, -78, 267, 133, 131, 253, -185, -137, -163, -177, 247, 234, -157, 179, 231, 253, 205, 157, -241, 56, 222, 33, 141, 11, -117, -182, -98, 245, 226, -97, 174, 35, -56, 269, -166, 224, 73, 159, 63, 57, -209, -209, -196, -13, -221, -196, -175, 14, 7, 221, -83, 203, 228, -44, 186, -80, 248, -75, 226, -150, 226, -174, 243, -123, 38, -241, 187, 201, -7, 200, 164, 248, -141, -36, -115, -38, 229, -63, 263, -134, 28, 167, 36, -23, -220, 112, 152, 165, -16, -204];
Q7_5YARY = [10, -22, -13, 50, -41, -21, -23, 65, -3, 58, -11, 28, 8, -21, 19, 51, 37, 51, 66, 19, -22, -24, 40, -2, 29, -13];
Q7_6YARY = [55, 83, -31, 28, 95, 54, -21, -74, -42, -69, 8, 66, 84, 72, 39, 97, 75, 83, 89, 23, -59, 1, 39, -52, 82, -53, 21, 84, -16, -69, -61, 14, -62, -45, 9, 96, -56, 96, -46, -40, 83, -54, 24, 39, -40, 35, 33, 96, -2, 17, 18, -28, 47, 96, 98];
Q9_1XARY = [62, 62, 56, 145, 125, 101, 65, 143, 147, 72, 49, 93, 152, 167, 119, 78, 41, 113, 97, 135, 135, 180, 76, 96, 49, 36, 113, 64, 114, 19, 187, 43, 112, 56, 48, 55, 43, 116, 130, 103, 159, 18, 38, 142, 106, 79, 174, 19, 142, 126, 127, 135, 187, 185, 90, 120, 56, 84, 35, 21, 20, 91, 70, 20, 153, 40, 20, 71, 76, 135, 39, 66, 85, 89, 92, 166, 113, 103, 71, 62, 80, 88, 155, 38, 59, 129, 108, 111, 20, 149, 159, 36, 19, 19, 44, 167, 166, 37];
Q9_1YARY = [39, 185, 113, 17, 46, 82, 165, 35, 123, 39, 158, 20, 87, -3, 66, 149, 166, 158, 169, 127, 137, 60, 116, 10, 69, 24, 27, 87, 99, 154, 14, 133, 6, 140, 90, 176, 149, 131, 3, 149, 85, 81, 39, 52, 110, 15, 79, 26, 106, 147, 24, 93, -8, 36, 99, 118, 18, 86, 76, 42, 133, 114, 75, 112, 70, 191, 60, 14, 57, 72, 101, 100, 156, 130, 41, 97, 80, 58, 141, 130, 177, 65, 111, 54, 61, 115, 129, 44, 95, -3, 58, 113, 194, 172, 40, 22, 41, 176];
Q9_2XARY = [2, -105, -21, 104, -71, 108, 76, -94, 43, -167, 39, -85, 8, -167, 110, 16, -72, -78, 37, 3, -106, -16, -78, 137, -3, -90, -134, -122, -110, -159, 29, -127, -161, -65, -100, -49, 142, 15, 106, 81, -64, -14, 91, 100, 94, 61, -71, 89, 136, -110, 164, -106, 98, -141, 122, 181, -59, 155, -50, -33, 18, -54, -155, -9, 33, 4, -9, 52, -117, -65, -135, 173, -115, -143, 167, 24, -84, -138, -35, 36, -146, 44, 31, 147, -123, 153, 66, -9, 142, 46, 59, -6, 3, -29, -175, -93, -51, -70, -45, -79, 35, -93, 108, -60, 74, -46, 89, 57, 25, 52, 89, -34, 42, -126, 84, 105, -182, -16, -23, -132, 79, -11, 38, -59, 2, -27, 57, -162, -154, -19, 5, -43, 19, -134, 36, 14, 51, -149, 76, -68, -72, -51, 158, 128, -32, -81, -107, 81, -181, 129, 57, -91, 20, -125, 118, -160, 119, 21, 69, 107, 129, 22, -175, -34, -144, -71, -44, -19, -178, -114, -120, 8, -91, 56, -52, 63, -44];
Q9_2YARY = [-153, -3, -93, -84, -97, -69, -137, -71, -108, 3, -99, -114, -48, -55, -29, -86, -127, -18, -150, -171, -61, -111, -65, -92, -140, -4, 30, 13, 24, -73, -139, -118, 15, -149, -140, -99, -33, -63, -142, -117, -12, -52, -61, -101, -134, -108, 3, -76, -49, -29, -79, -107, -24, -55, -91, -41, -36, -35, -32, -37, -152, -130, 35, -36, -66, -113, -62, -145, -12, -159, -71, -60, -86, 14, -35, -9, -48, -106, -166, -146, -24, -74, -48, -68, -98, -96, -38, -3, -109, -64, -162, -125, -76, 3, -36, -122, -83, -69, -14, -31, -12, -24, -116, -92, -156, -53, -150, -49, -82, -22, -115, -87, -169, -88, -40, -49, 4, -173, -74, -23, -22, -89, -121, -54, -94, -128, -15, -20, -5, -20, -25, -146, -32, -7, -35, -137, -163, -91, -66, -118, -81, 9, -52, -70, -56, -150, -47, -93, 24, -30, -128, -92, -99, -42, -131, -40, -50, -123, -84, -91, -118, -172, 41, -110, -37, 13, -117, -149, -15, -130, -65, -8, 17, -93, -162, -60, -68];
Q9_3XARY = [-37, -27, -42, -53, -121, -130, -61, -134, -66, -125, -94, -79, -123, -154, -101, -169, -101, -109, -145, -50, -93, -41, -55, -16, -76, -165, -110, -145, -116, -117, -40, -122, -90, -60, -82, -113, -97, -67, -81, -64, -76, -34, -95, -106, -80, -54, -94, -153, -144, -70, -133, -20, -44, -72, -58, -55];
Q9_3YARY = [38, 69, 51, 85, 124, 103, 42, 133, 94, 88, 146, 96, 75, 103, 81, 74, 160, 95, 93, 149, 101, 70, 64, 30, 75, 86, 154, 118, 114, 67, 113, 146, 169, 120, 143, 58, 120, 56, 48, 138, 178, 93, 68, 130, 127, 167, 54, 67, 79, 159, 64, 50, 130, 109, 185, 103];
Q9_4XARY = [-24, -6, -8, -14, -28, -9, -9, -10, -21, -9, -10, -19];
Q9_4YARY = [184, 81, 98, 131, 194, 177, 196, 118, 169, 141, 158, 150];
Q12_1XARY = [-103, -195, -235, 192, -4, 243, -9, -99, -196, -187, -92, 52, -237, -157, -232, -199, -60, 271, 0x0101, 184, -95, -103, -285, 172, -32, -212, 3, -54, 134, -286, 136, 186, -295, 300, 6, -291, -216, 181, 225, -117, 203, -295, 78, 18, -119, -182, -187, 131, 86, 103, 105, 179, 160, 205, 13, 203, -90, -50, -206, 144, 162, 106, 171, 189, -183, -80, 186, -127, 100, 153, 172, 168, 172, -226, -96, 179, 154, -296, -127, 184, 101, 205, -68, -286, -103, -154, 122, 114, 160, -80, 20, 98, 195, 159, -66, -233, 159, -61, 182, -130, -142, -10, 14, -188, -78, 300, -125, -38, 174, -146, 154, -285, -185, -129, -183, 6, 194, -296, 88, -95, 224, 204, -48, 94, 293, -127, 184, 72, -260, 185, -15, -124, 105, 203, 78, -186, 130, 41, 72, -292, 184, 86, 157, -128, 55, -130, 185, 45, 216, 99, -76, 184, 129, 157, -296, 211, -133, 190, 101, -103, -140, -143, 185, 206, 252, 194, -296, -103, -160, -217, -187, 151, 185, -299, 0x0100, 125, 103, 254, 185, -82, -81, -301, -144, 193, -152, -189, 195, -147, 39, 184, 131, -299, -63, -222, -132, -213, 167, -161, -97, -141, 204, -210, -301, -293, 180, 2, -132, 208, -80, 185, 186, 182, -148, 149, 90, 250, -55, 132, -100, 185, -154, 22, -161, -149, 32, 201, -165, -296, 241, 192, -183, 69, -161, -80, 88, 174, -104, -58, -146, -298, -189, -133, 159, -265, -293, -153, 128, -262, -211, 131, 183, -147, 185, 86, 101, -219, 207, -138, -161, -191, 9, -232, 20, 187, -84, 26, 159, 171, 231, 147, 176, 69, -95, 101, -143, 206, 131, -219, -157, 128, 190, 123, 235, 201, 237, -93, -90, 36, -105, -219, -297, 157, -155, -77, -81, 193, -292, -168, 27, -103, -197, -100, -161, -158, 156, -219, -186, 100, 184, -75, -133, -141, 184, 171, -274, -96, 200, -88, -159, 155, -157, -104, 150, 225, 158, 159, 94, 184, -151, 180, 131, -7, -125, 32, -288, 180, 185, 86, 15, 186, 181, -153, 193, -103];
Q12_1YARY = [-185, -216, -12, 176, 110, 252, 109, -169, -94, -116, 79, -74, -1, -181, -33, 117, -97, 268, 270, 117, 78, -223, 10, -178, 101, -237, 112, 93, 105, 115, -165, -48, 47, 249, -89, 130, -61, -148, 259, 75, 208, 152, 111, -86, 75, -185, -164, 105, -102, -125, -239, -63, 176, 32, -87, 242, -158, 95, -216, -222, 181, -194, -94, 65, -187, -134, 149, -196, -239, 130, -82, -183, -82, 122, -165, -136, -210, 142, -196, -52, -123, 34, -116, 102, -177, -166, 106, 106, 178, -134, 114, -239, 185, 173, 88, 122, 169, -102, -55, -111, -112, 109, 113, -160, 84, 249, -226, 99, -115, -128, -208, 10, -138, 75, -191, -89, -29, 141, -234, -218, 0x0101, 37, -89, -219, 262, -205, 118, 112, 129, 81, -90, -132, -194, 241, -92, -198, -194, -78, 112, 89, 130, -230, 156, -195, -72, -211, 83, 114, 252, -215, 85, 135, -159, -205, 143, 220, -107, 165, 108, -180, -109, -117, 96, 7, 0xFF, 180, 50, -223, -191, -59, -151, 123, 97, 55, 270, -235, -195, 0x0100, -49, -141, -140, 63, 78, -31, -159, -204, -26, -131, -79, 118, -190, 70, -109, -53, -188, 132, 193, -197, 78, -110, -3, -216, 64, 85, -61, 111, -221, 214, -135, 71, 141, -55, -133, 119, -223, 270, -90, -231, -222, 136, -164, -85, 86, -140, -81, 44, 89, 152, 268, -35, -192, 113, -199, 84, -224, -76, -224, -92, -127, 72, -203, -187, 172, 132, 87, -161, -196, -4, -216, -192, 219, -131, 75, -229, -202, -224, 213, -107, -196, -240, 113, -34, -85, 154, -151, -84, 166, -86, 262, 114, -70, 113, -217, -208, -116, 9, -191, -220, -182, -158, -38, -153, 264, 240, 265, -161, -158, -80, 76, -221, 77, 156, -171, -126, 83, -31, 21, 91, -83, -180, -90, -170, -197, -185, 153, -224, -197, -211, 221, -124, -215, -110, 131, -93, 137, -218, -15, -155, -188, 144, -180, -224, -215, 258, 165, 170, -220, 122, -151, -160, -192, 110, -137, -81, 96, -160, 95, -232, -86, 144, -58, -162, 179, -185];
Q12_2XARY = [-112, 309, -299, -171, -209, -102, 117, -126, -105, -155, 262, 274, -243, -298, 237, -91, 168, -154, -5, 280, -262, 249, -204, -300, -221, 219, -131, 273, 239, 114, -117, 304, -278, 307, -111, 235, -77, -231, -58, -10, 276, 275, 306, 290, -201, -122, 228, -124, -203, 271, 268, 239, -103, 293, -292, 103, -76, 27, -224, -219, 298, 201, -254, 218, 239, 242, 293, 236, 229, -73, 31, -135, 78, 30, -164, -73, -181, -127, -2, 19, 277, 143, 270, -145, 66, -79, 16, 292, -164, -50, 87, 2, 290, -161, 273, 96, 219, 34, 160, -48, 247, 282, 72, -216, -218, 251, 280, 254, -68, 263, -13, 267, -53, 217, 244, 262, 279, 164, 27, 239, 65, 67, 264, -128, -150, -43, 46, -94, -231, -236, 288, -48, 260, 275, -131, -162, 265, -107, 134, 305, -63, 66, 198, 278, -143, 267, -206, -201, -288, 33, 293, 277, 20, -109, -212, -295, -206, 270, -30, 226, 277, -287, -185, 228, -299, -41, 273, 166, 289, -259, 42, 262, -100, -101, -285, 68, 293, 197, -256, 197, 190, 273, -165, -262, -65, -123, -132, 124, -187, 275, 168, 279, -114, 58, -120, -83, -240, -110, 269, 273, -62, -107, 231, -240, -138, -147, -33, -55, 274, -107, -165, 289, -101, -26, 69, 301, -159, 278, -125, 232, -152, 141, 72, -126, -294, 272, -101, 205, 260, -179, -79, -245, -285, 147, 237, 210, 46, 0x0101, -70, 254, -67, 177, -57, -151, 221, -74, -159, -101, 219, 212, -147, 308, -196, 240, -58, 86, 294, -282, 14, 218, 0xFF, 290, 277, -86, -122, -199, -186, 225, 218, -270, 210, 273, -245, -104, 265, -217, -111, 231, -152, -102, 231, -95, 305, -259, 0x0101, 294, -220, 242, 280, -101, -134, -101, 203, 267, 118, -62, -63, 236, 110, 0, -234, -102, 194, 281, -135, -78, -210, 181, 296, -25, -271, 152, 141, -169, 280, -296, 246, -127, -122, -134, 293, -233, -127, 266, 231, 238, 279, 190, 267, 88, 12, -300, 112, -121, -206, 105, -33, -24, 307, 0x0101, 278, 276, -141];
Q12_2YARY = [-252, -159, 186, 52, 99, -163, 84, 210, -177, 249, 34, -199, 224, 169, -167, -238, -71, 5, -83, -22, 119, 81, 238, 174, 262, -112, 216, -91, -239, 85, -63, -216, 196, -191, -81, -132, 165, 120, 144, 112, -196, -1, -196, -246, 247, -56, -178, -197, 81, 15, 56, -244, -248, 101, 154, 85, -206, 97, 234, 266, -236, 69, 117, -112, -244, -234, 107, -135, -177, -199, -71, -202, -62, 95, 36, -197, 266, -52, 108, -76, -63, 82, 57, 238, -62, -216, 101, 91, 38, -109, 85, -82, -131, 28, -89, 85, -113, -71, -72, -104, 80, 67, 86, 116, 117, 83, -186, -251, -175, 94, -82, 24, 139, 59, -152, -253, -180, -71, -73, 73, -62, -62, 106, -233, -13, -91, -66, -242, 232, 119, 160, 135, 91, -166, -247, 29, 126, -182, 83, -209, -148, -62, -97, -11, 236, 22, 250, 247, 145, -71, -134, -174, 99, -83, 107, 162, 268, -172, -80, -181, -254, 141, 65, -208, 173, -87, -161, 78, 82, 208, 92, 41, -246, -247, 138, 87, 117, -96, 117, -96, -84, -254, 261, 119, 151, 208, 218, -68, 239, -167, 78, -46, 200, 88, 205, 173, 227, 197, 164, 60, 147, -94, -176, 227, -43, -25, -80, -124, -106, 194, 39, 80, -148, -80, -62, -146, 23, 63, -53, -125, -2, 82, -62, -52, 193, 168, 185, 68, 91, 60, -216, 222, 137, -70, -136, 64, -66, -201, -184, -204, -166, -70, 143, -8, -204, -201, 21, -247, 60, -109, -24, -183, 74, 74, 144, -62, -135, 195, 101, -192, -202, -131, -112, -232, 207, 78, 267, -115, -112, 201, 63, 168, 222, -107, 118, 0x0101, -188, -123, -5, -117, -123, 178, -207, 208, -221, 132, 261, -148, -40, -146, -214, -134, -103, 154, 84, -144, -147, -134, 85, 107, 119, -160, 72, -30, -214, -213, 252, 78, -239, -80, 123, 79, -69, 50, 167, 166, -208, -217, -252, -214, 146, 232, -217, 138, 67, -166, -190, -84, -183, 85, 103, 177, 85, -252, 237, -65, 124, 119, -153, -222, -178, -68, -208];
Q12_3XARY = [-269, -168, 69, 96, 141, -113, -81, 269, -87, 165, 222, 39, 263, 258, -255, -119, 101, -181, -230, -226, 147, 0xFF, -253, -65, -240, -96, 219, -38, -117, -131, 268, 217, -56, -144, -37, 231, -94, 18, 181, 113, 33, -170, -180, -242, 126, -269, -68, -91, -206, -180, 243, -166, 37, -68, 265, -14, -152, -142, 145, 251, 194, 21, -183, -225, 269, -258, -87, -117, 34, -59, -119, 251, -247, -180, -163, 147, 217, -30, -172, 184, 114, -269, 220, -82, 242, -181, -243, 269, -217, 96, 123, -199, -146, -270, -88, 25, 30, -117, 125, -78, 147, -90, -58, -46, 237, -200, -130, -14, -132, 94, 123, -68, -129, -74, 209, -148, -11, -266, 18, 0x0100, 246, -214, 21, -80, 140, 175, 37, -41, -269, -267, -268, -97, -226, 227, -104, 159, 20, 148, -79, -54, -143, -216, -184, -105, -271, -113, -258, -115, -145, 217, 165, 238, -267, -247, -175, -110, 100, -176, 172, -130, 269, 252, 37, -82, -153, 72, -256, -260, -14, 247, -139, 129, 84, 72, -137, 141, -209, 242, -94, 240, -62, -56, -46, 246, -69, 226, 101, 144, -93, 197, 173, 139, 253, -104, 105, 265, -27, 234, 238, -96, 209, 246, 61, -174, 29, -59, 179, -229, -87, -189, 239, -98, 94, 246, 130, -74, 267, -145, 51, -260, -94, 254, -237, -8, -186, 251, 263, -131, -249, 203, 269, 240, -269, 76, -195, 250, -69, 217, 69, -268, 266, -177, 219, -62, -85, 237, 237, -257, -181, -89, -229, -143, -139, 78, 149, -248, 63, -243, 27, 14, -126, 235, -100, 71, -39, -125, -96, 17, -89, -270, 108, 157, 92, 241, -129, -180, -98, -56, 233, -148, 223, -150, 228, 207, -50, 247, 266, 44, 219, -95, 249, 193, 212, -74, -95, -143, 243, -160, 68, 157, 214, 18, -120, -259, 163, -5, 217, 31, -162, -164, -103, 260, 65, -99, -170, -168, -259, -68, 24, -83, -159, -116, 242, 168, 130, -72, -113, -99, 235, 16, -207, -253, 0x0101, -42, 21, 6, -70, 228, 5, -41, 252, -184, 239];
Q12_3YARY = [-20, -206, 220, 249, 238, -8, -2, 24, -237, 225, -185, -254, -11, -28, 9, -140, 0x0100, -186, 2, -105, -228, 105, -71, 1, -94, 30, -158, 105, -229, -102, 49, 233, 6, -102, -247, -118, 59, 108, 226, 265, 114, -204, -109, -91, -237, -19, 8, -236, -111, -188, 205, -208, 197, 1, -4, 110, -130, -102, 233, -48, 227, -253, -171, -105, 30, -57, 74, -230, 126, 6, -9, -47, -85, -139, -210, -227, -147, -248, -18, -215, 265, -2, 234, 15, 200, -142, -89, 33, -8, -248, 260, -21, -14, -4, -3, 184, 109, -8, 258, 12, 231, -3, -243, -245, -96, -111, -102, -250, -11, -248, 260, 92, -102, 87, -207, -219, 110, -31, -253, -34, -64, -109, 175, 13, -231, 226, 197, 105, -20, -30, -1, -133, -1, 234, -145, -219, 174, 230, 82, 100, -133, -8, -156, -233, -10, -230, 9, -109, -133, -149, 225, 185, -26, -83, -19, -114, 0xFF, -19, 226, -102, 27, 114, -254, -2, -216, 221, -62, -50, 110, 127, -223, 247, 232, -252, -102, -231, -14, -80, -4, -85, 2, 6, 103, -65, 91, -127, 0x0101, 235, -4, -214, 226, -232, 110, -145, 262, -6, 108, -110, -91, 51, 230, -62, -253, -200, 108, 6, 226, 1, 73, -110, -90, 44, 244, 130, -236, -240, 13, -14, 205, -52, -235, -38, 5, -251, -110, -48, 78, -137, 9, 229, 42, 221, -17, -251, -22, -50, 8, -155, -252, -24, 0, -108, -158, 7, 17, -96, 184, -62, -20, -3, 1, -133, -223, -251, 229, -82, -252, 9, 137, 109, -138, 157, -129, 221, -246, -139, -235, 147, 68, -15, -244, -221, 242, 196, -226, -20, -5, 99, -114, -132, -178, -131, -123, -209, -245, -59, 63, -254, -194, 57, -55, -215, 232, 10, 55, -13, -73, -213, -252, 225, 233, 162, -9, -55, 225, -251, -153, 134, -104, -132, -145, 90, 217, 42, -18, -206, 9, 92, 183, -2, -16, -8, -78, -216, -236, 90, -230, 41, 172, -253, -15, -71, -29, 104, 175, 110, 0, 233, 110, -246, -43, -151, 148];
Q12_4XARY = [-147, -167, 206, -118, -200, 72, 138, -39, 37, 60, -43, 251, -285, -184, -65, 237, 208, -20, 152, -132, 140, 252, 29, 233, 29, 242, -67, 157, 152, -279, -158, -72, -283, 92, -68, -54, -165, -94, -40, 143, -191, -62, -114, 26, -76, -279, -44, -270, 262, -9, -243, -47, -191, -28, 90, -192, -135, -77, -122, 208, -285, 218, 204, -28, -196, -105, -171, -112, 58, -135, 121, 238, -74, -254, -165, -43, 244, -135, 37, -74, 111, 23, -241, -36, 239, -185, -84, -164, 128, -127, 284, 179, -73, 289, -55, 230, -56, 286, -161, 109, 127, -138, 228, -220, -64, -144, -80, 165, 33, -21, -123, -153, 261, 270, 231, -28, -41, 35, 13, -62, -156, 78, -160, -52, -226, -151, -230, -213, -42, 13, 154, -165, 5, 149, -79, -35, 243, 289, 5, 277, -77, -69, 144, -272, 37, -80, 241, -79, 276, -52, -275, -181, 66, 248, -199, 263, -273, -163, 179, 276, 263, -272, -214, -95, 43, -54, -82, -44, 29, -81, 20, -74, 99, 116, 243, 35, -215, 195, 149, -23, 13, 17, -82, -145, -279, -49, -17, 223, 160, -16, -257, -41, -54, 175, -88, 122, -146, 8, -232, 224, 41, 63, -276, 290, -232, -36, -53, -40, 155, 93, -72, 128, -53, -179, -110, -6, -227, -69, -60, -180, -17, 186, -36, -97, -8, -140, -196, 77, -164, -43, 188, 22, 172, -38, 236, 40, 190, -196, 232, -173, -285, -199, -243, 126, -73, -262, -105, -142, 201, 60, 13, 15, 3, -281, -271, 274, -36, 221, 27, 182, -190, -7, -63, -75, 236, -98, 227, -17, -254, -10, 254, 266, -144, -236, -259, 71, 180, -62, -110, 225, -285, -81, 259, -145, -47, -220, -35, -37, -223, -155, 237, -76, 145, 234, 223, -225, -64, -15, -132, -51, -9, 42, -171, -220, -124, -46, 254, -77, 262, -43, -222, -105, 35, 284, -163, -66, -169, 86, -113, -125, 5, -77, -238, -70, -240, 199, -226, 241, -43, -120, -121, 26, 279, -11, 262, 237, -27, -269, -44, -204, 239, -81, 212];
Q12_4YARY = [199, -218, -182, 240, 143, 97, -228, -185, -197, 99, -188, -110, 17, -97, 82, -43, 27, 100, 67, 221, 72, -169, -203, -16, -203, -101, 248, -223, 66, 45, 183, 0xFF, 3, -234, 249, 180, 173, -207, 211, -227, -83, 82, 244, -204, 129, 45, -189, 64, -160, -177, -36, 253, -83, 97, -235, 146, 216, 87, -157, 27, 13, 15, -183, -172, -68, -223, 155, -228, -243, -236, -230, -53, 0x0101, 89, -214, 90, -107, 216, 105, 134, -232, -184, -37, 235, -57, -95, -193, 176, 77, -234, -98, 50, 84, -113, 178, -6, 85, -102, 179, 85, 78, -147, -1, 129, 160, -142, 91, -220, 106, -174, -174, -238, -103, -98, -10, 97, 208, -199, -226, 82, -204, -237, -208, -194, 124, -136, 120, -47, 254, 108, 65, 174, 107, 68, 264, -181, -104, -113, -182, -96, -198, 250, -227, 60, 105, -195, -83, 264, -149, 252, 53, -101, 98, -110, 144, -101, 57, -212, 50, -148, -102, 61, 135, 261, -189, 85, 101, 90, -241, 110, -236, 135, -233, -231, -106, -199, -46, 35, -225, 98, -226, -233, 93, -141, -10, 192, 101, 9, -222, 101, -28, 252, 180, 53, -194, 80, -141, 108, 118, 6, 104, 99, 51, -117, 118, 93, 251, 249, -224, 90, 139, 77, 182, 148, 249, -179, -44, 83, 83, -102, -175, 45, 220, 259, 104, -191, -68, -238, -122, 90, -196, -238, 55, -184, -32, -189, -193, -67, -167, 149, 13, -47, 104, -230, 135, -24, -223, 209, -185, -243, -225, -183, 107, 36, -16, -96, 238, -169, -241, 48, 147, -178, 161, -198, -31, -214, 2, 101, -30, 103, -167, -100, -141, 114, 81, 97, -207, 164, 248, 4, 15, 108, -163, -238, 88, -45, -181, 238, 128, -133, -46, 127, -227, -168, 8, -44, 159, 102, 220, 189, -177, -243, 155, 130, -155, -191, -167, 263, -160, 203, -45, -223, -198, -131, -231, -198, -117, 93, -229, 230, 107, 123, -39, 250, -38, -187, 125, -85, 90, -160, -169, -204, -144, 103, -102, -44, 97, -19, 254, -47, -70, 104, -176];
Q12_5XARY = [-20, 169, 101, 88, -107, -6, 174, -73, 118, -63, -99, 106, -138, -70, -11, -8, -175, -242, 172, -20, 46, -60, -172, -15, -56, -3, -17, 103, 235, 12, -62, 212, 19, 109, 32, 34, -285, 83, -87, 246, -261, -8, 42, 193, 20, -138, -292, 112, 11, -1, -212, -32, 77, -132, -5, -25, -132, -65, 111, 89, -219, -1, 116, -29, 142, 157, 69, 47, 115, -130, 2, 39, 147, -182, 301, -153, 39, -231, -119, -61, 303, 254, -57, 30, 24, 150, -216, 3, -28, -4, 0, -229, 262, 150, -75, 126, -19, -219, 31, -64, 24, 24, -195, 66, 123, -293, -53, -101, -6, -12, 237, 22, 166, 113, -65, 45, 223, -208, 278, -188, -85, -298, -277, 32, 17, -129, 14, 26, -32, -31, 17, -5, -29, 79, -38, -11, 63, 20, 5, -22, -286, 139, 64, -12, -214, -246, 21, -159, 297, -216, -93, -130, 88, -14, 32, -225, -18, 204, -27, -64, -65, -18, 47, -59, 19, -223, -27, -275, -5, -122, -53, 9, -56, 14, 164, 310, -53, -220, -56, -14, -142, 24, 92, 35, -46, 108, -33, -142, -240, 32, 194, -225, -31, 203, -10, -12, -9, 305, -7, -200, 102, 0, -198, 2, -118, 207, -6, -232, 23, 212, 11, -54, 117, 0, 277, 191, 278, -44, -235, -189, 6, -296, -11, -112, 260, -179, -10, 152, 227, 254, 136, -84, 64, 207, -97, -197, 199, -23, -153, 164, -19, -235, -11, 5, -78, -185, -10, 162, 29, 14, -125, -270, 104, -265, -26, -180, 48, -78, 66, -258, -82, -108, -287, -15, -9, 125, 124, 206, 28, -175, -231, -210, -18, 299, 125, 129, 19, -15, 19, 4, -29, -21, -273, -19, -49, -113, -21, -28, 237, -146, -191, 133, 59, -268, -11, -244, 301, 122, -42, 76, -145, 289, 133, -22, -157, -56, 232, 213, -36, -21, -230, 129, -283, -34, -194, -62, 112, 173, -261, -152, -10, -63, 8, 150, -19, 47, 137, -71, 49, -33, 28, 25, -60, 25, 129, 197, -24, -60, -253, -210, -104, 213, 35];
Q12_5YARY = [-178, 67, 56, -24, 93, -195, 26, -158, -3, -151, -72, 2, 105, 88, -170, -194, 124, 126, 67, -183, -38, -168, 123, -95, -165, -147, -119, -26, 80, -133, -164, 75, -153, 55, 66, 65, 86, -24, -161, 30, 83, -71, -41, 26, -71, -71, 88, -1, -176, -145, 134, -142, -23, 103, -180, 80, 102, -165, 55, -24, -17, -79, -3, -136, 19, 26, 59, -38, 9, 102, -167, -43, 62, -59, 74, 113, -152, 23, -72, -156, 83, 83, -143, -100, -121, 63, -24, -167, -176, -197, -78, 10, 85, 63, 88, -27, -67, -18, -97, -75, -89, -89, 132, 59, -5, 93, -143, -72, 75, -85, 29, -154, 27, -26, -75, -157, 28, -37, 38, 130, -160, 90, 85, -59, -113, -72, -123, -50, -193, -176, -152, -180, -135, 57, -180, -179, -28, -104, -70, -115, 97, 61, 60, -106, -27, 123, -100, -67, 41, -24, -72, -72, 56, -180, -58, -5, -102, 73, -128, -172, -165, -177, -37, -155, -153, -10, -186, 101, -196, -72, -143, -148, -153, -128, 27, 47, -162, 133, -162, -112, -71, -88, -25, -63, 84, 7, -143, 107, 61, -160, 71, -5, -140, 73, -144, -86, -170, 61, 76, -46, 55, -193, 133, -181, -72, 26, -90, 36, -154, 75, -66, -170, 9, -184, 88, 71, 38, -144, 48, 130, -68, 92, -144, 94, 34, 126, 76, 25, 28, 83, -16, -73, 60, 26, 90, 133, 26, -116, -69, 66, -186, 129, -85, -69, -73, 129, -150, 27, 67, 72, 99, 104, 55, 84, -125, -59, -37, -73, 59, 115, 89, -72, 96, -176, -170, -27, -6, 26, -160, -62, 131, -34, -103, 68, -6, 12, -153, -176, -71, -167, -192, -130, 103, -183, -75, 94, 79, -152, 29, 109, 131, 60, -31, 84, -82, 124, 65, -27, -144, -23, 109, 89, 60, -150, 115, -165, 79, 27, -158, -131, 12, 59, 97, 82, -53, -143, -26, 26, 110, 113, -80, -143, 73, 63, -107, -37, -19, -158, 62, -71, -106, -79, -151, -79, 13, 26, 80, 88, 78, -34, 92, 75, -70];
Q12_6XARY = [267, 179, 76, -98, 151, -105, -64, 63, 57, 184, -200, -260, -16, 237, 67, 233, -21, 236, -209, 142, 273, -258, 131, -139, -15, -182, -207, -171, -275, 5, 39, 304, -20, 299, 237, 222, 86, 283, 56, -149, 205, -34, 70, -77, -102, -28, 1, 133, -212, 170, -76, 69, -178, -30, 91, -213, -137, -102, -96, 280, -262, -225, 142, -230, 109, 135, 214, -69, -164, -215, -8, -202, -3, -169, -152, -81, 220, 49, -206, 250, -245, -4, -95, -88, -78, 101, -260, 8, 213, 26, 271, 156, -93, 208, -160, 135, -154, 184, 79, -82, 66, 12, 280, -222, 181, -101, 208, -188, -196, -117, -94, -250, 177, -134, 63, 82, 147, -188, -227, -215, -181, -90, 280, 242, -145, 13, 139, -205, 203, 34, 291, 249, 224, 177, 52, -210, -152, 233, -263, 59, 48, 156, -141, -300, 84, -130, 3, -166, -217, 81, 203, -66, -77, 208, 146, 237, 9, -103, -26, -46, 243, 233, -74, -149, -150, 41, -263, 189, 119, -172, 252, -79, 98, 117, 196, 258, -94, -288, 252, 48, 194, 0x0100, 50, -8, -72, 101, 281, -76, -174, -152, 206, -280, -81, -77, -141, 57, 193, -176, -167, 224, 239, 182, 36, 83, -49, -34, 52, 219, -135, 287, -251, 51, 307, -148, -123, 238, -34, -183, 259, 132, 162, 51, -219, -294, -160, -69, -131, -171, 57, -24, -25, 288, -294, -93, 203, 198, -161, -74, -9, -110, 141, 66, 235, -34, 285, -230, 203, 44, 232, 211, 81, -25, 280, 51, 114, 137, 63, -15, -78, 77, -102, -268, 99, 252, -246, -156, 15, 133, -48, 129, -90, 252, 229, -287, -171, -113, -91, 80, -121, -96, 193, 80, -174, 129, 223, 233, 210, -57, -111, -277, 0x0100, 196, -90, 134, -17, -25, -78, 199, -168, 211, -173, 54, -27, -107, 126, -186, -40, 122, -93, 170, 222, 224, -25, 229, -203, -176, -22, -191, -46, -72, -234, -161, 216, -296, -175, 109, -19, 25, 241, -185, -86, -145, -299, 216, 207, -75, 141, -106, -232, 118, -260, 172, 139];
Q12_6YARY = [-15, -101, -146, -66, 146, 87, 132, -71, 169, -107, 39, 58, -118, -94, -145, -113, -98, -78, 44, 151, -14, -19, 157, 53, -120, 30, -97, 25, -12, -73, 169, 8, -103, 6, -89, -122, -146, -10, -135, -99, -50, 154, -145, -92, 91, 157, -73, -97, -31, -88, -108, 169, 28, 156, -145, -31, -91, 91, -124, 1, -18, 51, 151, -27, 164, -83, -123, 128, 23, 46, 164, -34, 165, 25, 48, 113, -27, -118, -75, -19, -23, -73, 97, -141, -87, -144, -18, -73, -31, 169, -2, 142, -127, -123, -63, 155, 48, 113, -91, -77, 169, 168, 1, -85, -104, 92, -123, -118, -107, 74, 99, 57, -99, -90, -144, -82, -66, -71, -28, 47, -40, -146, 1, -6, 50, -72, 153, 42, -35, -72, 4, -5, -117, -99, 169, -76, -100, -112, 58, -71, -114, 142, -94, 24, -75, -87, 167, -66, 47, -73, -35, 131, 118, -51, -66, -97, -72, 89, -147, -152, -21, -106, 122, -50, 49, -72, 58, -112, 161, 35, 17, -150, 166, 162, 98, -4, 99, 45, -19, -71, -116, -4, 169, -73, 125, -144, -11, -93, 26, 49, -121, -9, -78, -89, 52, -138, 102, -69, 27, -118, -3, 117, 169, -81, -152, 154, -134, -55, 56, -9, -21, -133, 3, 50, 66, -22, 154, -40, 13, -100, -75, -113, -93, 4, -108, -152, 59, 33, -140, -74, -74, -9, 5, -137, 88, -39, -47, -151, 164, 80, -66, 169, 38, -150, -10, -27, -47, 169, -65, -125, -85, -82, 1, -134, 163, 154, -110, -122, 117, -106, 89, -15, 166, 6, 57, 47, 168, -98, 146, -118, 104, 6, -114, 47, 33, 77, -134, 169, -79, -124, 101, -90, -111, -118, -57, -106, -124, 141, -71, 56, 16, 97, -67, 156, -135, -81, -87, -118, 28, -32, -110, -71, -148, 84, -129, -39, 151, -136, -128, 131, 58, 55, -74, 41, -34, -112, 162, 37, -152, 123, -26, -47, 67, 37, -112, 164, -138, -73, 32, -121, -114, 50, 13, -54, 82, -104, 152, 85, 55, -139, -19, 126, 154];
Q12_7XARY = [191, -25, 267, -171, -74, -85, -262, -74, 207, -247, -137, -203, 171, -42, -24, 210, -118, -204, -106, 242, 162, 231, -74, -251, 165, -159, -140, -114, -87, 235, -114, -83, -201, 209, -243, -216, -242, -219, -76, -21, -246, 11, -122, -216, -52, 211, -251, -261, -126, -243, -91, -28, -261, 78, 171, 258, 125, 290, -37, -247, -89, -88, 161, -257, 225, -93, -177, -109, -116, 163, -116, -56, 278, -74, -138, 56, 234, -18, 203, -245, -251, 145, 267, 223, 244, 164, -255, 136, 158, 263, -154, -258, -204, -55, 266, 271, -261, -221, 121, -229, -263, -95, -206, -266, -106, -248, 8, 203, -95, -87, 120, 249, 10, -111, 72, -76, -136, 232, -76, -27, -193, -82, 4, -104, -2, 66, -229, -142, -248, 9, 198, 195, -52, 230, -238, -74, -261, -52, -223, 223, 23, 138, 195, 231, -227, 229, -246, 245, 244, -11, 80, -189, 14, -76, -261, 274, 189, 10, -195, 228, -46, 232, 47, 168, 226, 51, -184, -16, 245, 168, -39, 22, 14, -64, -229, -209, -120, 7, 25, 192, -89, -92, 13, 217, 236, 227, 19, 283, 18, 0xFF, -111, -197, 102, 247, -246, -23, 33, 233, 238, 244, -147, 10, -27, -111, -110, -232, -168, 179, 242, 28, -31, 16, -31, 201, -255, 233, 8, -229, -142, -94, 285, -243, -125, -23, 153, 8, 20, 16, -18, -249, -82, -143, 95, -121, -202, 6, -26, -21, 241, 0x0100, 8, 92, -233, -180, -127, 11, 149, 230, 150, 270, 0xFF, 145, 236, 144, -252, -190, 131, 258, -224, 117, 239, -142, 136, -106, 0xFF, 238, 161, 164, -100, 244, 161, -89, -33, 253, -232, -212, -200, -253, -260, -261, 251, 93, 159, -252, 258, 251, 58, -266, 240, -70, 232, -69, 216, 271, 241, -59, 135, -214, 242, 192, -244, -121, 107, -91, -260, -137, -248, 7, 146, 228, 242, -142, 240, 24, 174, -235, -76, 91, -198, -238, 64, 10, 246, -88, 239, 27, -128, 9, -117, 33, -176, -145, -142, 239, -226, 87, -90, -80, -130, 157, -143, 45, 193];
Q12_7YARY = [-211, -155, -200, 56, 19, -40, -207, 24, 188, -209, 64, 22, 216, -103, -200, 185, -221, 18, 46, -101, -105, 143, 18, -43, 219, 63, -188, -122, 233, -70, 220, -172, 151, -111, -145, -22, -135, 113, -152, -194, -16, -137, -166, -40, 241, -117, -46, -193, 47, 4, 48, -219, -174, -29, 216, -9, 224, -116, -118, -211, 48, -194, -84, -99, 155, -220, 54, 221, -131, 220, -131, -110, -69, 12, 60, -18, 134, -173, -123, -5, -184, -54, -21, -150, -106, 219, -80, -44, -65, -29, 209, -113, 18, -109, -168, -40, -198, -57, -32, -78, -209, -71, 140, 41, -222, -27, -20, 192, -220, -191, 224, -122, -49, -114, 216, 38, -217, -41, 38, -220, 41, -170, 219, -95, -222, 215, -79, 70, -200, -67, -150, 201, -103, -28, 19, -4, -182, -104, -66, 159, -7, 224, -163, -33, 80, 1, -167, 80, 21, 225, 218, 47, -7, 238, -166, -50, 206, -221, 164, -14, 240, -49, 213, 217, 155, 213, 182, -183, 74, 218, -110, -196, -157, -128, 76, 5, -148, -82, -203, 202, -204, -62, 217, 172, 123, 151, -187, -84, -182, -205, 220, 161, -32, 55, 32, 232, -10, -52, -82, 84, -205, -132, -219, 45, -113, 66, 200, -211, 100, -208, -139, -220, -138, -138, 36, 13, -77, -98, -192, 230, -99, -143, -173, 232, -160, -26, -189, -168, -191, -33, -29, 70, 221, 46, 23, -11, -203, -220, 27, 18, -98, 220, 60, 187, 218, -4, -215, -179, -170, -177, 28, -215, 28, 224, 49, 173, -35, -152, 94, 224, -87, 211, -211, -101, 24, 31, -213, 219, -84, 84, -119, -50, 239, -135, -112, -7, 29, -61, -145, -155, 39, 220, -132, 49, 3, 41, -20, 40, 110, 240, -194, -139, -133, -198, -203, -117, -197, 128, -100, -176, -151, -155, 220, 231, -129, -185, -194, -17, -185, -169, 102, -211, 109, 216, 215, -126, -13, 220, 32, 52, 214, -38, 66, -199, 114, -8, 217, -112, -134, 214, 192, -195, 70, 114, 83, -31, -220, -22, 48, -146, 70, -14, -195];
Q12_8XARY = [9, -67, -193, 285, 303, -149, -225, 280, 178, 285, 74, 81, -194, 304, -69, 84, -217, -150, 129, 298, 161, 201, -46, 262, 175, -75, 136, -172, 82, -3, 17, 253, -267, -102, 38, 49, 139, -160, 276, 0x0100, 83, 276, -36, 284, 24, -257, -93, -54, -23, 102, -292, -22, 275, -278, 280, -132, 239, -60, -270, -73, 224, 176, 140, -134, -19, -198, 36, -98, 114, -193, -71, -116, -209, 201, 136, 304, -160, 253, -210, -274, 217, -217, -72, -219, 38, -272, -268, -257, 186, 38, -67, 173, 97, 102, -179, -89, -290, -27, 173, -250, -295, -290, 283, -27, 306, -3, -147, -66, 214, 279, -101, 261, 57, -196, -96, 38, 32, -32, 181, -2, 78, -217, 32, 299, -75, 265, 227, 240, 294, 290, -269, -61, 295, -31, 281, -59, -73, 267, -11, -56, -159, -192, 283, 19, 296, -247, 250, 34, 98, 190, 189, -66, -63, -146, -141, -15, 187, 57, 39, -220, -56, 15, 280, -70, -134, 90, 171, 42, 34, 66, 149, -166, 152, 125, 143, 290, 30, 192, -2, 149, -272, -18, -65, 303, -86, -116, 60, -297, -8, -46, -292, 216, 286, -177, -188, 88, 286, -195, -18, -66, -131, 4, -190, 83, 13, 65, 38, -159, -147, 145, 186, 114, -70, 31, -284, 303, 29, 105, -64, -142, -134, 288, -118, -289, -214, 289, -300, -217, -215, -149, 132, 41, 203, -5, 7, -300, 170, 32, -102, -262, -59, 203, 293, 40, -122, -196, 41, -97, 294, 104, -277, -264, 40, 40, -100, 105, 70, -89, -59, 91, 208, -69, -194, -50, -161, -257, 181, -31, -172, 122, -67, 73, -207, -127, 221, 277, 123, 174, -133, 38, 136, 168, -113, -179, 159, 60, -279, -263, 57, 281, -165, 91, -293, 173, 16, 181, 226, 41, 290, 98, 170, 117, 19, -9, -70, 265, 156, -223, -216, -43, 218, -250, -185, 174, -73, 89, 35, -66, 214, 46, -65, 126, -215, 127, 32, 122, 153, 289, -48, -60, 44, -150, -226, 214, 238, -257, 33, 101, -211, 201, -154, -239, -52];
Q12_8YARY = [116, -91, -19, -20, 33, 61, 38, -3, -12, -20, 64, -27, -19, -37, -90, 60, 42, -27, -20, -33, -15, 30, 78, 24, -13, -39, -20, -25, 61, 106, -35, 21, -3, -69, 117, 74, 44, -27, 29, 22, -27, 29, 82, 9, -34, 21, -76, -94, -38, -25, -2, -38, 29, 11, -4, -30, -11, 76, 15, 73, 24, -13, -19, -28, 93, 50, 81, 69, -22, 52, -51, -53, 45, 30, 45, -39, 59, 22, 45, -3, -6, 42, -39, 41, -32, 14, 16, -5, -11, 134, -62, 36, 56, -25, 55, -79, -2, -38, -13, -6, -1, -2, 8, -38, -38, 106, -27, -92, -7, -31, 68, 24, -31, 51, -74, 120, 89, -38, -12, 106, -28, 42, 94, -34, -39, -24, 24, 22, 32, 19, -3, 76, -31, 85, 1, -39, -47, -24, -37, -39, 59, 52, 8, 122, -37, -6, -16, 105, 56, 32, -11, -92, -93, 61, 62, -37, 33, 71, 80, 41, 77, -35, 30, -39, -29, 59, 37, 78, 105, -29, 42, -26, 41, 48, 44, 18, 130, -10, -36, -18, 14, 93, 75, -37, 71, 66, 70, 6, 101, 78, -2, 26, -34, -24, -21, 59, 31, -19, 93, -92, 64, 111, -20, -27, 118, -29, 118, -27, -27, -18, -11, 51, -54, 131, 9, 32, -34, 54, -72, -27, -29, -24, -51, -2, 43, -25, 0, -13, 43, 61, -20, 129, 29, 104, -36, 1, 37, 89, 68, -4, -82, -9, -29, 126, 65, -19, 129, 69, 24, 54, -3, 18, -32, 127, 68, -24, -28, -79, -82, 58, 28, -58, 51, 78, -27, 21, 34, -38, 57, 49, -63, 65, 46, -38, -6, -30, -21, -13, -29, 134, 45, 37, -62, 55, -15, 70, 11, 18, -31, -9, 58, -26, 7, -13, -35, -12, -6, 127, 32, 56, -14, 50, 122, -37, -39, 25, 40, -11, -13, 79, 26, 26, -21, -13, 73, -26, -33, -92, 27, 76, -69, -21, -13, 48, 94, -21, -17, -25, 78, -39, 77, -27, -11, -7, -12, -5, 99, 55, 44, 30, 60, 32, -39];
Q14_1XARY = [54, 50, -78, 111, -12, -206, -89, 34, -20, 42, -27, 271, 253, 54, 225, -37, -203, 174, -214, -100, -107, -64, -210, 138, -7, -43, 103, 284, 99, 171, 160, 87, 50, -227, 26, -78, -56, -292, 220, 50, -114, 299, -214, -154, 155, 54, 127, 299, -25, 162, 54, 234, -214, -90, 224, -76, 90, 264, -38, -62, 202, -214, 6, -35, -214, 143, 66, 286, 55, 16, -292, 299, 296, -90, -203, 16, -251, 140, -154, 109, 47, -42, 37, -38, 146, 284, 276, 193, 6, 174, -73, -281, 103, 162, 18, 174, 202, -194, -11, -90, 123, -134, 87, -165, -292, -283, 143, -95, 287, -90, -1, 244, 279, 230, -34, -282, -56, -276, -25, 36, 232, 84, -165, -25, 154, -203, 162, -203, -11, 66, -114, -11, -241, 105, 4, 9, 232, -282, -25, -50, 23, -165, 299, -91, 99, -39, -210, -78, 265, -273, -284, -140, 221, -214, -22, -262, -78, -230, -26, -23, 98, 124, -203, -15, 294, 194, -264, -21, 212, -292, -39, 182, 183, 49, -35, 239, 213, -289, -31, 154, -78, 87, -214, 219, 213, -31, -27, 229, -225, -245, 66, -53, 143, 37, -154, 32, 287, -220, 5, 224, -68, 125, -86, 229, -165, 201, 54, -174, 165, -90, -154, -157, -154, -134, 299, -90, 34, 143, 173, -154, 213, -203, 286, 36, 103, -72, 248, -38, -165, 215, 84, -206, -19, 154, 289, 66, -126, 275, 224, -282, -183, 154, 21, 143, -26, 0x0100, 87, 154, 227, 229, -17, 99, -126, -245, -10, 143, -37, 99, 154, 37, -66, -90, -165, 41, 6, -94, -203, 91, -264, 153, 212, 66, 175, 103, 66, -90, -292, 66, -78, -84, 87, -219, 221, 37, 163, 36, -6, -176, -261, -78, -101, -38, 237, -214, -165, 272, 230, -154, 281, 222, 99, -140, 54, -226, 27, 115, 287, 54, 143, 212, -78, -216, 224, 171, 143, 143, 156, -275, -275, -215, -165, 164, -57, 50, -7, 162, -72, -20, -32, 94, 182, 0, 154, -157, -154, 194, 212, 213, -237, -78, -97, 66, 109];
Q14_1YARY = [-154, 139, 178, 177, 53, 70, -125, 142, 60, 158, 50, 176, 165, -95, 165, -42, -55, -46, -155, -157, -175, -85, 60, 166, 38, -35, -47, 168, 133, 156, 63, 105, 99, 57, 161, -93, -70, 134, -164, 119, 102, 86, -116, 78, -113, -174, 37, 125, 113, 146, -75, 161, -136, 138, 134, -145, 66, 36, 125, -43, -36, -36, 166, -131, -96, -36, -154, 47, -35, -35, 115, 71, 58, 59, -75, -46, 181, 180, 98, 56, 150, -53, 103, 144, 37, 66, 39, -46, 50, 70, -112, 74, -35, -164, 179, -99, -176, -175, 161, 39, 50, 102, 141, 178, 154, 51, 50, 102, 79, 118, -175, 36, 172, -46, 157, 94, -145, 172, 133, -35, 41, -35, 39, 93, -55, -95, -176, -115, -153, -75, 114, -122, 36, 45, 181, -176, 171, 114, 73, -55, 53, 59, 145, -169, 51, -67, 158, 139, 180, 42, 164, -175, 49, -56, -143, 161, 99, 161, -72, -127, 167, 166, -35, -104, 154, -111, 178, -89, 82, 75, 87, -164, -36, 63, -79, 176, -99, 63, 57, -153, 59, 85, -76, 159, -46, -98, 165, -164, 174, 166, -55, -131, -76, 123, 118, 61, 97, 69, -163, 94, -99, 181, -154, -176, 159, -164, -55, -164, 51, 178, 58, -175, 38, 114, 105, 79, 42, -156, 146, 158, 62, -135, 137, 73, 63, -132, 180, 105, 79, 151, -47, 146, 172, -133, 162, -35, -164, 55, 74, 134, -164, -95, 38, -96, -108, 48, 73, 158, 153, 60, 43, 114, -175, 49, 179, -56, -145, 94, 175, 168, -60, 98, 99, 54, 35, -140, -155, 156, 53, 56, 142, -174, -113, 150, -134, 158, 95, -114, 39, -109, 125, 146, -176, 83, -36, -46, -137, -175, 36, 158, 114, 67, 53, -175, 119, 164, -36, 138, 156, -36, 74, -164, -134, 41, 175, 40, 117, -115, -116, 122, 79, 168, 114, 59, -176, -136, 44, 152, 62, 49, 139, 166, -35, 79, -166, 70, -76, 153, -58, 58, -176, -149, -75, -164, 178, -99, 102, -111, 180, 119, -175, -95, 161];
Q14_2XARY = [39, -117, 16, 236, 237, -60, 4, -319, -253, -276, -153, -153, 73, -297, -56, -297, -143, -299, 8, 310, -299, 160, -97, 309, -82, -174, 330, -313, -292, -238, 64, -174, 38, -153, 236, -153, 14, 237, -149, 28, 245, 309, -305, 330, -259, -219, 140, 321, -256, -64, -76, -162, 0x0100, 55, 320, -321, -230, -76, 70, 70, 330, 89, 140, -110, 316, -238, 160, -56, -163, -76, 0x0100, 145, -248, -119, 0x0100, 55, 0x0101, 93, 93, 321, -245, -63, 320, 53, 35, 7, -322, -153, 244, -56, 236, 140, 218, -299, 312, -300, -289, -164, 79, 140, 12, 309, -171, 17, 151, 26, -321, -294, 140, 140, -63, 24, -150, 140, -318, -254, 309, 140, -252, -122, -246, 218, -174, -56, 219, 322, -76, -224, -68, -65, -323, 0x0101, 160, 309, 160, 160, 40, -262, 66, 64, -228, -226, -9, 84, 93, 18, 200, -162, -297, 27, -132, 21, -305, -234, -276, 140, -166, 94, -310, -56, -9, -76, -7, -174, 309, 11, -262, -305, -56, 151, -78, 237, -239, 236, 330, 245, -64, -86, 150, 325, 65, 319, 51, -147, -303, 160, -63, 140, -296, 88, 320, 238, 309, -245, 160, -174, 140, -311, -56, -291, 309, -310, -266, 0x0101, -64, 78, 66, 0x0101, 253, 56, 13, -56, -226, 24, -161, 12, 330, -251, 160, 312, 198, 36, 0x0100, 38, -164, 16, 240, -313, -288, -220, -305, -291, -141, 330, -291, -153, -276, -88, 318, 6, 8, -278, -2, 0x0100, 47, -1, 179, 246, -247, -238, 309, -136, -263, 247, -56, 82, 160, 30, -100, 330, 325, -289, 77, -276, -250, 80, -219, 160, 330, 0x0101, 18, -161, -219, -163, 148, 45, 180, -290, 150, 48, -5, -9, 72, -65, -174, 321, 237, 83, 198, -250, -163, 330, 24, 149, 237, -314, -76, 71, -74, 0x0101, 75, 37, 160, 70, 309, -1, -99, 179, -76, -174, -241, 254, -281, -246, -270, -231, -174, -153, -303, -236, 326, -153, 236, -161, 54, 309, -65, 330, -265, -259, -307, -323, -76, -136, -271, 330, 330, -243, 60, 323, -228, -232, -277];
Q14_2YARY = [1, -62, 38, 105, -25, -52, 92, 78, 100, 27, -13, 85, -44, -78, -41, 41, -77, -48, 69, 104, 61, -82, -83, 73, -60, 24, -83, 24, 77, 6, 79, 44, 111, 26, 90, 65, 26, -43, -55, 7, -67, -63, 73, 35, -59, -16, 45, 7, -6, 83, 37, 65, 105, -59, -83, -57, -69, 57, -26, 102, 16, -8, -35, -85, 31, 97, -55, 87, 27, 76, 32, 96, -15, -67, 45, 15, 14, 80, -49, 88, 84, 48, -24, 93, 27, 87, 69, 7, 87, 71, 53, 5, 1, 98, 62, 56, 31, -12, -17, -82, 37, -44, -44, 12, -25, -60, 64, 26, -15, 65, 28, 86, -32, 25, 34, 17, -24, 85, -67, -83, -49, 15, 104, 105, 23, -40, -2, -59, -60, 9, 59, -5, 85, 16, -75, 65, -63, 86, -52, -9, 90, -54, 67, 89, -16, -56, 23, 85, -73, -77, -84, 23, -71, -50, 10, -75, -55, -31, 41, 57, -54, 88, 38, -34, -4, 50, 1, -62, 17, 1, -41, -5, -12, 72, -63, 58, 102, -76, 23, 83, 10, -61, -5, -45, 51, 25, 65, 105, -53, -61, 19, 14, -83, -60, -15, 84, -55, -50, -2, -83, 90, -73, -72, -44, -41, 96, 84, -62, -36, -84, 100, -22, -6, 106, -30, -49, 63, -71, -35, 105, 1, -84, 65, -79, 8, 69, 29, -67, -79, 81, 73, 104, -53, -24, 8, -70, 0, -47, -12, 18, -73, -87, 28, 85, 107, -54, 15, 72, 103, -60, 35, -70, 21, -14, 37, -1, 45, 81, -75, 105, 74, 89, -36, 84, 80, -70, -33, 105, 86, -25, -82, -63, -46, 104, 68, 21, 23, -59, -57, 83, 82, 47, -78, -25, 64, 105, -63, 75, 15, -82, 47, -44, 32, 42, -82, 87, -22, -63, -68, -82, 6, 95, 5, 68, 56, -65, -59, 1, 105, -15, -31, 21, -71, 10, -63, -32, 5, 105, 15, -76, 54, 45, 33, -45, -73, 44, -9, -4, -85, 107, 94, 43, 17, -59, 94, 66, 49, 71, 107, 46, 75, 1, 108];
Q14_3XARY = [3, 289, 127, -167, -16, -38, -99, -67, -67, -149, 241, 174, -133, -77, 54, -56, -184, -250, 120, 158, -214, -261, -149, 238, -205, 241, 260, -255, 130, -27, -15, 90, -266, -191, -266, 127, -200, -122, -256, 129, -266, 169, 269, -251, 171, -256, -236, -114, 95, 223, -85, -56, 90, 12, -198, -237, 36, 75, -18, -110, -18, 26, 90, 265, 209, 299, -149, 141, -78, 218, -141, 110, 184, 215, 104, -139, 40, -287, -135, 52, 242, 232, -26, -242, 65, -26, 8, -7, -274, -188, 165, 66, -37, -27, 167, -71, 156, -149, 57, -270, -71, 1, 78, 97, 284, -240, 151, 193, 179, -208, -139, 13, -232, -99, -18, 176, 7, 261, 232, 66, -110, -266, 100, 221, -19, -255, -130, -238, 206, -152, 164, -139, -222, 249, -149, 251, 275, 40, 90, 212, 105, 109, 284, 271, -95, 52, -131, -215, 90, 155, -149, 295, -230, 155, 9, -140, 32, 48, -1, 279, -266, 0, 169, 219, -150, 0xFF, -251, 90, -220, -193, 121, -106, 245, 102, -231, -67, -167, 226, -249, 100, 51, -149, -257, 106, -289, 170, 40, 267, -251, 206, -36, 90, 46, 258, -12, -197, -235, -56, 242, -111, -140, 180, -16, -199, -226, -67, 3, -149, 23, 124, -1, -149, -286, -240, 108, -251, -286, 53, 287, 134, -119, 163, 74, 207, -67, -118, -255, 100, 41, -27, 128, -255, -219, -27, 5, 238, 33, -151, 275, -149, -90, 102, -129, -56, -56, -266, 144, 114, -136, 144, -106, 200, -85, -150, 144, -27, 275, 161, 172, -119, 265, -1, 52, 18, -279, -202, 40, 45, 90, -69, 213, 226, 24, 145, -37, 90, -150, 110, -4, 159, 214, -257, 70, -140, -11, -222, -233, 104, 196, -56, -141, 240, -140, -56, 245, 219, 233, -67, 254, -267, -266, -221, -235, -18, -67, 280, 84, -140, -71, 248, -138, -18, -26, 246, -67, -149, -272, 149, -231, 243, -98, 110, 201, 40, 38, 233, -271, -15, -56, 125, 165, -90, 158, -3, -278, -266, -3, -184, -17, -188, 200, -186, -183];
Q14_3YARY = [-41, 127, -101, 165, -68, 86, -103, 105, 36, 73, 91, 72, -44, -43, 53, 88, 156, -44, 71, -78, -162, 97, -53, 110, -49, 129, -48, -96, 37, -90, -103, 147, -91, -82, -71, 76, -85, 166, -81, -112, -163, -61, 52, -163, -79, -109, 100, -45, 166, 143, -92, 36, -150, 37, -154, 51, 37, 127, 165, -163, -84, -34, -162, -33, 95, 165, -146, 35, -32, 126, 131, 90, 37, 150, 152, -140, -130, 120, 165, -161, -148, -123, -163, 89, 129, -50, 107, 52, 160, -122, -99, 70, 165, -129, 147, -32, 149, -72, 109, 35, -162, 36, 166, 128, 108, -93, 166, 72, 52, -148, -63, 126, 39, -91, -143, 109, -33, -71, 166, 90, -152, -148, -144, -87, 85, -148, -152, 166, 75, 165, 110, -82, 156, 56, 54, 36, -33, -41, -33, 131, 109, 133, 146, 90, -44, 90, -33, -33, -53, -122, -129, 146, -44, -158, 144, 71, -139, 36, 95, 127, -52, 158, 92, 164, 128, -63, 46, -92, -93, -103, 95, 165, 78, -64, -33, 125, 156, -73, -32, -163, -91, 37, 167, -44, 137, -163, -161, -52, 34, 112, 95, -131, -144, 69, 68, -38, -153, 49, -128, -32, -121, 88, -48, -125, 89, 46, -114, -163, -118, 52, -103, -92, 49, -104, -102, 108, 151, -70, 166, 56, -103, 166, 146, -52, 145, 154, -128, -128, -109, -70, -34, 151, 73, -109, 55, 149, -95, 147, 108, -112, -152, -84, -163, 146, 68, -110, -47, 114, -101, -35, 154, -33, -103, 93, -117, -146, 72, -42, 128, -92, 36, 127, -54, -102, 104, -104, 52, 71, -72, -43, -34, -103, -46, -97, 154, -111, 110, -112, 145, 130, -67, -62, 110, 51, -32, 52, -163, 71, 38, 107, 111, -89, 36, 165, -108, -54, -162, 66, -91, 50, -129, -103, 147, 153, 165, 89, 71, 91, -152, -76, 150, -162, -32, 106, 85, -33, 141, -137, 69, -160, -31, -32, 92, -78, -59, -142, 121, -122, 127, -42, -143, -162, -60, 75, 55, -32, 109, 165, 99, -52, 56, -142, -67];
Q14_4XARY = [31, 270, -220, 39, -244, 239, -85, 22, -28, -221, 40, -16, -276, -162, 147, 243, 44, 15, 125, -291, 41, -148, -284, -108, -149, 224, -89, -288, 43, 53, -85, 157, 250, 175, -278, 127, -85, -287, -264, 273, 176, -12, -162, -229, -149, 280, 160, 177, 112, -212, 52, 175, -203, 48, -94, 55, -89, 274, 283, -149, 45, 3, -85, -81, 236, -16, -291, -143, 177, 112, 229, 188, -272, -99, 171, -214, -16, 29, 250, 51, -248, 3, 137, 269, 170, 18, -28, 33, -16, 37, -28, 37, -28, -85, 113, -149, -271, 181, 140, -226, 170, 22, 215, -284, 130, -16, 48, 100, 286, -264, -244, 42, 250, -16, -149, 172, -260, 277, 280, 168, -28, 243, 35, 179, 249, 187, -162, 146, 283, 248, 167, 174, -217, -257, 275, 288, -28, 100, -203, 226, 100, 170, 46, 177, 286, -72, 292, -116, -159, -85, -252, 112, -245, -207, -11, 247, 262, 112, 175, 175, -222, 246, -215, 230, -139, 166, -278, 186, -225, 168, 163, 49, 144, 263, 176, -28, -276, 57, 165, 60, 38, 46, -85, 59, -72, -162, -162, -16, -95, 100, 112, -77, 57, 44, -28, 48, -29, -272, 161, 100, 112, -72, 187, 3, 250, -72, 168, 5, -278, 113, 100, 49, 245, -262, -85, 185, -116, 262, -16, -278, 225, 265, -16, -274, -29, -72, -17, 172, 54, 232, -217, -85, 227, -162, -279, 100, -232, 43, 112, -127, 39, 112, 300, -146, 100, 41, -72, 182, 167, 188, 146, -134, -290, 174, -132, 224, -139, 222, -162, 289, 267, 100, 181, -280, -149, -148, -291, -278, 35, 48, 238, 58, -101, -208, 162, 42, 262, 268, 20, 250, -237, -72, 234, 45, 178, 262, -28, 130, 166, -214, 173, -162, -225, 46, 237, -217, 171, 100, 241, -276, 182, -28, 100, 184, 262, 183, 40, -149, -85, -155, 241, -72, -73, 40, -221, -86, -211, -232, 271, -290, 112, 231, 33, -269, 171, 169, -8, -267, 234, 35, -144, -266, 277, 52, -250, -278, -281, -239, 159, 178, 151, -152, 164];
Q14_4YARY = [-19, 17, -56, 57, 64, 37, 46, 62, 28, -50, -45, 66, -52, -16, -2, 23, 60, 75, 75, -16, 62, -52, -42, -67, 64, 75, -47, -37, -35, -68, 31, 70, -31, 4, 49, -1, -12, 43, 62, 22, -68, -13, 75, 70, 50, 42, 0, -53, 75, 54, 10, -46, -35, -51, -52, 15, -56, 35, 48, 14, -43, -14, 16, -45, 42, 39, 17, -50, 45, -27, 65, -69, 64, -56, 0, -35, -54, 71, -17, -59, -70, -2, 75, 21, -32, -1, -41, -24, 5, 65, 41, -34, -69, 2, -43, -17, -52, 11, -1, 61, 4, 73, 75, 50, 62, 23, 55, 1, 56, -56, -70, -52, -69, -69, 31, -39, 72, 41, 51, 57, -12, 13, 1, -59, -1, 25, -2, 74, 59, 15, -40, 58, -44, -67, 29, 62, 24, -29, 42, 72, 31, 62, -63, 33, 69, -12, 69, -69, -35, -51, 75, -13, 76, 48, 75, 3, -31, 0, -64, 49, 66, 18, -52, 49, -61, 2, -17, 40, -55, -27, -29, 7, -14, 0, 14, 55, -45, 20, -34, 33, -40, 49, -21, -68, 33, -26, 29, 27, -60, 75, 46, -39, 40, -58, 69, 29, -56, -57, -23, -15, 17, 75, 37, 63, -48, 18, -2, 75, -1, -60, 15, -68, 9, -64, 62, 20, -58, -57, -41, 12, 60, 5, -26, 54, -26, 62, 55, 53, 45, 44, 51, -41, 54, 64, -33, -69, -64, 53, 34, -67, -14, 57, 75, -46, -44, -1, -21, -68, -13, 32, 62, -57, 35, 9, -64, 65, -54, 70, 15, 74, 16, -59, 49, 56, -3, -34, -2, 26, -29, 44, 26, 27, -64, -40, 67, 8, -69, 10, -15, -60, 74, 3, 38, 2, 54, -46, 75, -14, 65, 42, -59, 46, -60, 13, 32, 60, -53, 47, 20, 61, -65, 6, 57, 44, -17, 15, 3, 75, 75, -41, 29, 50, -31, -28, 57, -44, -45, -57, 28, -27, -69, 57, 68, 59, 2, -47, -1, -61, 50, 60, -56, 68, 35, 49, -58, 34, -47, -68, -17, 7, 73, -47, 60];
Q14_5XARY = [100, -210, -283, -298, -137, -301, 313, 132, 249, 147, -279, -105, -27, 10, 143, 0x0101, -143, -113, 135, -286, -95, -292, 237, 4, -291, -134, -146, -218, 240, -210, -260, -170, -290, -11, -210, 0, 0x0100, 15, 306, 281, 313, 6, -289, -210, -66, -218, -288, 6, -302, -92, 259, 28, 15, -305, 119, 139, -295, -305, -131, 316, -273, 32, -251, 146, -234, 8, -269, -163, 118, 56, -67, 221, 236, -81, -73, -110, -285, 12, 5, 302, 302, 109, -210, 0, -283, -264, 132, 188, 132, -101, 0, -3, -106, 229, 15, 15, 181, 26, 229, -5, 132, -127, 296, -90, -76, 93, -97, 243, -156, 278, -97, 304, 297, -165, 133, 291, 296, 147, 302, -290, -210, 9, 263, 93, 146, 133, 129, -210, 147, 302, 300, -148, 316, -287, 275, -222, -150, -127, -40, 242, -78, -291, -173, -100, 236, 174, 0, 235, -144, 0, -56, -139, -225, -145, -305, -155, 223, 117, 310, -278, 232, -229, -60, 268, -144, 223, 137, -80, -7, 93, 7, 246, 145, 49, 41, 303, 132, -223, 232, -82, -159, -225, 230, 10, -291, -153, 161, 235, -225, 188, 132, 15, 253, 238, -108, -244, 148, 145, 297, -218, 301, 221, 15, -94, -300, -135, -157, 221, -107, 146, 251, 147, -165, -306, -53, -236, 139, -283, 225, -301, -306, -168, 241, 316, -84, 221, 310, 274, 146, 315, 132, 41, -224, 317, 117, -91, -305, 147, 3, 235, 236, 305, -62, -128, 106, -89, 243, -249, -132, -125, -305, -254, 287, -289, -289, 221, 162, -71, 317, 0, 285, 285, -252, -281, 5, 7, -138, -210, -305, -217, 254, -272, 0, 15, 180, 300, 236, 131, 15, 239, -292, 300, -225, -182, -68, 230, 308, 15, -258, 275, -226, -305, -277, -210, 290, 151, -233, 12, -210, -97, -243, 56, -246, -163, 132, 290, -86, 221, -160, -24, -176, -224, -249, 132, -20, 288, -141, -40, 147, -261, 226, -130, -74, 0, 247, 15, -217, -103, 11, -218, 294, -70, 302, 148, -239, -120, -255, 164, -124, -37, 293, 3, 138];
Q14_5YARY = [71, -52, 27, -49, 52, 20, 51, -39, 77, -71, 44, 77, 81, -28, 32, 68, 32, 53, 81, 53, 45, 75, 52, -7, 50, 19, 24, 48, -63, 37, -4, -53, -72, 80, 21, -40, -70, -31, 61, 81, -37, 20, 83, 71, -72, 25, -26, -22, -54, 36, 83, 78, 30, 6, 72, 65, -61, 66, 67, -14, 47, 68, -16, 59, -19, -20, 38, -64, 81, 81, -41, -32, -36, -32, -22, -22, 77, 55, 55, -7, 40, 67, -12, 48, 70, 28, 17, 68, -4, 31, 31, 77, 41, 59, -51, 67, 82, 81, -40, 68, 33, 76, -63, -3, -12, 71, -38, -50, -12, -72, 52, -45, 57, -38, -71, 75, 72, -24, 24, 32, 53, 75, -73, 82, -45, -15, 79, 7, 13, -27, 68, 16, -32, -11, 68, -50, 6, 46, 81, 60, -43, -55, -59, 60, -18, 73, -50, 21, -11, 11, -66, 42, 20, -37, 26, -42, 49, 78, 55, 54, 20, -66, -59, 84, -22, -38, -62, -4, 81, 67, -1, 75, -22, 73, 68, 65, 6, -32, 63, 4, -21, 0, -9, -9, -35, -2, 80, 1, 49, 82, -30, -70, 80, -44, 81, -13, 81, 32, -48, -15, -59, 26, 61, 5, -40, 58, -50, 8, -37, 48, -55, -55, -71, -53, -71, -51, 46, 30, -45, -6, -72, -46, 72, 28, 12, -26, -41, -58, 41, 43, 48, 81, 64, 15, 67, -22, 83, 28, 4, 34, 68, -53, -50, -22, 82, 29, -67, -7, 27, -37, -32, -10, 78, 26, 8, 44, 81, -59, 1, -70, -56, -69, 0, 64, 26, 81, 10, 82, -14, 76, -58, 3, -22, 0, 68, 52, -59, 60, 12, 57, 57, -42, 40, -72, -67, -52, -48, 49, 13, 83, -71, 46, 22, -32, -54, 69, -58, -43, -71, 14, -36, 68, -29, -28, -57, -66, 21, -11, -58, 74, -65, 82, -22, -12, 68, 64, 3, 68, -5, 21, 54, 38, -50, -6, 64, -14, 8, 70, 79, 64, -51, -31, 5, -40, -43, 61, 7, 68, 81, 77, 61, 32, -61];
Q14_6XARY = [-214, 34, -167, 105, 199, 51, -281, -137, -156, -128, -54, -2, 93, -155, -30, 295, -270, 43, 42, 145, -109, -279, 42, -13, 284, -79, 91, -90, 99, -105, 19, -62, -287, -48, 263, -167, -218, -89, 212, 209, 4, 284, -7, -30, 18, 71, 109, 233, 34, 199, -37, 249, 42, 88, 8, -128, -48, -167, 42, -50, -283, 111, 144, -209, -248, 295, 199, -273, -9, 126, -22, -140, 16, 152, -13, 295, -102, 64, -57, -259, 244, 211, 137, -37, -15, -267, -36, 284, -30, 52, -34, 159, -284, 209, -105, -123, -113, 42, -12, -29, 218, 7, 198, 3, -104, 119, -98, 103, -156, -118, -37, -289, 129, -263, 79, -93, 107, -63, 264, 2, 239, 61, -79, 209, -167, 8, 103, -225, 3, -74, -167, -37, -8, 156, 96, -276, -215, -68, 282, 209, 295, 52, 64, 53, 199, -128, 92, -41, -118, -218, -128, 138, -24, -156, -47, 79, 56, 275, -112, -286, -167, -7, 82, 82, 268, 278, 254, 260, 93, 130, -101, -156, -128, 228, -11, -93, 82, -103, 214, 41, -48, -256, -208, 67, 133, 199, 121, -20, -24, -279, -102, -266, -242, -88, 19, 128, -148, -156, -275, 3, -123, -72, -10, -96, 124, -274, -232, -79, 284, 150, -118, 295, 70, 236, -97, 198, -128, -118, 42, 66, -48, -48, 295, 259, -87, -118, 96, -97, 125, -57, -30, -30, -289, -66, 75, -230, 140, -278, 295, 223, 209, -279, 107, -12, -48, 19, -99, -128, -226, -48, 132, -279, 52, -100, -70, 34, 72, -218, -156, 122, -119, -48, -12, 34, 42, 83, -48, 82, 42, -118, -28, 89, -3, -108, -65, 165, -167, -79, 75, -14, 284, 26, 295, -167, -138, 75, -108, 52, -211, -239, 91, -13, -220, -68, -289, -289, -68, 111, -40, 122, -224, 105, -156, 58, 155, -251, 242, -79, 230, 146, 122, 53, -267, -235, -76, 153, -220, 199, 102, 282, 85, -224, 109, 122, 99, 160, -283, 295, -128, -118, 136, 170, -118, -234, 124, -63, 102, 95, -86, 72, 282, -128, -218];
Q14_6YARY = [-142, -154, -144, -54, -89, 114, -148, -103, -93, 151, 38, 58, 98, -32, -164, -62, -149, 77, 46, -124, -100, -73, 62, 149, -69, 122, -106, -92, -58, -115, -93, 45, -133, -164, -84, -32, -61, -164, -88, -108, -43, -151, 141, -94, -32, -163, -33, -103, -32, -69, -143, -134, 80, 108, -104, 72, -105, -109, 119, 169, -59, 48, -95, -135, -153, -164, -129, -41, 157, -134, 49, -32, -43, -146, 53, -80, -90, 169, 153, -31, -109, -71, -70, -59, -154, -34, 170, -133, -154, 83, 45, -163, -140, -146, -140, -32, -36, 99, -93, 37, -53, -93, -164, 141, -40, -49, -45, -44, -73, 53, -124, -108, -65, -152, -118, -52, 108, 162, -96, -32, -125, -164, 105, -164, -163, -164, 37, -145, -154, 154, -126, -78, 66, -131, -123, -56, -50, 118, -95, -32, -33, 68, 159, 52, -109, 112, -134, 158, 73, -152, 92, -106, 168, -144, -32, -145, 37, -57, -121, -60, -89, 51, 159, -108, -70, -43, -127, -113, -97, -75, -54, -163, 169, -78, -164, -152, -136, -125, -40, 37, -85, -41, -61, -153, -84, -32, -33, 40, 157, -89, -152, -162, -30, -59, -104, -48, -43, -124, -154, 66, -103, 103, 60, -72, -60, -142, -46, 85, -164, -109, 151, -96, 108, -113, -100, -146, 37, 169, 169, 37, -48, -155, -116, -95, -79, 93, -89, -142, -124, 53, -104, -32, -126, 69, -155, -149, -85, -46, -42, -65, -127, -109, 98, -104, -142, -154, -163, 132, -158, -124, -57, -128, 133, -134, 52, -43, -142, -135, -55, 169, -114, -68, -43, -164, 135, 37, 48, 169, 152, 112, -43, -83, 150, -47, 137, -154, -72, 139, -129, 164, -114, -164, -150, -52, -114, 98, -131, 150, -55, -41, 48, -32, -140, 86, -69, -88, 105, -124, 37, 48, -50, -67, -107, 98, -155, -165, -134, 72, -92, -134, 159, 169, -46, -164, 61, -123, -56, -49, 159, -33, -98, -38, -134, 37, -80, -143, -53, -134, 52, 131, -96, -163, 37, -34, -39, 59, 169, -70, -67, 48, -81, -43, -45];
Q14_7XARY = [-304, 319, 117, -117, 226, -210, 316, 224, 85, -230, 168, -268, 82, 64, -169, -121, -87, -21, -14, 170, 193, -116, -65, -233, 25, -175, -205, 280, -165, -20, 1, 184, -267, 219, 68, -73, 207, -289, 130, -257, 260, -226, 91, -97, -294, 170, 317, 226, -122, 313, 217, -157, -26, -111, -124, 170, 264, 223, 14, -163, -26, -22, 128, -29, -239, 223, -20, -166, -193, 24, -115, 166, 223, -239, -74, -262, 92, -287, 264, 320, 125, 277, 216, 199, 266, -263, -85, -283, -309, -299, 182, -282, -266, -170, -284, -302, -260, 259, -124, -277, 210, 262, -167, -66, -29, 166, -298, 100, 60, 121, -8, 112, -26, 210, -201, -70, 205, 135, 78, -3, -76, -67, -24, 63, -207, 73, 166, 260, 27, -286, 297, -236, 86, -256, -263, -158, 259, -81, 106, 293, -87, 24, 179, 166, -24, 166, -257, -287, -159, -120, -64, -76, -241, -105, -187, -229, 269, 69, 123, 92, 213, 84, 223, 170, -245, 167, -160, -261, -203, -247, 11, 80, -273, -66, 98, 31, 18, -301, 114, 98, -29, 83, -120, -284, -120, 20, -277, 316, -7, -191, 259, 273, 306, -28, -236, 204, -264, 316, 1, -241, 213, -199, 54, 309, -65, 29, 66, 311, -26, 7, 225, 291, 311, 104, 263, -95, -180, 264, 184, -89, 314, 16, -181, -124, 263, 27, 110, -108, 286, -272, -17, -124, -185, -261, -302, 315, 108, 72, -251, 320, 298, -103, 118, 306, -194, 166, -308, 21, -177, 71, -251, 114, 76, -206, -119, -64, -64, 74, 102, 277, 77, 28, 65, 266, 88, -120, 316, 186, -17, 90, 92, 166, -120, 319, 166, -156, -288, 318, 263, -196, -253, 303, 62, -164, -286, -20, -11, 221, -109, 19, -198, -189, -67, -123, -70, 119, -270, 166, 132, 281, 175, 116, 90, -178, -247, 199, -124, 166, 108, -64, 55, 288, -162, 226, 64, 58, -284, 197, -172, 4, -298, -248, -66, 301, -243, 318, -292, -26, 223, -81, -25, -113, 8, -280, 170, 28, 226, 166, 95, -192, -154, 270, 83];
Q14_7YARY = [-38, -13, 9, 47, -12, 62, 26, -15, -15, -33, -17, -13, 30, -22, 1, 23, 62, -31, 56, 39, -35, -26, 28, -27, 47, -19, 46, 59, 18, 50, -36, -35, -1, -26, -10, -29, 58, 7, -34, 42, -17, -39, 55, 63, -5, -26, 10, 17, -17, -26, 50, 59, 42, 56, -12, 22, 13, -1, 57, 28, 10, 48, -27, 11, -5, -22, -29, 12, -4, -26, 51, -28, 13, -10, 54, 38, 62, 7, -1, -2, -19, -35, -29, 58, 49, -14, -37, 16, -38, -20, 62, 16, -1, -3, 23, -25, 50, 27, 6, 43, -35, 40, 6, 12, 39, -22, -15, 55, -32, -8, 61, 25, -18, 56, 28, 49, -37, -39, 21, 62, 57, 45, -26, -27, 54, 6, 9, 36, -21, 18, 61, -16, 43, -1, 58, 54, -1, 59, 38, -40, 59, -28, 62, -38, 45, 40, 45, -15, 49, 1, -12, -32, -10, 60, -32, -39, -30, -5, -13, -12, -32, 39, 24, 3, 16, 62, 42, 55, 37, -6, 59, 26, 53, 27, -15, -20, 56, -32, 20, 60, 26, -15, -7, 24, 12, -33, -15, 42, -39, -20, 15, -33, -34, -9, -22, 60, 63, -4, 63, 1, 53, 21, -38, -33, -16, 43, -15, 52, -9, -39, 37, 62, -31, 43, -13, -40, -39, 27, 59, -39, 47, -36, -37, 19, 43, 43, 29, 57, 62, 43, 53, -6, -38, 41, -30, -21, 34, 2, -15, 17, -37, -37, 3, 56, 3, -36, -38, 52, -26, -1, 28, -15, 13, 62, 43, 20, 39, 9, 49, 56, 19, -23, -19, -28, 48, -22, 12, -38, -33, 52, 60, 1, 29, 27, -11, 61, -12, 36, -24, 8, 35, -37, -29, 23, 13, -30, 58, 47, -34, -34, 14, -26, -22, 36, -25, -3, 63, 54, -38, -37, -38, 15, -11, -32, 24, 61, 29, 62, -11, 1, -37, -37, 35, 32, -25, -35, 30, -38, -11, 62, -23, 22, -3, 58, 9, -17, 0, 27, 41, -36, -22, -30, 61, 33, -14, -20, 4, 26, 62, -13, 62, 53, 35];
Q11XARY = [-295, -13, -97, -357, 327, -149, -368, 222, 288, -120, 177, -367, -294, 173, -227, 175, 136, 172, 278, 289, -34, 130, 229, -39, -364, -235, 227, 174, 176, -182, 278, -297, 180, -33, -71, -160, 130, 180, -303, -186, -246, 189, 176, 275, 175, 286, 237, -223, -218, 325, 75, -56, -235, -349, -14, -367, 223, 233, 91, 280, -290, -131, -102, -357, 135, 136, 80, 278, 42, -361, -155, -293, 237, -156, -15, 47, -369, -38, -349, 304, -156, -225, 235, 130, -292, 299, -133, 45, 274, 184, -134, -361, -293, -97, -343, 217, 277, 188, -44, -222, -294, -225, -45, -9, -294, -103, 289, -357, -367, -4, -152, 281, 40, -290, -292, -361, 290, 184, 334, 282, 65, 340, -317, -294, 338, -60, 281, -149, 284, -55, 56, -104, -240, -50, 235, 220, -53, 82, -110, 276, -328, -368, 179, 42, 274, -301, 319, 338, 172, -305, -322, 175, 290, 134, -197, -367, 239, 295, -19, -302, -292, 68, -226, 82, -47, -366, -157, -306, -40, -193, 211, 239, -352, 172, 178, -38, 235, -252, 41, -364, 181, 0, 189, -41, -191, 319, 282, -331, 134, -362, 172, 319, -111, 296, -54, -329, -100, -36, -97, 30, -367, -155, -295, -230, 130, -20, -156, 174, 337, 278, 179, -29, 234, 294, -234, -98, -233, 47, -155, 235, -128, 316, -245, 236, -120, -161, -361, 295, -42, 137, 296, -225, -23, -219, 288, 93, -198, -307, 130, -364, 129, -244, 277, 131, -218, -330, 312, 29, 180, -144, 198, 40, 135, 180, -66, 92, 237, -360, 278, 94, 208, 59, 131, -33, -369, -209, -300, 230, 172, 302, -190, -257, -188, 311, 335, -77, -209, -350, 94, -201, -117, 300, 173, 276, -327, 238, 238, -109, 61, 239, -159, 277, -224, -65, -223, 303, -312, 175, 137, 231, -338, -216, -355, 75, 193, -231, -135, 91, 278, 317, -38, -162, 239, -248, 307, -309, 31, -226, 60, 202, 226, -333, 282, -259, -118, 64, -214, -293, -262, -368, -363, 278, 238, -161, 237, -205, 94, 31, -203, 5, 83, 236, 283, 53];
Q11YARY = [23, -12, -9, 14, -38, -34, -21, -25, -37, -1, 25, 34, 21, -21, -12, -10, 51, 20, 53, 60, 59, 19, -18, 46, -32, 34, -12, -41, 31, -44, -39, 32, -31, -18, -27, 37, 38, 20, 44, -37, -2, 42, 26, 26, -4, -38, 52, 44, 42, 12, -41, 4, -13, 29, -14, -28, -7, 17, 58, 6, 24, -42, -6, 24, -9, 14, -39, -5, 61, 31, -6, 61, -19, -26, 8, 59, 63, -13, 12, 61, 43, 42, 61, -27, -34, -39, -40, -29, -9, 56, -36, -28, -23, -1, 13, -11, 19, 27, -11, 42, 11, -16, 48, -3, 27, 51, 61, 50, 58, -21, 49, 60, -26, 13, -42, -28, 11, 25, -38, 31, -37, 61, 9, -29, 64, 5, 16, 54, 9, -18, -37, -13, 25, 31, 25, -16, 6, 62, 56, -21, 5, 34, -42, -25, 32, 46, 62, -36, 62, 45, -7, 28, 14, 29, 1, -2, 65, -40, 26, 41, -4, 18, 36, -35, 44, -18, -23, 23, 36, -18, 0, 24, 7, 13, 39, 47, 40, -10, -41, 62, 51, -33, 41, 46, -16, 6, -3, -19, 43, -16, 32, 13, 3, -39, 19, -3, 43, 46, 4, -41, -42, 15, -17, 50, 65, -11, -22, 45, -42, 9, 61, 45, -9, -37, 41, -26, -13, -11, 31, 3, 64, 64, 11, 15, 5, 20, -40, -39, 55, 63, -40, 66, 38, 51, 12, -39, -15, 40, -42, 0, 48, 15, -41, 1, 64, 4, 8, 58, -25, 60, 27, -18, -28, -4, -17, -38, -23, 57, 15, -39, 6, -42, -8, 58, 46, -12, 57, -24, 45, -42, -23, -24, -30, 63, 63, -42, 36, 27, 62, 17, -39, 9, -7, 27, -11, 34, -42, -34, -39, -24, 17, 9, 48, -8, 52, 14, 20, 15, -44, -44, -5, 59, 36, 27, 35, 49, -38, 49, 2, -42, 64, 17, -17, -17, -37, 30, 62, 55, 5, 21, -31, 3, -21, -34, 60, 62, 52, 46, -41, 19, 35, 64, 11, -3, 26, 22, -40, -27, -14, -43, 38, -19, 58, -2];
Q11_1XARY = [305, 167, 102, 222, -189, -1, -147, 98, -295, 145, 237, -80, -191, -58, 218, -136, 171, 228, 236, -147, -69, -197, 157, -205, -58, 107, 280, 232, 155, 129, 297, -205, -214, 109, -295, -142, -215, 7, -214, -295, 151, -19, 286, -58, -295, -38, 306, 305, 247, -295, 118, 86, -129, -272, -273, -69, -81, 2, 286, -39, 305, -273, 13, -295, 221, -39, 232, 3, -129, 174, 19, 243, -80, -285, -284, -80, 33, -161, 286, -284, 17, 242, 98, 305, 119, 270, -206, 81, -205, 232, -80, -59, 17, -273, 276, -58, 210, 228, -150, -132, -214, -201, 249, 38, -273, 20, 7, -223, -178, 100, -273, 175, 283, 80, 236, -25, -156, 305, 287, -58, 112, 29, 286, 305, 126, 174, -146, 174, 227, 4, -58, 123, -18, 274, -155, 101, -58, -285, 43, 228, 12, -129, -129, 119, -80, -68, 284, 109, -206, -130, -69, 36, -138, 25, 95, 295, 263, 159, 305, 19, 287, 294, 28, -68, -272, -273, -59, -213, -68, 83, -214, 305, -58, 0x0100, 212, -18, -2, 98, -285, -272, 279, -213, 229, 136, -294, -139, 287, 29, 212, 12, 210, -134, -147, -80, -183, 141, 2, -68, -39, 81, 9, 36, 4, 304, 260, -58, -205, 287, 213, -273, -67, -162, -285, 138, 211, 157, 17, -137, 266, 10, -81, 6, -285, 145, 106, -224, 298, 42, 158, 19, -207, -147, 39, 138, 83, -129, 103, 19, -38, 306, -224, 213, 296, 80, 156, 96, 29, 32, -273, 286, -147, 28, -285, 227, 22, -168, -147, -81, -3, -138, -294, -224, 217, 151, 297, -7, 40, -42, 86, 25, 0xFF, 128, -5, -5, 228, 43, -295, 23, 139, 232, 211, 287, 259, 90, 149, -69, -224, 146, 15, -206, 215, 110, 296, 225, -284, -68, 121, 305, -138, 105, -177, 155, -150, -80, 14, -215, 239, 29, 297, 229, 33, 9, 100, 286, 98, -57, 297, 37, -285, 14, -295, -273, -80, -223, -69, 91, -224, -5, -215, 305, 241, 163, 254, -80, -223, -138, 297, -19, 287, -295, -19, 268, -285];
Q11_1YARY = [34, 25, -56, 32, 36, -27, -69, -48, 112, -64, 42, 18, 26, -66, -62, 24, 20, -59, -59, -50, 52, 23, -12, -46, -9, -11, 21, -77, 17, 48, 34, -27, 39, 28, 72, 34, -84, 82, -66, -45, 24, 10, 72, -28, -7, 111, -77, -3, 46, -85, 47, -58, -7, -26, 58, 111, -19, 85, 92, -12, 92, 78, 23, 92, -68, 10, -53, 15, -26, 13, 2, 25, -85, 33, -64, -78, 83, 25, 111, 112, 98, -63, -35, -21, -24, 28, 30, -3, -84, 15, 91, 43, 66, -45, 25, 24, -39, -35, 15, 14, -27, 17, -86, -84, 11, 46, -14, -65, 45, -24, -84, 7, 14, -42, 22, 99, 41, 73, 16, 62, -66, 51, -69, -41, -76, -4, 36, -24, -73, 106, -85, -87, 111, -63, 21, 39, -47, -26, 41, -18, 103, -65, 8, -11, -58, -66, -56, 44, -9, -46, 13, 77, -25, -44, 34, -25, 44, 35, 15, 34, -36, -5, 68, -46, -65, 112, 5, -47, -26, -51, 7, 53, 81, -65, -46, 88, -6, 8, 14, -6, -59, 47, -1, -85, -25, 28, 34, -53, -3, -67, -22, 19, 5, 54, 41, 47, -35, 72, -1, -13, 18, -74, -42, 15, -84, 101, -65, -2, -23, 39, -84, 44, 93, -23, -5, -24, 29, -44, 39, 79, 0, -50, 53, 29, -62, 27, -81, 63, 7, -83, 46, -16, 69, -11, 12, -84, -78, -23, 88, -84, -46, 18, -44, -29, -82, -72, 12, -63, 92, 53, -34, 89, -45, 36, -34, 46, -84, 72, -20, -83, -65, -84, 26, -76, 52, 87, 32, 99, 21, 6, 47, 30, 109, 12, 0, 51, 53, 94, -69, 39, 9, -22, -65, -65, 44, 32, -27, -69, -77, 11, -54, -83, -62, -22, 73, 92, -69, -58, -63, 23, 29, 39, 39, 35, -3, -10, -81, 36, 71, -48, 17, -57, 19, -50, -4, 111, 91, 24, -84, 73, 13, 24, 111, 47, -7, 27, 9, 99, 23, 111, 45, 30, 28, -40, -8, -5, 111, -1, -83, 33, -13, -79, -6];
Q11_2XARY = [199, 273, -149, 174, -145, 83, 16, -131, -114, -221, -52, -36, 110, -265, 162, 9, 200, -3, 150, 273, 117, 1, 27, -113, 274, 29, -129, -37, -149, 119, 187, -45, 98, 249, -185, 13, 199, 248, -229, 249, -144, 122, 109, 40, -149, -182, -228, 109, 192, 25, 200, 39, 28, -17, 27, 27, 83, 173, -256, 159, 110, -6, 40, -248, 261, 273, -144, 114, 129, 39, -34, -157, 273, 103, 249, 39, 39, -233, -230, -51, 176, 39, 39, -171, 160, 248, 145, 189, 274, 27, -20, -145, 186, 193, 39, -242, 85, -249, -78, -113, -173, -49, 174, 128, 190, -250, -17, -45, 123, 198, 112, 144, 1, 274, -139, -152, -62, -223, 114, -209, 178, -126, -60, 248, -232, -52, -243, 273, 185, -128, -233, 167, -144, -228, -25, -9, -137, -19, -126, -65, 103, 173, 177, 249, 261, -260, -202, 15, 169, 249, 262, 132, -265, 97, -265, -261, -143, 95, 98, -128, -22, -257, -216, -162, -263, -54, 12, 199, -233, 39, 161, 261, 31, -129, 135, 262, -65, 161, 36, 95, 90, -264, 15, -145, 260, 199, 141, 199, 83, 261, -126, 107, 274, 112, 129, -27, -73, -247, 126, -114, -45, -233, 83, 186, -232, -77, 261, 27, -116, 261, -133, -56, -13, 147, -210, -170, 95, -47, -114, 190, 249, 158, 27, 274, -11, 89, 18, 96, 118, -250, -225, -68, -248, 173, -181, -122, 199, 185, 171, 187, 249, -114, -44, 140, -239, -221, 260, 145, 275, 124, -195, 166, -52, 147, -71, -191, 249, -200, -248, -223, 199, -265, 13, -113, -156, 249, 261, 261, -166, -12, -26, 39, -55, 13, -140, -210, -1, 166, 116, -76, 155, -17, 25, -208, 186, -129, -37, 136, -33, -78, 174, 200, 13, 27, -248, -132, 262, 142, -36, -171, -242, -62, -249, 122, -51, -64, -150, 12, 181, 9, -233, 188, 13, -29, -240, -5, -119, 274, -64, 10, 28, 274, -161, 27, -247, 8, 108, -160, -191, 173, -76, 184, -145, -265, 180, 85, -189, 248, -2, 173, 8, 198, -44];
Q11_2YARY = [14, -39, 158, 22, 16, 42, -39, -5, 28, 166, 0, -68, 67, 102, -144, 73, -78, -144, 64, -69, -124, -39, -30, 86, 91, 8, 65, -38, 112, -36, -122, 51, 48, 143, 171, 46, 34, 18, 110, 155, 93, 58, 0, -6, -61, -71, -17, 19, -67, -123, -24, 52, -64, -120, 28, -50, -11, -76, -29, -39, -18, -59, 14, 42, -19, 17, 55, -30, -130, -77, -115, 127, -20, -57, 91, 71, -43, 52, -58, -46, -138, 33, -96, 136, -61, -1, -42, -24, 154, 72, -43, -1, -83, -114, -60, -49, 54, 139, -4, 105, -39, -65, 91, -69, 53, 44, 65, -126, -58, -103, -49, 89, -131, 168, 150, -16, 46, -44, -64, 134, -64, 32, -57, 168, 13, 20, 150, 0, -99, 13, 71, 72, -36, 147, 75, 71, 122, -57, 47, 27, 81, -95, 52, -37, 17, -19, 171, -120, -32, -67, 90, -144, 4, -49, 43, 117, 130, 8, -30, 83, -68, 130, -65, -31, -6, 83, -11, -5, 90, -24, -54, -1, -116, 141, 64, -37, -29, 58, -107, 28, 64, 24, 91, 35, 168, 91, -120, 72, 23, 54, -36, -134, -57, 86, -41, -126, -33, 3, -115, -8, -138, 32, 7, -5, -4, 35, 36, -84, 121, 73, -20, -132, 89, -134, -52, 170, 73, -31, 9, -56, 73, -116, 40, 54, -65, -39, -132, -11, -140, -39, 137, -46, 101, 3, -56, 132, 53, 91, 49, 14, 37, 48, 72, 76, -30, -26, 142, -68, 142, 75, -55, -128, 37, -145, 65, 152, 55, -72, 22, 124, -41, 63, -77, 67, 146, -19, -68, -53, -69, -133, 91, 90, 58, 9, -53, 151, -117, -108, 51, 52, 83, -145, -103, -34, 72, 102, -141, 91, -53, 15, 39, -59, -57, 90, 81, -46, 154, -58, 60, 153, 115, 75, 61, 89, -18, 9, -48, -96, -116, -28, 159, 33, 28, -144, 132, 82, -26, 35, -10, -139, -10, 72, -49, 52, -14, -107, 38, 165, 139, -17, -21, -43, 75, 82, -132, -27, -40, -54, 61, -50, 54, -92, 89];
Q11_3XARY = [45, -93, 293, -236, 100, -138, 76, -296, -141, -83, -128, -35, -160, -287, -291, -160, 198, -295, 259, 286, -176, -26, 251, 298, -241, 59, -35, 63, 193, 281, -232, 136, -81, 303, 45, 284, -139, -194, -26, 243, -184, 239, -240, 248, 137, 261, 250, 0xFF, -135, 78, -174, -160, 239, -26, 275, -134, -137, -174, -229, 266, 247, -193, 203, -194, -136, -262, 191, -131, -229, -286, 71, -142, -296, 243, 203, -287, -136, -267, 298, -230, 251, -35, -145, -182, -278, 0x0100, -93, 265, 296, 148, -296, -287, 145, -284, 27, 239, -234, -238, 26, 62, 100, 145, -136, -150, -287, 248, 152, 246, -93, -231, -40, -145, -169, -193, -170, -139, 296, 137, -194, -30, -232, -293, -177, -296, 0xFF, -181, 203, 298, 82, 137, -89, -182, 145, -244, 193, -29, -43, -128, -26, 290, 304, 194, -58, -229, -295, 136, 241, 304, 37, -238, -93, 200, 137, 142, 271, -149, 44, 28, 13, -137, -27, 194, -84, -48, 247, -239, -295, -37, -141, 288, -232, 305, 62, 79, -139, 295, -295, 296, -153, 11, -177, 137, 141, -84, 169, 277, 155, -136, 292, -186, -160, -159, -89, -34, 194, 11, 190, -139, 13, -180, -133, -185, -89, -34, -36, -33, -186, -191, -296, 301, -55, 304, -292, -238, 250, -84, -130, 137, 11, 272, 90, -238, -142, 137, -85, -54, 203, 165, -290, -166, -144, -183, -191, 200, 184, 290, 92, -250, 186, -188, -31, -258, 188, -248, -28, -93, 0x0100, -31, -29, -291, -93, -127, -182, 182, -229, 198, 145, 200, 200, 145, -295, -185, 186, -269, 29, -38, -89, -189, 196, 290, -295, 241, 170, -62, 201, -136, -40, 194, -83, 204, -154, -46, -65, 253, 246, -31, 301, -296, -238, 141, 273, -186, -186, 86, 55, -287, -186, -128, -42, -243, -84, 99, -288, 141, -164, -260, 136, 202, 203, -233, -162, 40, 136, -178, 254, 294, -251, -246, 284, 136, 194, -185, 295, -88, 175, -88, 137, -130, 239, 146, 25, 295, 98, 101, -76, 296, -144, 248, 250, 142, 199, -93, 248];
Q11_3YARY = [17, -14, 49, 44, 17, -15, 17, 20, -21, -33, 14, 31, 52, -18, -34, 61, -34, 51, -26, -25, -30, 25, 46, 40, 50, 17, -3, 4, -2, 57, 35, -35, 42, 31, 10, -33, 49, 12, -3, 40, 46, 33, 40, 21, 40, 56, -25, -24, 1, 5, 50, -26, 14, 14, -36, -19, -23, 56, -21, 58, 45, 23, -22, 7, 46, 57, 51, -13, -1, -35, 4, 51, 36, -14, 10, 2, 15, 55, -17, 31, 49, -19, 54, -26, 47, -29, -33, -34, 45, 41, -34, 19, 59, 42, 10, 21, 41, -19, 5, 10, 5, -34, 2, -32, 60, 41, 45, 20, 16, 16, 46, -29, 58, 28, -31, 43, 3, -23, -6, 12, 4, -18, 53, -18, 54, 51, 32, -6, 11, 59, 18, 42, -19, 52, 50, -6, 50, 28, -18, -28, -3, -18, 57, -34, 59, 14, 9, 15, 5, 30, 60, -2, 59, -17, 61, 56, 5, 17, 17, 34, -34, 16, 1, 57, -19, 47, 40, 40, -27, 52, -14, 9, 17, 16, -25, 39, 18, 20, 59, 5, -23, 12, -35, 34, 50, 59, 48, 27, 45, 43, -35, -27, 2, -34, 36, 5, 44, -18, 11, 44, 41, 6, 60, 14, 47, 45, 19, 35, 1, 36, 51, 25, 17, 14, 43, 19, 36, 46, 17, 52, 17, -2, 46, -1, 51, 59, 28, 54, 0, -34, -24, -15, -11, 37, 56, 48, 5, 49, 54, -16, 42, 58, 53, 54, 34, 49, 50, -20, 39, -17, 1, 2, -18, 58, 18, 42, -4, 17, -18, 15, -1, -12, 48, 54, 17, 49, 35, 40, 45, -22, -35, -9, 57, 55, 35, 20, 51, -34, -14, -34, -34, 55, 51, -22, 2, -34, -10, 60, -35, 16, -27, -20, 35, 5, 4, 37, 7, -8, 53, 44, 60, 16, 59, -1, 60, 50, -34, -34, -7, -33, 52, 17, -17, 48, 49, -19, 57, 48, 55, 30, 47, 27, -22, -34, 59, -13, -3, 20, -4, 28, 6, 12, 12, 4, 47, -16, 48, 10, -19, 58, -16, 30, -3];
A16ARY = ["ナデ肩", "ちょっとナデ肩", "普通", "ちょっとイカリ肩", "イカリ肩"];
A17ARY = ["ちょっとぽっちゃり", "ふつう", "ちっちゃい", "大柄", "筋肉質", "ちょっとやせ型", "ふくよか", "ちょうどいい", "大きい", "ボンキュッボン"];
SearchAry = new Array();
QARY = ["普通のブラと比べて、着用感は?", "ブラトップのフィット感は?", "ブラトップ、どうでしたか?", "ブラトップを着る頻度は?", "ブラトップを着るのは、どんな場面?", "1500円の価格は?", "ブラトップ、何枚欲しい?", "どのブラトップが好き?", "化粧にかける時間は?", "服を買うときに気にする点は?", "好きな雑誌は?", "好きな動物は?", "好きな国は?", "好きな食べ物は?", "一ヶ月にいくら服を買う?"];
ENARY = ["COMPARED WITH REGULAR BRAS, HOW DOES THE BRA TOP FEEL WHEN WORN?", "HOW DO THE BRA TOP CUPS FIT?", "WHAT DID YOU LIKE ABOUT THIS BRA TOP?", "HOW OFTEN WOULD YOU WANT TO WEAR A BRA TOP?", "WHERE OR ON WHAT OCCASION WOULD YOU WEAR A BRA TOP?", "HOW DO YOU FEEL ABOUT THE PRICE OF 1,500? (PRICED LOWER THAN COMPETITORS)", "HOW MANY BRA TOPS WOULD YOU WANT TO OWN?", "WHAT KIND OF BRA TOPS WOULD YOU WANT?", "HOW MUCH TIME DO YOU SPEND PUTTING ON YOUR MAKEUP?", "WHAT DO YOU LOOK FOR WHEN YOU BUY CLOTHES?", "WHAT IS YOUR FAVORITE MAGAZINE?", "WHAT IS YOUR FAVORITE ANIMAL?", "WHAT IS YOUR FAVORITE COUNTRY? WHICH COUNTRY WOULD YOU LIKE TO VISIT?", "WHAT IS YOUR FAVORITE FOOD?", "HOW MUCH DO YOU SPEND ON CLOTHES IN A MONTH?"];
init3D();
stop();
this.addEventListener(Event.ENTER_FRAME, CREATE);
}
public function VideoLoader(){
var _local1:Object;
connection2 = new NetConnection();
connection2.connect(null);
_local1 = new Object();
netStream2.client = _local1;
netStream2.bufferTime = 1;
netStream2.play((((((("flv/" + Data[arr[loadVtime]].id) + "/") + Data[arr[loadVtime]].id) + "-") + QUESTION) + ".flv"));
addEventListener(Event.ENTER_FRAME, EnterFrameFunc);
}
function frame3(){
stop();
xml = "data.xml";
isUnicode = true;
loaderObj = new XMLLoader(xml, isUnicode, this, "XMLLoad");
}
public function doRollOver(_arg1:Event):void{
var _local2:DisplayObject3D;
var _local3:*;
var _local4:Plane;
_local3 = (Math.random() * 360);
_local4 = planeByContainer[_arg1.target];
Tweener.addTween(_arg1.target, {_brightness:3, time:0, transition:"linear"});
Tweener.addTween(_arg1.target, {_brightness:0, time:0.5, transition:"linear"});
}
public function COLORCHANGE(_arg1){
COLOR(1);
logo.COLORCHANGE(1);
Tweener.addTween(title, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(question.icon, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(question.q, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(question.en, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(Graph, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(spec.bg, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(link, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(english.bg, {_color:("0x" + COL), time:0.3, transition:"linear"});
Tweener.addTween(english.arrow, {_color:("0x" + COL), time:0.3, transition:"linear"});
}
public function makeIndependentNumArr(_arg1:int, _arg2:int){
loadVtime = 0;
na = [];
if (FILTERING != 0){
if (SearchAry.length < 6){
j = Math.floor((Math.random() * SearchAry.length));
m = 0;
while (m < 5) {
na.push(SearchAry[j]);
j++;
if (j >= SearchAry.length){
j = 0;
};
m++;
};
} else {
loadVtime = 0;
na = [];
na.push(SearchAry[Math.floor((Math.random() * SearchAry.length))]);
j = 1;
while (j <= (_arg2 - 1)) {
checkFlag = false;
kouho = SearchAry[Math.floor((Math.random() * SearchAry.length))];
m = 0;
while (m <= (na.length - 1)) {
if (kouho == na[m]){
checkFlag = true;
};
m++;
};
if (!checkFlag){
na.push(kouho);
} else {
j--;
};
j++;
};
};
} else {
loadVtime = 0;
na = [];
na.push(Math.floor((Math.random() * _arg1)));
j = 1;
while (j <= (_arg2 - 1)) {
checkFlag = false;
kouho = Math.floor((Math.random() * _arg1));
m = 0;
while (m <= (na.length - 1)) {
if (kouho == na[m]){
checkFlag = true;
};
m++;
};
if (!checkFlag){
na.push(kouho);
} else {
j--;
};
j++;
};
};
arr = na;
VideoLoader();
}
public function Focus(_arg1){
Tweener.removeTweens(spec.mask_mc);
spec.mask_mc.width = 1;
spec.mask_mc.x = 0;
Tweener.addTween(spec.mask_mc, {width:spec.bg.width, time:0.5, transition:"easeInOutQuint"});
FOCUSFLG = 1;
if ((((_arg1.extra.Aka == "")) || ((_arg1.extra.Aka == undefined)))){
spec.title.text = "NO NICK NAME";
} else {
spec.title.text = _arg1.extra.Aka;
};
spec.title.autoSize = "left";
spec.text.text = (((((((("AGE " + _arg1.extra.Age) + " HEIGHT ") + _arg1.extra.Height) + " BLOOD_TYPE ") + _arg1.extra.Blood) + " BRATOP ") + _arg1.extra.Size) + "_SIZE");
spec.text.autoSize = "left";
if (_arg1.extra.A16 != ""){
if (isEng == "ja"){
spec.shouldertype.text = "SHOULDER";
spec.shouldertype.autoSize = "left";
spec.shoulder.text = A16ARY[(_arg1.extra.A16 - 1)];
} else {
spec.shouldertype.text = EN16[(_arg1.extra.A16 - 1)];
spec.shouldertype.autoSize = "left";
spec.shoulder.text = "";
};
spec.shoulder.autoSize = "left";
} else {
if (isEng == "ja"){
spec.shoulder.text = "NO_DATA";
spec.shoulder.autoSize = "left";
} else {
spec.shoulder.text = "";
spec.shoulder.autoSize = "left";
};
};
if (_arg1.extra.A17 != ""){
if (isEng == "ja"){
spec.bodytype.text = "BODY_TYPE";
spec.bodytype.autoSize = "left";
spec.bodytype.x = ((spec.shoulder.x + spec.shoulder.width) + 4);
spec.bodytype.y = spec.shouldertype.y;
spec.body.text = A17ARY[(_arg1.extra.A17 - 1)];
spec.body.x = (spec.bodytype.x + spec.bodytype.width);
spec.body.autoSize = "left";
} else {
spec.bodytype.y = spec.shouldertype.y;
spec.bodytype.x = ((spec.shouldertype.x + spec.shouldertype.width) + 8);
spec.bodytype.text = EN17[(_arg1.extra.A17 - 1)];
spec.bodytype.autoSize = "left";
spec.body.text = "";
spec.body.autoSize = "left";
};
} else {
if (isEng == "ja"){
spec.bodytype.x = ((spec.shoulder.x + spec.shoulder.width) + 4);
spec.body.text = "NO_DATA";
spec.body.x = (spec.bodytype.x + spec.bodytype.width);
spec.body.autoSize = "left";
} else {
spec.bodytype.text = "";
spec.bodytype.autoSize = "left";
spec.body.text = "";
spec.body.autoSize = "left";
};
};
spec.id = _arg1.extra.Bratop;
spec.visible = true;
}
public function CREATE(_arg1){
createAlbum(_arg1);
createAlbum(_arg1);
createAlbum(_arg1);
createAlbum(_arg1);
createAlbum(_arg1);
loading.COPY(((num / 343) * 193));
}
public function update3D():void{
var _local1:DisplayObject3D;
var _local2:DisplayObject3D;
var _local3:DisplayObject3D;
var _local4:DisplayObject3D;
var _local5:*;
_local1 = camera.target;
_local2 = camera.extra.goPosition;
_local3 = camera.extra.goTarget;
_local5 = i;
if (FILTERING != 0){
Graph.visible = false;
i = _local5;
while (i <= (_local5 + 3)) {
if (i <= maxAlbums){
_local4 = scene.getChildByName(("AlbumP" + i));
_local4.visible = true;
Tweener.removeTweens(_local4);
if (_local4.extra.Search == 1){
Tweener.addTween(_local4, {x:_local4.extra.TARGET.x, y:_local4.extra.TARGET.y, z:0, time:0.5, transition:"easeInOutExpo"});
Tweener.addTween(_local4, {rotationX:0, rotationY:0, rotationZ:0, time:0.5, transition:"easeOutSine"});
} else {
Tweener.addTween(_local4, {x:((Math.random() * 10000) - 5000), y:((Math.random() * 10000) - 5000), z:-10000, time:0.5, transition:"easeInOutExpo"});
Tweener.addTween(_local4, {rotationX:0, rotationY:0, rotationZ:0, time:0.5, transition:"easeOutSine"});
};
mc[("m" + i)].movie.gotoAndStop((i + 1));
Tweener.addTween(mc[("m" + i)].movie.bg, {_color:("0x" + COL), time:0, transition:"linear"});
mc[("m" + i)].updateBitmap();
};
i++;
};
} else {
if ((((num >= maxAlbums)) && ((i <= maxAlbums)))){
i = _local5;
while (i <= (_local5 + 5)) {
if (i <= maxAlbums){
_local4 = scene.getChildByName(("AlbumP" + i));
_local4.visible = true;
mc[("m" + i)].movie.gotoAndStop((i + 1));
Tweener.addTween(mc[("m" + i)].movie.bg, {_color:("0x" + COL), time:0, transition:"linear"});
mc[("m" + i)].updateBitmap();
if ((((((QUESTION == 11)) || ((QUESTION == 12)))) || ((QUESTION == 14)))){
ShapeObj.x = (this[(((("Q" + QUESTION) + "_") + ShapeNum) + "XARY")][i] * 4);
ShapeObj.y = (this[(((("Q" + QUESTION) + "_") + ShapeNum) + "YARY")][i] * 4);
ShapeObj.z = (1500 + ((Math.random() * 100) - 50));
ShapeObj.rotationX = (ShapeObj.rotationY = (ShapeObj.rotationZ = 0));
_local4.extra.TARGET = ShapeObj;
} else {
_local4.extra.TARGET = _local4.extra[("goto" + QUESTION)];
};
Tweener.addTween(_local4, {x:_local4.extra.TARGET.x, y:_local4.extra.TARGET.y, z:_local4.extra.TARGET.z, time:0.8, transition:"easeInOutExpo"});
Tweener.addTween(_local4, {rotationX:_local4.extra.TARGET.rotationX, rotationY:_local4.extra.TARGET.rotationY, rotationZ:_local4.extra.TARGET.rotationZ, time:0.8, transition:"easeOutSine"});
};
i++;
};
};
};
plane = scene.getChildByName(("AlbumP" + nowNum));
planeObj.x = (plane.x - (Math.sin((plane.rotationY * RAD)) * Math.abs(Math.cos((plane.rotationX * RAD)))));
planeObj.y = (plane.y - Math.sin((plane.rotationX * RAD)));
planeObj.z = (plane.z - (Math.cos((plane.rotationY * RAD)) * Math.abs(Math.cos((plane.rotationX * RAD)))));
planeObj.rotationX = plane.rotationX;
planeObj.rotationY = plane.rotationY;
planeObj.rotationZ = plane.rotationZ;
scene.renderCamera(this.camera);
}
public function asyncErrorHandler(_arg1:AsyncErrorEvent):void{
}
public function XMLLoad(_arg1:Array){
var _local2:int;
var _local3:int;
var _local4:int;
var _local5:int;
var _local6:int;
Data = _arg1;
_local2 = 1;
while (_local2 <= 15) {
if ((((_local2 <= 10)) || ((_local2 >= 15)))){
_local3 = 1;
while (_local3 <= this[("Q" + _local2)].length) {
this[(("Q" + _local2) + "Obj")][("a" + _local3)] = 0;
_local3++;
};
_local4 = 1;
while (_local4 <= (Data.length - 1)) {
_local3 = 1;
while (_local3 <= this[("Q" + _local2)].length) {
if (Number(Data[_local4][("a" + _local2)]) == _local3){
var _local7 = this[(("Q" + _local2) + "Obj")];
var _local8 = ("a" + _local3);
var _local9 = (_local7[_local8] + 1);
_local7[_local8] = _local9;
};
_local3++;
};
_local4++;
};
_local3 = 1;
while (_local3 <= this[("Q" + _local2)].length) {
this[(("Q" + _local2) + "NumAry")].push(Math.round(((this[(("Q" + _local2) + "Obj")][("a" + _local3)] / Data.length) * 100)));
this[(("Q" + _local2) + "TotalAry")].push(this[(("Q" + _local2) + "Obj")][("a" + _local3)]);
_local3++;
};
};
_local2++;
};
_local3 = 0;
while (_local3 < (Q1NumAry.length - 1)) {
_local5 = 0;
_local6 = 0;
while (_local6 <= _local3) {
_local5 = (_local5 + Q1NumAry[_local6]);
_local6++;
};
A1Array.push(_local5);
A1Pos.push(((((((Q1Cloud * Q1NumAry.length) * (A1Array[_local3] / 100)) + (Number(((Q1NumAry[_local3] / 100) * (Q1Cloud * Q1NumAry.length))) / 2)) - ((Q1Cloud * Q1NumAry.length) / 2)) + ((_local3 - 1) * 200)) - 200));
_local3++;
};
A1Pos.push(((((((Q1Cloud * Q1NumAry.length) * (A1Array[_local3] / 100)) + (Number(((Q1NumAry[_local3] / 100) * (Q1Cloud * Q1NumAry.length))) / 2)) - ((Q1Cloud * Q1NumAry.length) / 2)) + ((_local3 - 1) * 200)) - 200));
maxAlbums = (Data.length - 1);
play();
}
public function DELETE(){
this.removeEventListener(Event.ENTER_FRAME, loop);
}
public function LANG(){
if (isEng == "ja"){
isEng = "en";
question.q.TYPO(QARY[(QUESTION - 1)], ENARY[(QUESTION - 1)]);
if (((((((((!((QUESTION == 3))) && (!((QUESTION == 11))))) && (!((QUESTION == 12))))) && (!((QUESTION == 13))))) && (!((QUESTION == 14))))){
TYPO((this[("Q" + QUESTION)].length - 1));
};
logo.LANG();
} else {
isEng = "ja";
english.visible = false;
question.q.TYPO(QARY[(QUESTION - 1)], ENARY[(QUESTION - 1)]);
if (((((((((!((QUESTION == 3))) && (!((QUESTION == 11))))) && (!((QUESTION == 12))))) && (!((QUESTION == 13))))) && (!((QUESTION == 14))))){
TYPO((this[("Q" + QUESTION)].length - 1));
};
logo.LANG();
};
if (scene.getChildByName(("AlbumP" + nowNum)).extra.A16 != ""){
if (isEng == "ja"){
spec.shouldertype.text = "SHOULDER";
spec.shouldertype.autoSize = "left";
spec.shoulder.text = A16ARY[(scene.getChildByName(("AlbumP" + nowNum)).extra.A16 - 1)];
} else {
spec.shouldertype.text = EN16[(scene.getChildByName(("AlbumP" + nowNum)).extra.A16 - 1)];
spec.shouldertype.autoSize = "left";
spec.shoulder.text = "";
};
spec.shoulder.autoSize = "left";
} else {
spec.shoulder.text = "NO_DATA";
spec.shoulder.autoSize = "left";
};
if (scene.getChildByName(("AlbumP" + nowNum)).extra.A17 != ""){
if (isEng == "ja"){
spec.bodytype.text = "BODY_TYPE";
spec.bodytype.autoSize = "left";
spec.bodytype.x = ((spec.shoulder.x + spec.shoulder.width) + 4);
spec.bodytype.y = (spec.bodytype.y = spec.shouldertype.y);
spec.body.text = A17ARY[(scene.getChildByName(("AlbumP" + nowNum)).extra.A17 - 1)];
spec.body.x = (spec.bodytype.x + spec.bodytype.width);
spec.body.autoSize = "left";
} else {
spec.bodytype.y = spec.shouldertype.y;
spec.bodytype.x = ((spec.shouldertype.x + spec.shouldertype.width) + 8);
spec.bodytype.text = EN17[(scene.getChildByName(("AlbumP" + nowNum)).extra.A17 - 1)];
spec.bodytype.autoSize = "left";
spec.body.text = "";
spec.body.autoSize = "left";
};
} else {
spec.bodytype.x = ((spec.shoulder.x + spec.shoulder.width) + 4);
spec.body.text = "NO_DATA";
spec.body.x = (spec.bodytype.x + spec.bodytype.width);
spec.body.autoSize = "left";
};
}
public function EnterFrameFunc(_arg1:Event){
perTime++;
if (Math.floor(((netStream2.bytesLoaded / netStream2.bytesTotal) * 100)) >= 100){
removeEventListener(Event.ENTER_FRAME, EnterFrameFunc);
if ((((loadVtime < 4)) && (!((arr[(loadVtime + 1)] == undefined))))){
loadVtime++;
VideoLoader();
};
};
}
public function TRANS(){
var _local1:Timer;
_local1 = new Timer(10);
_local1.addEventListener("timer", transTimerHandler);
_local1.start();
}
public function doPress(_arg1:Event):void{
var plane:Plane;
var event = _arg1;
VLTracer.sendRequest("try_uni");
planeObj.visible = false;
se.play(0, 1);
FOCUS = 1;
FOCUSFLG = 0;
plane = planeByContainer[event.target];
Obj = plane;
nowNum = plane.name.slice(1);
plane.scaleX = 1;
plane.scaleY = 1;
FOCUSOBJ = plane;
if (isEng == "en"){
english.visible = true;
if ((((((((((QUESTION == 3)) || ((QUESTION == 11)))) || ((QUESTION == 12)))) || ((QUESTION == 13)))) || ((QUESTION == 14)))){
english.TEXT(scene.getChildByName(("AlbumP" + nowNum)).extra[("EN" + QUESTION)]);
} else {
if ((((QUESTION == 10)) && ((scene.getChildByName(("AlbumP" + nowNum)).extra[("A" + QUESTION)] == 5)))){
english.TEXT(scene.getChildByName(("AlbumP" + nowNum)).extra[("EN" + QUESTION)]);
} else {
english.TEXT(this[("EN" + QUESTION)][(scene.getChildByName(("AlbumP" + nowNum)).extra[("A" + QUESTION)] - 1)]);
};
};
};
FLV = (((((scene.getChildByName(("AlbumP" + nowNum)).extra.Id + "/") + scene.getChildByName(("AlbumP" + nowNum)).extra.Id) + "-") + QUESTION) + ".flv");
stream.bufferTime = 1;
connection.addEventListener(NetStatusEvent.NET_STATUS, netStatusHandler);
connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, securityErrorHandler);
connection.connect(null);
stream.play(("flv/" + FLV));
VFLG = 1;
Tweener.removeTweens(camera);
Tweener.removeTweens(spec.mask_mc);
TargetY = (-(Math.sin((FOCUSOBJ.rotationX * RAD))) * camDis);
TargetX = (-(Math.sin((FOCUSOBJ.rotationY * RAD))) * Math.abs((Math.cos((FOCUSOBJ.rotationX * RAD)) * camDis)));
TargetZ = (-(Math.cos((FOCUSOBJ.rotationY * RAD))) * Math.abs((Math.cos((FOCUSOBJ.rotationX * RAD)) * camDis)));
Tweener.addTween(camera, {x:(plane.x + TargetX), y:(plane.y + TargetY), z:(plane.z + TargetZ), time:0.5, transition:"easeInOutQuint", onComplete:function ():void{
Focus(plane);
}});
Tweener.addTween(camera.target, {x:plane.x, y:plane.y, z:plane.z, time:0.5, transition:"easeInOutQuint"});
Tweener.addTween(spec.mask_mc, {x:spec.bg.width, width:1, time:0.5, transition:"easeOutExpo"});
}
public function loop(_arg1:Event):void{
var _local2:*;
time++;
if (VFLG == 1){
video.attachNetStream(stream);
FbmpData.draw(video);
};
if (FOCUSFLG == 1){
Graph.visible = false;
TargetX = (-(Math.sin((FOCUSOBJ.rotationY * RAD))) * Math.abs((Math.cos((FOCUSOBJ.rotationX * RAD)) * camDis)));
TargetY = (-(Math.sin((FOCUSOBJ.rotationX * RAD))) * camDis);
TargetZ = (-(Math.cos((FOCUSOBJ.rotationY * RAD))) * Math.abs((Math.cos((FOCUSOBJ.rotationX * RAD)) * camDis)));
camera.x = (FOCUSOBJ.x + TargetX);
camera.y = (FOCUSOBJ.y + TargetY);
camera.z = (FOCUSOBJ.z + TargetZ);
camera.target.x = FOCUSOBJ.x;
camera.target.y = FOCUSOBJ.y;
camera.target.z = FOCUSOBJ.z;
};
if (num < (maxAlbums + 1)){
logo.visible = false;
} else {
logo.visible = true;
if (logo.alpha < 0.9){
logo.alpha = (logo.alpha + ((1 - logo.alpha) / 10));
} else {
logo.alpha = 1;
};
};
update3D();
PosNum = ((-((stage.stageWidth - 1000)) / 2) + 14);
logo.x = PosNum;
PosNum = ((600 + ((stage.stageHeight - 600) / 2)) - 32);
logo.y = PosNum;
link.x = (((1000 + ((stage.stageWidth - 1000) / 2)) - link.width) + 20);
link.y = ((600 + ((stage.stageHeight - 600) / 2)) - 29);
PosNum = ((1000 + ((stage.stageWidth - 1000) / 2)) - 210);
title.x = PosNum;
PosNum = ((-((stage.stageHeight - 600)) / 2) + 6);
title.y = PosNum;
PosNum = ((-((stage.stageWidth - 1000)) / 2) + 15);
question.x = PosNum;
PosNum = ((-((stage.stageHeight - 600)) / 2) + 15);
question.y = PosNum;
if (FILTERING == 0){
if (musicTime <= 3){
if (((((((((!((QUESTION == 3))) && (!((QUESTION == 11))))) && (!((QUESTION == 12))))) && (!((QUESTION == 13))))) && (!((QUESTION == 14))))){
Graph.visible = true;
};
if ((((((QUESTION == 1)) || ((QUESTION == 6)))) || ((QUESTION == 7)))){
_local2 = 0;
t = 0;
while (t <= (Graph.numChildren - 1)) {
_local2 = (_local2 + Number(this[(("Q" + QUESTION) + "NumAry")][t]));
plane = scene.getChildByName(("d" + t));
plane.x = (this[(("A" + QUESTION) + "Pos")][t] - 300);
plane.y = ((-(this[(("Q" + QUESTION) + "NumAry")][t]) * 7) - 50);
GraphX = ((plane.projected[plane.geometry.vertices[1]].x + 600) - (typo[("t" + t)].num.width / 2));
GraphY = (plane.projected[plane.geometry.vertices[1]].y + 300);
typo[("t" + t)].x = GraphX;
typo[("t" + t)].y = GraphY;
t++;
};
} else {
if (QUESTION == 2){
scene.getChildByName(("d" + 0)).x = -150;
scene.getChildByName(("d" + 0)).y = 600;
scene.getChildByName(("d" + 1)).x = -1400;
scene.getChildByName(("d" + 1)).y = -500;
scene.getChildByName(("d" + 2)).x = -150;
scene.getChildByName(("d" + 2)).y = -500;
t = 0;
while (t <= (Graph.numChildren - 1)) {
plane = scene.getChildByName(("d" + t));
plane.z = 500;
typo[("t" + t)].x = ((plane.projected[plane.geometry.vertices[1]].x + 600) - (typo[("t" + t)].num.width / 2));
typo[("t" + t)].y = (plane.projected[plane.geometry.vertices[1]].y + 300);
t++;
};
} else {
if (QUESTION == 4){
_local2 = 0;
t = 0;
while (t <= (Graph.numChildren - 1)) {
plane = scene.getChildByName(("d" + t));
plane.x = (-200 * (t % 2));
plane.y = ((400 * t) - (150 * Graph.numChildren));
typo[("t" + t)].x = ((plane.projected[plane.geometry.vertices[1]].x + 600) - (typo[("t" + t)].num.width / 2));
typo[("t" + t)].y = (plane.projected[plane.geometry.vertices[1]].y + 300);
t++;
};
} else {
if (QUESTION == 5){
t = 0;
while (t <= (Graph.numChildren - 1)) {
plane = scene.getChildByName(("d" + t));
plane.x = ((400 * t) - (200 * Graph.numChildren));
plane.y = (-200 * (t % 2));
plane.z = 0;
typo[("t" + t)].x = ((plane.projected[plane.geometry.vertices[1]].x + 600) - (typo[("t" + t)].num.width / 2));
typo[("t" + t)].y = (plane.projected[plane.geometry.vertices[1]].y + 300);
t++;
};
} else {
if (QUESTION == 8){
scene.getChildByName(("d" + 0)).x = 0;
scene.getChildByName(("d" + 0)).y = 1000;
scene.getChildByName(("d" + 1)).x = -1600;
scene.getChildByName(("d" + 1)).y = -600;
scene.getChildByName(("d" + 2)).x = 600;
scene.getChildByName(("d" + 2)).y = -600;
scene.getChildByName(("d" + 3)).x = -500;
scene.getChildByName(("d" + 3)).y = -600;
t = 0;
while (t <= (Graph.numChildren - 1)) {
plane = scene.getChildByName(("d" + t));
plane.z = 1600;
typo[("t" + t)].x = ((plane.projected[plane.geometry.vertices[1]].x + 600) - (typo[("t" + t)].num.width / 2));
typo[("t" + t)].y = (plane.projected[plane.geometry.vertices[1]].y + 300);
t++;
};
} else {
if (QUESTION == 9){
scene.getChildByName(("d" + 0)).x = 400;
scene.getChildByName(("d" + 0)).y = 600;
scene.getChildByName(("d" + 1)).x = -800;
scene.getChildByName(("d" + 1)).y = -700;
scene.getChildByName(("d" + 2)).x = -1300;
scene.getChildByName(("d" + 2)).y = 700;
scene.getChildByName(("d" + 3)).x = -600;
scene.getChildByName(("d" + 3)).y = 1100;
t = 0;
while (t <= (Graph.numChildren - 1)) {
plane = scene.getChildByName(("d" + t));
plane.z = 1600;
typo[("t" + t)].x = ((plane.projected[plane.geometry.vertices[1]].x + 600) - (typo[("t" + t)].num.width / 2));
typo[("t" + t)].y = (plane.projected[plane.geometry.vertices[1]].y + 300);
t++;
};
} else {
if (QUESTION == 10){
t = 0;
while (t <= (Graph.numChildren - 1)) {
plane = scene.getChildByName(("d" + t));
plane.x = (Math.floor(((Q10TotalAry[t] * 50) / 4)) - 1400);
plane.y = (400 - (150 * t));
plane.z = 1000;
typo[("t" + t)].x = ((plane.projected[plane.geometry.vertices[1]].x + 600) - (typo[("t" + t)].num.width / 2));
typo[("t" + t)].y = (plane.projected[plane.geometry.vertices[1]].y + 300);
t++;
};
} else {
if (QUESTION == 15){
t = 0;
while (t <= (Graph.numChildren - 1)) {
plane = scene.getChildByName(("d" + t));
plane.x = (Math.floor(((Q15TotalAry[t] * 50) / 6)) - 200);
plane.y = (-40 + (160 * t));
plane.z = 500;
typo[("t" + t)].x = (plane.projected[plane.geometry.vertices[1]].x + 600);
typo[("t" + t)].y = (plane.projected[plane.geometry.vertices[1]].y + 300);
t++;
};
};
};
};
};
};
};
};
};
};
} else {
Graph.visible = false;
MAP.visible = false;
};
}
public function createAlbum(_arg1){
var _local2:MovieAssetMaterial;
var _local3:Plane;
var _local4:DisplayObject3D;
var _local5:DisplayObject3D;
var _local6:DisplayObject3D;
var _local7:DisplayObject3D;
var _local8:DisplayObject3D;
var _local9:DisplayObject3D;
var _local10:DisplayObject3D;
var _local11:DisplayObject3D;
var _local12:DisplayObject3D;
var _local13:DisplayObject3D;
var _local14:DisplayObject3D;
var _local15:DisplayObject3D;
var _local16:DisplayObject3D;
var _local17:DisplayObject3D;
var _local18:DisplayObject3D;
var _local19:Number;
var _local20:Number;
var _local21:Number;
var _local22:*;
var _local23:int;
var _local24:int;
var _local25:int;
var _local26:*;
var _local27:Sprite;
if (num < (maxAlbums + 1)){
stage.quality = StageQuality.HIGH;
_local2 = (mc[("m" + num)] = new MovieAssetMaterial("AlbumP", true));
_local2.doubleSided = true;
Tweener.addTween(_local2.movie.bg, {_color:("0x" + COL), time:0, transition:"linear"});
_local2.movie.gotoAndStop((num + 1));
_local2.updateBitmap();
stage.quality = StageQuality.LOW;
_local3 = new Plane(_local2, paperSize);
_local3.name = ("t" + num);
_local4 = new DisplayObject3D();
_local5 = new DisplayObject3D();
_local6 = new DisplayObject3D();
_local7 = new DisplayObject3D();
_local8 = new DisplayObject3D();
_local9 = new DisplayObject3D();
_local10 = new DisplayObject3D();
_local11 = new DisplayObject3D();
_local12 = new DisplayObject3D();
_local13 = new DisplayObject3D();
_local14 = new DisplayObject3D();
_local15 = new DisplayObject3D();
_local16 = new DisplayObject3D();
_local17 = new DisplayObject3D();
_local18 = new DisplayObject3D();
_local19 = (Data[num].a1 - 1);
_local20 = Q1NumAry[_local19];
_local21 = Number(((_local20 / 100) * (Q1Cloud * Q1NumAry.length)));
RAN = ((Math.random() * _local21) - (_local21 / 2));
TargetX = ((((RAN + (((Q1Cloud * Q1NumAry.length) * (A1Array[_local19] / 100)) + (_local21 / 2))) - ((Q1Cloud * Q1NumAry.length) / 2)) + ((_local19 - 1) * 200)) - 200);
_local4.x = TargetX;
_local22 = Math.sqrt(Math.abs((((_local21 / 2) * (_local21 / 2)) - (RAN * RAN))));
TargetY = ((Math.random() * (_local22 * 2)) - _local22);
_local4.y = TargetY;
_local23 = Math.round((Math.random() * 1));
if (_local23 == 0){
_local23 = -1;
};
XY = Math.sqrt((Math.abs(((_local21 / 2) * (_local21 / 2))) - (_local4.y * _local4.y)));
TargetZ = (Math.sqrt(Math.abs(((XY * XY) - (RAN * RAN)))) * _local23);
_local4.z = TargetZ;
TargetX = ((-(_local4.y) / _local21) * 90);
_local4.rotationX = TargetX;
if (_local4.z < 0){
TargetY = Math.floor(((Math.atan((RAN / _local4.z)) / RAD) + 360));
} else {
TargetY = Math.floor(((Math.atan((RAN / _local4.z)) / RAD) + 540));
};
_local4.rotationY = TargetY;
_local4.rotationZ = 0;
if (Data[num].a2 == 2){
_local24 = Math.ceil(((wNum / 100) * Q2NumAry[(Data[num].a2 - 1)]));
_local24++;
} else {
_local24 = Math.ceil(((wNum / 100) * (100 - Q2NumAry[1])));
_local24 = (_local24 + 2);
};
TargetX = (((-500 + ((Q2obj[("a" + Data[num].a2)] % _local24) * 70)) - (_local24 * 35)) + ((Data[num].a2 % 2) * 1150));
TargetY = ((-(Math.floor(((Q2obj[("a" + Data[num].a2)] / _local24) - 1))) * 70) + 300);
TargetZ = 500;
if (Data[num].a2 == 3){
TargetY = (TargetY - (Math.ceil(((Q2TotalAry[0] / _local24) + 1)) * 70));
};
_local5.x = TargetX;
_local5.y = TargetY;
_local5.z = TargetZ;
_local5.rotationX = 0;
_local5.rotationY = 0;
_local5.rotationZ = 0;
var _local28 = Q2obj;
var _local29 = ("a" + Data[num].a2);
var _local30 = (_local28[_local29] + 1);
_local28[_local29] = _local30;
cloudSize = 2000;
_local25 = 40;
_local21 = (cloudSize / 2);
TargetY = ((((cloudSize / maxAlbums) * 6) * num) - (cloudSize * 3));
_local6.y = TargetY;
RO = (360 / _local25);
TargetX = (Math.sin(((RO * (num % _local25)) * RAD)) * _local21);
_local6.x = TargetX;
RAN = Math.ceil(Math.sin(((RO * (num % _local25)) * RAD)));
if (RAN == 0){
RAN = -1;
};
XY = Math.sqrt(((_local21 * _local21) - (_local6.y * _local6.y)));
TargetZ = (Math.cos(((RO * (num % _local25)) * RAD)) * _local21);
_local6.z = TargetZ;
if (_local6.z < 0){
TargetY = ((Math.atan((_local6.x / _local6.z)) / RAD) + 360);
} else {
TargetY = ((Math.atan((_local6.x / _local6.z)) / RAD) + 540);
};
_local6.rotationY = (TargetY + 10);
_local6.rotationZ = 0;
cloudSize = 500;
_local25 = 30;
_local21 = int((cloudSize / 2));
TargetX = ((100 * Q4TotalAry[(Number(Data[num].a4) - 1)]) - (cloudSize * 4));
_local7.x = TargetX;
RO = (360 / _local25);
TargetY = (((Math.sin(((RO * (Q4TotalAry[(Number(Data[num].a4) - 1)] % _local25)) * RAD)) * _local21) + ((Number(Data[num].a4) - 1) * 400)) - (300 * (Q4TotalAry.length / 2)));
_local7.y = TargetY;
XY = Math.sqrt(((_local21 * _local21) - (_local7.y * _local7.y)));
TargetZ = (Math.cos(((RO * (Q4TotalAry[(Number(Data[num].a4) - 1)] % _local25)) * RAD)) * _local21);
_local7.z = TargetZ;
if (_local7.z < 0){
TargetX = ((Math.atan((_local7.x / _local7.z)) / RAD) + 360);
} else {
TargetX = ((Math.atan((_local7.x / _local7.z)) / RAD) + 540);
};
_local7.rotationX = (TargetX + 10);
_local7.rotationY = 0;
_local7.rotationZ = 0;
_local28 = Q4TotalAry;
_local29 = (Number(Data[num].a4) - 1);
_local30 = (_local28[_local29] - 1);
_local28[_local29] = _local30;
cloudSize = 500;
_local25 = 30;
_local21 = Number((cloudSize / 2));
TargetY = ((100 * Q5TotalAry[(Number(Data[num].a5) - 1)]) - (cloudSize * 3));
_local8.y = TargetY;
RO = Number((360 / _local25));
TargetX = (((Math.sin(((RO * (Q5TotalAry[(Number(Data[num].a5) - 1)] % _local25)) * RAD)) * _local21) + ((Number(Data[num].a5) - 1) * 400)) - (400 * Math.floor((Q5TotalAry.length / 2))));
_local8.x = TargetX;
XY = Math.sqrt(((_local21 * _local21) - (_local8.x * _local8.x)));
TargetZ = (Math.cos(((RO * (Q5TotalAry[(Number(Data[num].a5) - 1)] % _local25)) * RAD)) * _local21);
_local8.z = TargetZ;
if (_local8.z < 0){
TargetY = ((Math.atan((_local8.x / _local8.z)) / RAD) + 360);
} else {
TargetY = ((Math.atan((_local8.x / _local8.z)) / RAD) + 540);
};
_local8.rotationY = TargetY;
_local8.rotationZ = 0;
_local28 = Q5TotalAry;
_local29 = (Number(Data[num].a5) - 1);
_local30 = (_local28[_local29] - 1);
_local28[_local29] = _local30;
TargetX = (this[(("Q6_" + Data[num].a6) + "XARY")].splice(0, 1) * 3);
TargetY = (this[(("Q6_" + Data[num].a6) + "YARY")].splice(0, 1) * 3);
TargetZ = ((2500 + (Math.random() * 100)) - 50);
_local9.x = TargetX;
_local9.y = TargetY;
_local9.z = TargetZ;
_local9.rotationX = 0;
_local9.rotationY = 0;
_local9.rotationZ = 0;
TargetX = (this[(("Q7_" + Data[num].a7) + "XARY")].splice(0, 1) * 3);
TargetY = (this[(("Q7_" + Data[num].a7) + "YARY")].splice(0, 1) * 3);
TargetZ = (((Math.random() * 100) - 50) + 1600);
_local10.x = TargetX;
_local10.y = TargetY;
_local10.z = TargetZ;
_local10.rotationX = 0;
_local10.rotationY = 0;
_local10.rotationZ = 0;
TargetX = (this[(("Q8_" + Data[num].a8) + "XARY")].splice(0, 1) * 4);
TargetY = (this[(("Q8_" + Data[num].a8) + "YARY")].splice(0, 1) * 4);
TargetZ = (((Math.random() * 20) - 10) + 1600);
_local11.x = TargetX;
_local11.y = TargetY;
_local11.z = TargetZ;
_local11.rotationX = 0;
_local11.rotationY = 0;
_local11.rotationZ = 0;
TargetX = (this[(("Q9_" + Data[num].a9) + "XARY")].splice(0, 1) * 4);
TargetY = (this[(("Q9_" + Data[num].a9) + "YARY")].splice(0, 1) * 4);
TargetZ = (((Math.random() * 20) - 10) + 1600);
_local12.x = TargetX;
_local12.y = TargetY;
_local12.z = TargetZ;
_local12.rotationX = 0;
_local12.rotationY = 0;
_local12.rotationZ = 0;
TargetX = ((Math.floor((Q10obj[("a" + Data[num].a10)] / 4)) * 50) - 1200);
TargetY = (450 - (150 * Data[num].a10));
_local13.x = TargetX;
_local13.y = TargetY;
_local13.z = 1000;
TargetX = (90 * Math.floor((Number(Q10obj[("a" + Data[num].a10)]) % 4)));
_local13.rotationX = TargetX;
_local13.rotationY = 0;
_local13.rotationZ = 0;
_local26 = 27;
switch (Math.floor((Q10obj[("a" + Data[num].a10)] % 4))){
case 1:
_local13.y = (_local13.y - _local26);
break;
case 2:
_local13.z = (_local13.z + _local26);
_local13.rotationX = 0;
_local13.rotationY = 180;
break;
case 3:
_local13.y = (_local13.y + _local26);
break;
case 0:
_local13.z = (_local13.z - _local26);
break;
default:
break;
};
_local28 = Q10obj;
_local29 = ("a" + Data[num].a10);
_local30 = (_local28[_local29] + 1);
_local28[_local29] = _local30;
TargetX = (Data[num].a13x * 5);
TargetY = (Data[num].a13y * 5);
_local16.x = TargetX;
_local16.y = TargetY;
_local16.z = (MAP.z - 400);
_local16.rotationX = 0;
_local16.rotationY = 0;
_local16.rotationZ = 0;
_local25 = Q15TotalAry[(Number(Data[num].a15) - 1)];
cloudSize = (20 * _local25);
_local21 = Number((cloudSize / 2));
TargetY = ((200 * Data[num].a15) - 500);
_local18.y = TargetY;
RO = Number((360 / _local25));
TargetX = (Math.sin((((RO * Q15obj[("a" + Data[num].a15)]) + (30 * Data[num].a15)) * RAD)) * _local21);
_local18.x = TargetX;
XY = Math.sqrt(((_local21 * _local21) - (_local18.x * _local18.x)));
TargetZ = (Math.cos((((RO * Q15obj[("a" + Data[num].a15)]) + (30 * Data[num].a15)) * RAD)) * _local21);
_local18.z = TargetZ;
if (_local18.z < 0){
TargetY = ((Math.atan((_local18.x / _local18.z)) / RAD) + 360);
} else {
TargetY = ((Math.atan((_local18.x / _local18.z)) / RAD) + 540);
};
_local18.rotationY = TargetY;
_local18.rotationZ = 0;
_local28 = Q15obj;
_local29 = ("a" + Data[num].a15);
_local30 = (_local28[_local29] + 1);
_local28[_local29] = _local30;
_local3.extra = {goto1:_local4, goto2:_local5, goto3:_local6, goto4:_local7, goto5:_local8, goto6:_local9, goto7:_local10, goto8:_local11, goto9:_local12, goto10:_local13, goto11:_local14, goto13:_local16, goto15:_local18, Aka:Data[num].aka, Height:Data[num].height, Age:Data[num].age, Blood:Data[num].blood, Size:Data[num].size, Id:Data[num].id, A1:Data[num].a1, A2:Data[num].a2, A3:Data[num].a3, A3_2:Data[num].a3_2, A4:Data[num].a4, A5:Data[num].a5, A6:Data[num].a6, A7:Data[num].a7, A8:Data[num].a8, A9:Data[num].a9, A10:Data[num].a10, A11:Data[num].a11, A12:Data[num].a12, A13:Data[num].a13, A14:Data[num].a14, A15:Data[num].a15, A16:Data[num].a16, A17:Data[num].a17, A18:Data[num].a18, EN3:Data[num].en3, EN10:Data[num].en10, EN11:Data[num].en11, EN12:Data[num].en12, EN13:Data[num].en13, EN14:Data[num].en14, Bratop:Data[num].bratop, TARGET:_local13};
scene.addChild(_local3, ("AlbumP" + String(num)));
_local3.x = ((Math.random() * 10000) - 5000);
_local3.y = ((Math.random() * 10000) - 5000);
_local3.z = ((Math.random() * 10000) - 5000);
_local3.x = ((TRYXARY[num] * 3) + 10);
_local3.y = (TRYYARY[num] * 3);
_local3.z = (((Math.random() * 100) - 50) + 6300);
_local3.extra.TARGET = _local3.extra[("goto" + QUESTION)];
_local27 = _local3.container;
_local27.buttonMode = true;
_local27.addEventListener(MouseEvent.ROLL_OVER, doRollOver);
_local27.addEventListener(MouseEvent.MOUSE_DOWN, doPress);
planeByContainer[_local27] = _local3;
num++;
} else {
_arg1.target.removeEventListener(Event.ENTER_FRAME, CREATE);
play();
};
}
public function transTimerHandler(_arg1:TimerEvent):void{
trace(link.music.channel.position);
trace(((link.music.channel.position % 16000) + " : %"));
if ((link.music.channel.position % 16000) < 10000){
_arg1.target.removeEventListener("timer", transTimerHandler);
musicTime = 0;
QUESTION++;
if (QUESTION > QARY.length){
VLTracer.sendRequest("try_rp");
QUESTION = 1;
} else {
if (QUESTION == 11){
ShapeNum = (Math.floor((Math.random() * 3)) + 1);
} else {
if (QUESTION == 12){
ShapeNum = (Math.floor((Math.random() * 8)) + 1);
} else {
if (QUESTION == 14){
ShapeNum = (Math.floor((Math.random() * 7)) + 1);
};
};
};
};
if (QUESTION == 13){
MAP.visible = true;
} else {
MAP.visible = false;
};
question.q.TYPO(QARY[(QUESTION - 1)], ENARY[(QUESTION - 1)]);
if (((((((((!((QUESTION == 3))) && (!((QUESTION == 11))))) && (!((QUESTION == 12))))) && (!((QUESTION == 13))))) && (!((QUESTION == 14))))){
TYPO((this[("Q" + QUESTION)].length - 1));
};
Graph.visible = false;
time = 0;
COLORCHANGE(1);
myTimer.removeEventListener("timer", timerHandler);
myTimer = new Timer(2000);
myTimer.addEventListener("timer", timerHandler);
myTimer.start();
};
}
public function COLOR(_arg1:Number){
COL = bmd.getPixel(Math.floor((Math.random() * color.width)), 7).toString(16);
}
public function TYPO(_arg1){
var _local2:int;
var _local3:*;
if (Graph.numChildren != 0){
_local2 = (Graph.numChildren - 1);
while (_local2 >= 0) {
_local3 = Graph.getChildAt(_local2);
Graph.removeChildAt(_local2);
_local3 = null;
_local2--;
};
};
_local2 = 0;
while (_local2 <= _arg1) {
typo[("t" + _local2)] = new Per();
typo[("t" + _local2)].num.text = (this[(("Q" + QUESTION) + "NumAry")][_local2] + "%");
typo[("t" + _local2)].num.autoSize = "left";
typo[("t" + _local2)].text.text = this[("Q" + QUESTION)][_local2];
typo[("t" + _local2)].en.text = this[("EN" + QUESTION)][_local2];
if (isEng == "ja"){
typo[("t" + _local2)].text.visible = true;
typo[("t" + _local2)].en.visible = false;
} else {
typo[("t" + _local2)].text.visible = false;
typo[("t" + _local2)].en.visible = true;
};
typo[("t" + _local2)].scaleX = (typo[("t" + _local2)].scaleY = ((this[(("Q" + QUESTION) + "NumAry")][_local2] / 100) + 1));
Graph.addChild(typo[("t" + _local2)]);
_local2++;
};
}
public function securityErrorHandler(_arg1:SecurityErrorEvent):void{
trace("セキュリティエラー");
}
public function init3D():void{
var _local1:MovieAssetMaterial;
var _local2:Plane;
container = new Sprite();
addChild(container);
container.x = 500;
container.y = 300;
scene = new MovieScene3D(container);
camera = new Camera3D();
camera.zoom = 10;
camera.extra = {goPosition:new DisplayObject3D(), goTarget:new DisplayObject3D()};
camera.target.x = (camera.target.y = (camera.target.z = 0));
camera.x = (camera.y = 0);
camera.z = 0;
camera.extra.goPosition.copyPosition(camera);
FbmpData = new BitmapData(320, 240, false, 0xFFFFFF);
Fmaterial = new BitmapMaterial(FbmpData);
Fmaterial.oneSide = false;
planeObj = scene.addChild(new Plane(Fmaterial, 45, 45, segment, segment));
planeObj.scaleX = (planeObj.scaleY = 1);
planeObj.container.mouseEnabled = false;
planeObj.visible = false;
stage.quality = StageQuality.HIGH;
_local1 = (bg = new MovieAssetMaterial("Map", true));
_local1.doubleSided = false;
bg.movie.gotoAndStop(QUESTION);
bg.updateBitmap();
_local2 = new Plane(_local1, 1375, 825, 6, 6);
scene.addChild(_local2, "Map");
_local2.scaleX = (_local2.scaleY = 4);
_local2.z = 2600;
_local2.y = 0;
_local2.visible = false;
stage.quality = StageQuality.LOW;
MAP = _local2;
}
}
}//package uniqlotry_fla
Section 53
//music_25 (uniqlotry_fla.music_25)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class music_25 extends MovieClip {
public var channel:SoundChannel;
public var volume:MovieClip;
public var s1:MovieClip;
public var s5:MovieClip;
public var s2:MovieClip;
public var s4:MovieClip;
public var sound:bgm;
public var s3:MovieClip;
public var Volume;
public var panCounter:Number;
public var trans:SoundTransform;
public function music_25(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
volume.visible = false;
Tweener.removeTweens(volume);
Tweener.addTween(volume, {x:-20, time:0.5, transition:"easeOutExpo"});
}
function frame1(){
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
volume.visible = false;
stop();
sound = new bgm();
Volume = 0;
panCounter = 0;
trans = new SoundTransform(0.5, 0);
channel = sound.play(20, 999, trans);
this.buttonMode = true;
}
public function OV(_arg1){
volume.visible = true;
Tweener.removeTweens(volume);
Tweener.addTween(volume, {x:27, time:0.5, transition:"easeOutExpo"});
}
public function SOUND(_arg1){
var _local2:*;
trans.volume = _arg1;
channel.soundTransform = trans;
_local2 = 1;
while (_local2 <= 5) {
this[("s" + _local2)].scaleY = (_arg1 + 0.1);
_local2++;
};
}
}
}//package uniqlotry_fla
Section 54
//pulldown_age_17 (uniqlotry_fla.pulldown_age_17)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pulldown_age_17 extends MovieClip {
public var PT:MovieClip;
public var id;
public var PULL:MovieClip;
public var H;
public var Ary;
public var btn:MovieClip;
public var i;
public var flg:int;
public var icon:MovieClip;
public var num;
public var point:Point;
public var pullMask:MovieClip;
public function pulldown_age_17(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
PULL.getChildByName(("p" + 0)).text.text = Ary[0];
}
public function COLOR(_arg1){
i = 0;
while (i < Ary.length) {
Tweener.addTween(PULL.getChildByName(("p" + i)).bg, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(PULL.getChildByName(("p" + i)).text, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(icon, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
i++;
};
}
function frame1(){
id = 0;
num = 1;
H = 20;
stop();
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_UP, CLICK);
flg = 0;
point = new Point(0, 0);
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
Ary = ["AGE", "10 - 19", "20 - 29", "30 - 39", "40 - 49", "50 -"];
PULL = new MovieClip();
i = 0;
while (i < Ary.length) {
PT = new pulldownText();
PT.text.text = Ary[i];
PT.text.autoSize = "left";
PT.id = i;
PT.name = ("p" + i);
PULL.addChild(PT);
PT.y = ((H - 1) * i);
i++;
};
addChild(PULL);
PULL.mask = pullMask;
addChild(btn);
addChild(icon);
}
public function CLICK(_arg1:Event){
}
public function ENTER(_arg1){
point.x = MovieClip(parent.parent).mouseX;
point.y = MovieClip(parent.parent).mouseY;
if (((this.hitTestPoint(point.x, point.y, true)) && ((flg == 0)))){
PULL.y = (PULL.y + (((H - (Ary.length * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + (((Ary.length * H) - pullMask.height) / 5));
pullMask.y = (pullMask.y + (((H - (Ary.length * H)) - pullMask.y) / 5));
} else {
PULL.y = (PULL.y + ((-((id * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + ((H - pullMask.height) / 5));
pullMask.y = (pullMask.y + ((0 - pullMask.y) / 5));
if (Math.abs((H - pullMask.height)) < 1){
flg = 0;
btn.mouseEnabled = true;
removeEventListener(Event.ENTER_FRAME, ENTER);
PULL.y = -((id * (H - 1)));
pullMask.height = H;
pullMask.y = 0;
};
};
}
public function OV(_arg1){
PULL.getChildByName(("p" + 0)).text.text = "SELECT ALL";
btn.mouseEnabled = false;
addEventListener(Event.ENTER_FRAME, ENTER);
}
}
}//package uniqlotry_fla
Section 55
//pulldown_body_19 (uniqlotry_fla.pulldown_body_19)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pulldown_body_19 extends MovieClip {
public var Ary_en;
public var PJ:MovieClip;
public var Root:MovieClip;
public var PT:MovieClip;
public var id;
public var PULL:MovieClip;
public var H;
public var Ary;
public var btn:MovieClip;
public var i;
public var flg:int;
public var icon:MovieClip;
public var num;
public var point:Point;
public var pullMask:MovieClip;
public function pulldown_body_19(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
PULL.getChildByName(("p" + 0)).text.text = Ary[0];
}
public function COLOR(_arg1){
i = 0;
while (i < Ary.length) {
Tweener.addTween(PULL.getChildByName(("p" + i)).bg, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(PULL.getChildByName(("p" + i)).text, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(PULL.getChildByName(("p" + i)).text_en, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(icon, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
i++;
};
}
function frame1(){
id = 0;
num = 5;
H = 20;
stop();
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_UP, CLICK);
point = new Point(0, 0);
flg = 0;
Root = MovieClip(parent.parent);
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
Ary = ["BODY TYPE", "ちょっとぽっちゃり", "ふつう", "ちっちゃい", "大柄", "筋肉質", "ちょっとやせ型", "ふくよか", "ちょうどいい", "大きい", "ボンキュッボン"];
Ary_en = ["BODY TYPE", "A LITTLE CHUBBY", "AVERAGE BUILD", "SMALL", "TALL", "WELL-MUSCLED", "A LITTLE SLIM", "PLUMP", "JUST FINE", "LARGE", "VOLUPTUOUS"];
PULL = new MovieClip();
PT = new pulldownText();
PT.text.text = Ary[0];
PT.text.autoSize = "left";
PT.id = 0;
PT.name = ("p" + 0);
PULL.addChild(PT);
i = 1;
while (i < Ary.length) {
PJ = new pulldownJa();
PJ.name = ("p" + i);
PJ.text.text = Ary[i];
PJ.text.autoSize = "left";
PJ.text_en.text = Ary_en[i];
PJ.text_en.autoSize = "left";
if (Root.isEng == "ja"){
PJ.text.visible = true;
PJ.text_en.visible = false;
} else {
PJ.text.visible = false;
PJ.text_en.visible = true;
};
PJ.id = i;
PJ.name = ("p" + i);
PULL.addChild(PJ);
PJ.y = ((H - 1) * i);
i++;
};
addChild(PULL);
PULL.mask = pullMask;
addChild(btn);
addChild(icon);
}
public function CLICK(_arg1:Event){
}
public function ENTER(_arg1){
point.x = MovieClip(parent.parent).mouseX;
point.y = MovieClip(parent.parent).mouseY;
if (((this.hitTestPoint(point.x, point.y, true)) && ((flg == 0)))){
PULL.y = (PULL.y + (((H - (Ary.length * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + (((Ary.length * H) - pullMask.height) / 5));
pullMask.y = (pullMask.y + (((H - (Ary.length * H)) - pullMask.y) / 5));
} else {
PULL.y = (PULL.y + ((-((id * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + ((H - pullMask.height) / 5));
pullMask.y = (pullMask.y + ((0 - pullMask.y) / 5));
if (Math.abs((H - pullMask.height)) < 1){
flg = 0;
btn.mouseEnabled = true;
removeEventListener(Event.ENTER_FRAME, ENTER);
PULL.y = -((id * (H - 1)));
pullMask.height = H;
pullMask.y = 0;
};
};
}
public function OV(_arg1){
PULL.getChildByName(("p" + 0)).text.text = "SELECT ALL";
btn.mouseEnabled = false;
addEventListener(Event.ENTER_FRAME, ENTER);
}
public function LANG(){
var _local1:MovieClip;
i = 1;
while (i < Ary.length) {
_local1 = PULL.getChildByName(("p" + i));
if (Root.isEng == "ja"){
_local1.text.visible = true;
_local1.text_en.visible = false;
} else {
_local1.text.visible = false;
_local1.text_en.visible = true;
};
i++;
};
}
}
}//package uniqlotry_fla
Section 56
//pulldown_height_11 (uniqlotry_fla.pulldown_height_11)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pulldown_height_11 extends MovieClip {
public var PT:MovieClip;
public var id;
public var PULL:MovieClip;
public var H;
public var Ary;
public var btn:MovieClip;
public var i;
public var flg:int;
public var icon:MovieClip;
public var num;
public var point:Point;
public var pullMask:MovieClip;
public function pulldown_height_11(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
PULL.getChildByName(("p" + 0)).text.text = Ary[0];
}
public function COLOR(_arg1){
i = 0;
while (i < Ary.length) {
Tweener.addTween(PULL.getChildByName(("p" + i)).bg, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(PULL.getChildByName(("p" + i)).text, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(icon, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
i++;
};
}
function frame1(){
id = 0;
num = 0;
H = 20;
stop();
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_UP, CLICK);
flg = 0;
point = new Point(0, 0);
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
Ary = ["HEIGHT", "- 159cm", "160cm - 169cm", "170cm -"];
PULL = new MovieClip();
i = 0;
while (i < Ary.length) {
PT = new pulldownText();
PT.text.text = Ary[i];
PT.text.autoSize = "left";
PT.id = i;
PT.name = ("p" + i);
PULL.addChild(PT);
PT.y = ((H - 1) * i);
i++;
};
addChild(PULL);
PULL.mask = pullMask;
addChild(btn);
addChild(icon);
}
public function CLICK(_arg1:Event){
}
public function ENTER(_arg1){
point.x = MovieClip(parent.parent).mouseX;
point.y = MovieClip(parent.parent).mouseY;
if (((this.hitTestPoint(point.x, point.y, true)) && ((flg == 0)))){
PULL.y = (PULL.y + (((H - (Ary.length * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + (((Ary.length * H) - pullMask.height) / 5));
pullMask.y = (pullMask.y + (((H - (Ary.length * H)) - pullMask.y) / 5));
} else {
PULL.y = (PULL.y + ((-((id * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + ((H - pullMask.height) / 5));
pullMask.y = (pullMask.y + ((0 - pullMask.y) / 5));
if (Math.abs((H - pullMask.height)) < 1){
btn.mouseEnabled = true;
removeEventListener(Event.ENTER_FRAME, ENTER);
flg = 0;
PULL.y = -((id * (H - 1)));
pullMask.height = H;
pullMask.y = 0;
};
};
}
public function OV(_arg1){
PULL.getChildByName(("p" + 0)).text.text = "SELECT ALL";
btn.mouseEnabled = false;
addEventListener(Event.ENTER_FRAME, ENTER);
}
}
}//package uniqlotry_fla
Section 57
//pulldown_size_18 (uniqlotry_fla.pulldown_size_18)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pulldown_size_18 extends MovieClip {
public var PT:MovieClip;
public var id;
public var PULL:MovieClip;
public var H;
public var Ary;
public var btn:MovieClip;
public var i;
public var flg:int;
public var icon:MovieClip;
public var num;
public var point:Point;
public var pullMask:MovieClip;
public function pulldown_size_18(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
PULL.getChildByName(("p" + 0)).text.text = Ary[0];
}
public function COLOR(_arg1){
i = 0;
while (i < Ary.length) {
Tweener.addTween(PULL.getChildByName(("p" + i)).bg, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(PULL.getChildByName(("p" + i)).text, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
Tweener.addTween(icon, {_color:("0x" + MovieClip(parent.parent).COL), time:1});
i++;
};
}
function frame1(){
id = 0;
num = 3;
H = 20;
stop();
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_UP, CLICK);
flg = 0;
point = new Point(0, 0);
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
Ary = ["BRA TOP", "S SIZE", "M SIZE", "L SIZE", "XL SIZE"];
PULL = new MovieClip();
i = 0;
while (i < Ary.length) {
PT = new pulldownText();
PT.text.text = Ary[i];
PT.text.autoSize = "left";
PT.id = i;
PT.name = ("p" + i);
PULL.addChild(PT);
PT.y = ((H - 1) * i);
i++;
};
addChild(PULL);
PULL.mask = pullMask;
addChild(btn);
addChild(icon);
}
public function CLICK(_arg1:Event){
}
public function ENTER(_arg1){
point.x = MovieClip(parent.parent).mouseX;
point.y = MovieClip(parent.parent).mouseY;
if (((this.hitTestPoint(point.x, point.y, true)) && ((flg == 0)))){
PULL.y = (PULL.y + (((H - (Ary.length * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + (((Ary.length * H) - pullMask.height) / 5));
pullMask.y = (pullMask.y + (((H - (Ary.length * H)) - pullMask.y) / 5));
} else {
PULL.y = (PULL.y + ((-((id * (H - 1))) - PULL.y) / 5));
pullMask.height = (pullMask.height + ((H - pullMask.height) / 5));
pullMask.y = (pullMask.y + ((0 - pullMask.y) / 5));
if (Math.abs((H - pullMask.height)) < 1){
flg = 0;
btn.mouseEnabled = true;
removeEventListener(Event.ENTER_FRAME, ENTER);
PULL.y = -((id * (H - 1)));
pullMask.height = H;
pullMask.y = 0;
};
};
}
public function OV(_arg1){
PULL.getChildByName(("p" + 0)).text.text = "SELECT ALL";
btn.mouseEnabled = false;
addEventListener(Event.ENTER_FRAME, ENTER);
}
}
}//package uniqlotry_fla
Section 58
//Q_21 (uniqlotry_fla.Q_21)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Q_21 extends MovieClip {
public var TEXTTOTAL:int;
public var TEXT:String;
public var i:int;
public var q:MovieClip;
public var n:int;
public var icon:MovieClip;
public var en:TextField;
public var RANDOM;
public var time:int;
public var RNUM:int;
public function Q_21(){
addFrameScript(0, frame1);
}
public function TYPO(_arg1:String){
i = 0;
n = 0;
time = 0;
TEXT = _arg1;
TEXTTOTAL = TEXT.length;
removeEventListener(Event.ENTER_FRAME, OPEN);
en.text = "";
if (MovieClip(parent).isEng == "ja"){
addEventListener(Event.ENTER_FRAME, OPEN);
};
}
function frame1(){
i = 0;
n = 0;
time = 0;
RANDOM = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!#$%&/@";
TEXTTOTAL = TEXT.length;
en.text = "";
}
public function OPEN(_arg1){
if (n < TEXT.length){
RNUM = Math.floor((Math.random() * RANDOM.length));
en.text = (TEXT.slice(0, n) + RANDOM.slice(RNUM, (RNUM + 1)));
} else {
en.text = TEXT;
};
time++;
n++;
if (time >= 2){
i++;
time = 0;
};
if (n >= TEXTTOTAL){
removeEventListener(Event.ENTER_FRAME, OPEN);
en.text = TEXT;
};
}
}
}//package uniqlotry_fla
Section 59
//question_22 (uniqlotry_fla.question_22)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class question_22 extends MovieClip {
public var Root;
public var TOTAL:int;
public var Pos:int;
public var TEXTDATA:String;
public var i:int;
public function question_22(){
addFrameScript(0, frame1);
}
public function TEXT(_arg1:Event){
var _local2:*;
TEXTOBJ = new Text();
TEXTOBJ.name = ("t" + i);
if (Root.isEng == "ja"){
TEXTOBJ.q.text = TEXTDATA.slice(i, (i + 1));
TEXTOBJ.q.autoSize = "left";
TEXTOBJ.en.text = "";
TEXTOBJ.en.autoSize = "left";
TEXTOBJ.q.visible = true;
TEXTOBJ.en.visible = false;
} else {
TEXTOBJ.q.text = "";
TEXTOBJ.q.autoSize = "left";
TEXTOBJ.en.text = TEXTDATA.slice(i, (i + 1));
TEXTOBJ.en.autoSize = "left";
TEXTOBJ.q.visible = false;
TEXTOBJ.en.visible = true;
};
addChild(TEXTOBJ);
_local2 = this.getChildByName(("t" + (i - 1)));
if (i > 0){
TEXTOBJ.x = ((_local2.x + _local2.width) - 4);
if ((((TEXTDATA.slice(i, (i + 1)) == "A")) || ((TEXTDATA.slice((i - 1), i) == "A")))){
TEXTOBJ.x = (TEXTOBJ.x - 2);
if ((((((TEXTDATA.slice((i - 1), i) == "W")) || ((TEXTDATA.slice((i - 1), i) == "P")))) || ((TEXTDATA.slice(i, (i + 1)) == "T")))){
TEXTOBJ.x = (TEXTOBJ.x - 2);
};
} else {
if ((((TEXTDATA.slice((i - 1), i) == "W")) || ((TEXTDATA.slice(i, (i + 1)) == "W")))){
TEXTOBJ.x = (TEXTOBJ.x - 1);
};
};
};
if ((((((((TEXTDATA.slice(i, (i + 1)) == "(")) || ((TEXTDATA.slice((i - 2), i) == ", ")))) || ((TEXTDATA.slice((i - 2), i) == "? ")))) || ((TEXTDATA.slice((i - 4), i) == "BUY ")))){
TEXTOBJ.x = 0;
Pos = 70;
};
if ((((TEXTOBJ.x > 690)) && ((TEXTDATA.slice((i - 1), i) == " ")))){
TEXTOBJ.x = 0;
Pos = 70;
};
TEXTOBJ.y = Pos;
Tweener.addTween(TEXTOBJ, {y:(Pos - 38), time:0.4, transition:"easeInOutBack"});
if ((TEXTDATA.length - 1) <= i){
this.removeEventListener(Event.ENTER_FRAME, TEXT);
};
i++;
}
public function TYPO(_arg1:String, _arg2:String){
var _local3:*;
Root = MovieClip(parent.parent);
MovieClip(parent).TYPO(_arg2);
i = 0;
while (this.numChildren > 0) {
_local3 = this.getChildAt(0);
this.removeChildAt(0);
_local3 = null;
i++;
};
TOTAL = _arg2.length;
TEXTDATA = _arg2;
if (Root.isEng == "ja"){
TOTAL = _arg1.length;
TEXTDATA = _arg1;
};
i = 0;
Pos = 30;
this.addEventListener(Event.ENTER_FRAME, TEXT);
}
function frame1(){
ColorShortcuts.init();
TextShortcuts.init();
Root = MovieClip(parent.parent);
TOTAL = 0;
i = 0;
Pos = 30;
}
}
}//package uniqlotry_fla
Section 60
//scroll_28 (uniqlotry_fla.scroll_28)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class scroll_28 extends MovieClip {
public var source;
public var st:SoundTransform;
public var num:Number;
public var bounds:Rectangle;
public function scroll_28(){
addFrameScript(0, frame1);
}
public function STOP(_arg1:MouseEvent){
this.stopDrag();
stage.removeEventListener(MouseEvent.MOUSE_MOVE, MOVE);
}
public function getSoundTransform():SoundTransform{
if (!st){
st = source.soundTransform;
};
return (st);
}
public function DRAG(_arg1:MouseEvent){
this.startDrag(false, bounds);
stage.addEventListener(MouseEvent.MOUSE_MOVE, MOVE);
}
function frame1(){
this.buttonMode = true;
MovieClip(parent).line.mouseEnabled = false;
this.addEventListener(MouseEvent.MOUSE_DOWN, DRAG);
stage.addEventListener(MouseEvent.MOUSE_UP, STOP);
bounds = new Rectangle(MovieClip(parent).line.x, (MovieClip(parent).line.y - 6), ((MovieClip(parent).line.width / 3) - (this.width / 3)), 0);
source = this.root;
num = 0;
getSoundTransform().volume = 0.5;
source.soundTransform = getSoundTransform();
}
public function Volume(){
getSoundTransform().volume = num;
source.soundTransform = getSoundTransform();
}
public function MOVE(_arg1:MouseEvent){
num = ((this.x - MovieClip(parent).line.x) / ((MovieClip(parent).line.width / 3) - (this.width / 3)));
Volume();
MovieClip(parent.parent).SOUND(num);
}
}
}//package uniqlotry_fla
Section 61
//SEARCH_14 (uniqlotry_fla.SEARCH_14)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import org.papervision3d.core.proto.*;
import org.papervision3d.materials.*;
import org.papervision3d.objects.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import jp.co.digitalforest.visionalist.VL51.*;
import flash.utils.*;
import flash.net.*;
import org.papervision3d.scenes.*;
import org.papervision3d.cameras.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class SEARCH_14 extends MovieClip {
public var Root;
public var text:MovieClip;
public var bg:MovieClip;
public var se:Se;
public var i;
public function SEARCH_14(){
addFrameScript(0, frame1, 1, frame2);
}
public function OUT(_arg1){
Tweener.removeTweens(text);
bg.gotoAndStop(2);
Tweener.addTween(text, {_color:"0xFFFFFF", time:0});
}
public function CLEAR(_arg1){
Root.spec.CLOSE();
if (((((((((!((Root.FILTERING == 0))) || (!((MovieClip(parent).pull1.id == 0))))) || (!((MovieClip(parent).pull2.id == 0))))) || (!((MovieClip(parent).pull3.id == 0))))) || (!((MovieClip(parent).pull4.id == 0))))){
VLTracer.sendRequest("try_vw");
Root.FILTERING = 0;
Root.FOCUS = 0;
Root.FOCUSFLG = 0;
se.play(0, 1);
MovieClip(parent).SAry = [0, 0, 0, 0, 0, 0];
MovieClip(parent).search_results.SEARCH("close");
i = 1;
while (i <= 4) {
MovieClip(parent)[("pull" + i)].id = 0;
MovieClip(parent)[("pull" + i)].OV(1);
MovieClip(parent)[("pull" + i)].OUT(1);
i++;
};
i = 0;
while (i < Root.maxAlbums) {
Root.scene.getChildByName(("AlbumP" + i)).extra.TARGET = Root.scene.getChildByName(("AlbumP" + i)).extra[("goto" + Root.QUESTION)];
Root.scene.getChildByName(("AlbumP" + i)).extra.Search = 0;
i++;
};
Root.i = 0;
};
this.visible = false;
}
function frame1(){
se = new Se();
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_DOWN, CLEAR);
Root = MovieClip(parent.parent);
i = 0;
this.visible = false;
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
bg.gotoAndStop(2);
Tweener.addTween(bg, {_color:("0x" + MovieClip(parent.parent).COL), time:0});
}
public function CLICK(_arg1){
var _local2:Array;
var _local3:Array;
var _local4:*;
var _local5:*;
var _local6:*;
var _local7:DisplayObject3D;
this.visible = true;
_local2 = new Array();
_local3 = new Array();
Root.spec.CLOSE();
se.play(0, 1);
_local4 = 0;
Root.SearchAry = [];
i = 0;
while (i <= Root.maxAlbums) {
_local3.push(Root.scene.getChildByName(("AlbumP" + i)));
Root.scene.getChildByName(("AlbumP" + i)).extra.Search = 0;
i++;
};
i = 0;
while (i < MovieClip(parent).SAry.length) {
if (MovieClip(parent).SAry[i] != 0){
_local5 = 0;
while (_local5 < _local3.length) {
if (i == 0){
if ((_local3[_local5].extra.Height.slice(0, 2) - 14) == MovieClip(parent).SAry[i]){
_local2.push(_local3[_local5]);
} else {
if ((((_local3[_local5].extra.Height.slice(0, 2) == 14)) && ((MovieClip(parent).SAry[i] == 1)))){
_local2.push(_local3[_local5]);
};
};
};
if ((((i == 1)) && ((_local3[_local5].extra.Age.slice(0, 1) == MovieClip(parent).SAry[i])))){
_local2.push(_local3[_local5]);
};
if (i == 3){
switch (MovieClip(parent).SAry[i]){
case 1:
if (_local3[_local5].extra.Size == "S"){
_local2.push(_local3[_local5]);
};
break;
case 2:
if (_local3[_local5].extra.Size == "M"){
_local2.push(_local3[_local5]);
};
break;
case 3:
if (_local3[_local5].extra.Size == "L"){
_local2.push(_local3[_local5]);
};
break;
case 4:
if (_local3[_local5].extra.Size == "XL"){
_local2.push(_local3[_local5]);
};
break;
default:
break;
};
};
if ((((i == 5)) && ((_local3[_local5].extra.A17 == MovieClip(parent).SAry[i])))){
_local2.push(_local3[_local5]);
};
_local5++;
};
_local3 = _local2.splice(0, _local2.length);
};
i++;
};
i = 0;
while (i < _local3.length) {
_local6 = Math.ceil((Math.sqrt((_local3.length / 2)) * 2));
Root.SearchAry.push(_local3[i].name.slice(1));
_local7 = new DisplayObject3D();
_local7.x = (((_local4 % _local6) * 70) - (_local6 * 35));
_local7.y = ((-(Math.floor((_local4 / _local6))) * 70) + (_local6 * 20));
_local7.z = 0;
_local7.rotationX = 0;
_local7.rotationY = 0;
_local7.rotationZ = 0;
_local3[i].extra.TARGET = _local7;
_local3[i].extra.Search = 1;
_local4++;
i++;
};
if (_local4 == 0){
text.gotoAndStop(1);
Root.FILTERING = 0;
Root.FOCUS = 0;
Root.FOCUSFLG = 0;
Root.makeIndependentNumArr(Root.maxAlbums, 5);
} else {
VLTracer.sendRequest("try_src");
text.gotoAndStop(2);
Root.FILTERING = 1;
Root.FOCUS = 0;
Root.FOCUSFLG = 0;
Root.makeIndependentNumArr(Root.SearchAry.length, 5);
};
Root.i = 0;
MovieClip(parent).search_results.SEARCH(_local4);
}
function frame2(){
stop();
}
public function OV(_arg1){
bg.gotoAndStop(1);
Tweener.removeTweens(text);
Tweener.addTween(text, {_color:("0x" + MovieClip(parent.parent).COL), time:0});
}
}
}//package uniqlotry_fla
Section 62
//search_btn_16 (uniqlotry_fla.search_btn_16)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class search_btn_16 extends MovieClip {
public function search_btn_16(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package uniqlotry_fla
Section 63
//search_results_text_10 (uniqlotry_fla.search_results_text_10)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class search_results_text_10 extends MovieClip {
public var TOTAL:int;
public var TEXTDATA:String;
public var i:int;
public function search_results_text_10(){
addFrameScript(0, frame1);
}
public function CLOSE(_arg1){
var _local2:*;
this.removeEventListener(Event.ENTER_FRAME, TEXT);
i = 0;
while (this.numChildren > 0) {
_local2 = this.getChildAt(0);
this.removeChildAt(0);
_local2 = null;
i++;
};
}
public function TEXT(_arg1:Event){
TEXTOBJ = new enText();
TEXTOBJ.name = ("t" + i);
TEXTOBJ.q.text = TEXTDATA.slice(i, (i + 1));
TEXTOBJ.q.autoSize = "left";
addChild(TEXTOBJ);
if (i > 0){
TEXTOBJ.x = ((this.getChildByName(("t" + (i - 1))).x + this.getChildByName(("t" + (i - 1))).width) - 4);
};
TEXTOBJ.y = -20;
Tweener.addTween(TEXTOBJ, {y:0, time:0.4, transition:"easeInOutBack"});
if ((TEXTDATA.length - 1) <= i){
this.removeEventListener(Event.ENTER_FRAME, TEXT);
};
i++;
}
public function TYPO(_arg1:String, _arg2:String){
var _local3:*;
i = 0;
while (this.numChildren > 0) {
_local3 = this.getChildAt(0);
this.removeChildAt(0);
_local3 = null;
i++;
};
TOTAL = _arg1.length;
TEXTDATA = "SEARCH_RESULTS";
i = 0;
this.addEventListener(Event.ENTER_FRAME, TEXT);
}
function frame1(){
ColorShortcuts.init();
TextShortcuts.init();
TOTAL = 0;
i = 0;
}
}
}//package uniqlotry_fla
Section 64
//sound_bar_26 (uniqlotry_fla.sound_bar_26)
package uniqlotry_fla {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class sound_bar_26 extends MovieClip {
public var STOP;
public function sound_bar_26(){
addFrameScript(0, frame1, 17, frame18, 19, frame20);
}
function frame18(){
if (STOP == "on"){
stop();
};
}
function frame1(){
STOP = "off";
gotoAndPlay(Math.ceil((Math.random() * totalFrames)));
}
function frame20(){
gotoAndPlay(Math.ceil((Math.random() * totalFrames)));
}
}
}//package uniqlotry_fla
Section 65
//Spec_5 (uniqlotry_fla.Spec_5)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Spec_5 extends MovieClip {
public var bodytype:TextField;
public var id:int;
public var text:TextField;
public var bg:MovieClip;
public var title:TextField;
public var shoulder:TextField;
public var body:TextField;
public var mask_mc:MovieClip;
public var shouldertype:TextField;
public function Spec_5(){
addFrameScript(0, frame1);
}
public function CLOSE(){
MovieClip(parent).english.visible = false;
MovieClip(parent).makeIndependentNumArr(343, 5);
Tweener.addTween(mask_mc, {x:400, width:1, time:0.5, transition:"easeInOutQuint", onComplete:function ():void{
visible = false;
}});
}
function frame1(){
ColorShortcuts.init();
TextShortcuts.init();
id = 1;
visible = false;
this.mask = mask_mc;
}
}
}//package uniqlotry_fla
Section 66
//Timeline_6 (uniqlotry_fla.Timeline_6)
package uniqlotry_fla {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Timeline_6 extends MovieClip {
public var Root;
public function Timeline_6(){
addFrameScript(0, frame1);
}
public function OUT(_arg1){
gotoAndStop(1);
}
function frame1(){
stop();
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_UP, CLICK);
Root = MovieClip(parent.parent);
ColorShortcuts.init();
TextShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
}
public function CLICK(_arg1:Event){
var se:Se;
var event = _arg1;
se = new Se();
se.play(0, 1);
MovieClip(parent).CLOSE();
Root.FOCUS = 0;
Root.FOCUSFLG = 0;
Root.TYPO((Root[("Q" + Root.QUESTION)].length - 1));
Tweener.addTween(Root.camera, {x:0, y:0, z:-1500, time:1, transition:"easeInQuint", onComplete:function ():void{
Tweener.addTween(Root.camera, {x:0, y:0, z:-3000, time:5, transition:"easeOutSine"});
}});
Tweener.addTween(Root.camera.target, {x:0, y:0, z:0, time:6, transition:"easeOutQuint"});
}
public function OV(_arg1){
gotoAndStop(2);
}
}
}//package uniqlotry_fla
Section 67
//volume_slider_27 (uniqlotry_fla.volume_slider_27)
package uniqlotry_fla {
import flash.display.*;
public dynamic class volume_slider_27 extends MovieClip {
public var line:MovieClip;
public var drag:MovieClip;
}
}//package uniqlotry_fla
Section 68
//AlbumP (AlbumP)
package {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class AlbumP extends MovieClip {
public var bg:MovieClip;
public function AlbumP(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 69
//bgm (bgm)
package {
import flash.media.*;
public dynamic class bgm extends Sound {
}
}//package
Section 70
//colorBar (colorBar)
package {
import flash.display.*;
public dynamic class colorBar extends MovieClip {
}
}//package
Section 71
//cover (cover)
package {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class cover extends MovieClip {
public var bg:MovieClip;
public var retry:MovieClip;
public function cover(){
addFrameScript(0, frame1);
}
function frame1(){
this.buttonMode = true;
this.addEventListener(MouseEvent.MOUSE_DOWN, START);
this.addEventListener(Event.ENTER_FRAME, RESIZE);
}
public function START(_arg1){
this.removeEventListener(Event.ENTER_FRAME, RESIZE);
MovieClip(parent).START(this);
}
public function RESIZE(_arg1){
bg.width = stage.stageWidth;
bg.height = stage.stageHeight;
}
}
}//package
Section 72
//enText (enText)
package {
import flash.display.*;
import flash.text.*;
public dynamic class enText extends MovieClip {
public var q:TextField;
}
}//package
Section 73
//Map (Map)
package {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Map extends MovieClip {
public function Map(){
addFrameScript(0, frame1);
}
function frame1(){
stop();
}
}
}//package
Section 74
//Per (Per)
package {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Per extends MovieClip {
public var text:TextField;
public var num:TextField;
public var en:TextField;
public function Per(){
addFrameScript(0, frame1);
}
function frame1(){
this.mouseEnabled = false;
}
}
}//package
Section 75
//pulldownJa (pulldownJa)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pulldownJa extends MovieClip {
public var id;
public var text:TextField;
public var bg:MovieClip;
public var text_en:TextField;
public function pulldownJa(){
addFrameScript(0, frame1, 1, frame2, 2, frame3);
}
public function OUT(_arg1){
gotoAndStop(2);
bg.gotoAndStop(1);
}
function frame3(){
Tweener.addTween(text, {_color:"0xFFFFFF", time:0});
Tweener.addTween(text_en, {_color:"0xFFFFFF", time:0});
}
function frame1(){
this.buttonMode = true;
stop();
ColorShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
this.addEventListener(MouseEvent.MOUSE_DOWN, CLICK);
}
public function CLICK(_arg1){
var _local2:int;
var _local3:int;
MovieClip(parent.parent).flg = 1;
MovieClip(parent.parent.parent).SAry.splice(MovieClip(parent.parent).num, 1, id);
MovieClip(parent.parent).id = id;
_local3 = 0;
while (_local3 < MovieClip(parent.parent.parent).SAry.length) {
_local2 = (_local2 + MovieClip(parent.parent.parent).SAry[_local3]);
_local3++;
};
if (_local2 == 0){
MovieClip(parent.parent.parent).search.CLEAR(1);
} else {
MovieClip(parent.parent.parent).search.CLICK(1);
};
}
function frame2(){
Tweener.addTween(text, {_color:("0x" + MovieClip(parent.parent.parent.parent).COL), time:0});
Tweener.addTween(text_en, {_color:("0x" + MovieClip(parent.parent.parent.parent).COL), time:0});
}
public function OV(_arg1){
gotoAndStop(3);
bg.gotoAndStop(2);
}
}
}//package
Section 76
//pulldownText (pulldownText)
package {
import flash.events.*;
import caurina.transitions.*;
import flash.display.*;
import flash.media.*;
import caurina.transitions.properties.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class pulldownText extends MovieClip {
public var id;
public var text:TextField;
public var bg:MovieClip;
public function pulldownText(){
addFrameScript(0, frame1, 1, frame2, 2, frame3);
}
public function OUT(_arg1){
gotoAndStop(2);
bg.gotoAndStop(1);
}
function frame3(){
Tweener.addTween(text, {_color:"0xFFFFFF", time:0});
}
function frame1(){
this.buttonMode = true;
stop();
ColorShortcuts.init();
this.addEventListener(MouseEvent.ROLL_OVER, OV);
this.addEventListener(MouseEvent.ROLL_OUT, OUT);
this.addEventListener(MouseEvent.MOUSE_DOWN, CLICK);
}
public function CLICK(_arg1){
var _local2:int;
var _local3:int;
MovieClip(parent.parent).flg = 1;
MovieClip(parent.parent.parent).SAry.splice(MovieClip(parent.parent).num, 1, id);
MovieClip(parent.parent).id = id;
_local3 = 0;
while (_local3 < MovieClip(parent.parent.parent).SAry.length) {
_local2 = (_local2 + MovieClip(parent.parent.parent).SAry[_local3]);
_local3++;
};
if (_local2 == 0){
MovieClip(parent.parent.parent).search.CLEAR(1);
} else {
MovieClip(parent.parent.parent).search.CLICK(1);
};
}
function frame2(){
Tweener.addTween(text, {_color:("0x" + MovieClip(parent.parent.parent.parent).COL), time:0});
}
public function OV(_arg1){
gotoAndStop(3);
bg.gotoAndStop(2);
}
}
}//package
Section 77
//Se (Se)
package {
import flash.media.*;
public dynamic class Se extends Sound {
}
}//package
Section 78
//Search_results (Search_results)
package {
import flash.events.*;
import flash.display.*;
import flash.media.*;
import flash.utils.*;
import flash.net.*;
import flash.text.*;
import flash.geom.*;
import flash.filters.*;
import flash.external.*;
import flash.system.*;
import flash.accessibility.*;
import flash.errors.*;
import flash.ui.*;
public dynamic class Search_results extends MovieClip {
public var TEXTTOTAL:int;
public var TOTAL:int;
public var text:TextField;
public var TITLE:String;
public var TEXT;
public var Result;
public var i:int;
public var n:int;
public var search:MovieClip;
public var RANTEXT:String;
public var RANDOM;
public var time:int;
public var RNUM:int;
public function Search_results(){
addFrameScript(0, frame1);
}
public function CLOSE(_arg1){
removeEventListener(Event.ENTER_FRAME, OPEN);
search.CLOSE(1);
if (n < TEXT.length){
RNUM = Math.floor((Math.random() * RANDOM.length));
text.text = (RANDOM.slice(RNUM, (RNUM + 1)) + TEXT.slice(n, TEXT.length));
text.autoSize = "left";
} else {
text.text = "";
text.autoSize = "left";
};
time++;
n++;
if (time >= 2){
i++;
time = 0;
};
if (1 > text.length){
removeEventListener(Event.ENTER_FRAME, CLOSE);
text.text = "";
text.autoSize = "left";
text.x = 1;
};
}
function frame1(){
i = 0;
n = 0;
time = 0;
TITLE = "SEARCH_RESULTS";
RANDOM = "ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890!#$%&/@";
TEXT = "185 OF 343 PEOPLE";
TOTAL = TITLE.length;
TEXTTOTAL = TEXT.length;
text.text = "";
text.autoSize = "left";
}
public function OPEN(_arg1){
removeEventListener(Event.ENTER_FRAME, CLOSE);
if (i < TITLE.length){
RNUM = Math.floor((Math.random() * RANDOM.length));
};
if (n < TEXT.length){
RANTEXT = (((((((((((Math.floor((Math.random() * 10)) + "") + Math.floor((Math.random() * 10))) + "") + Math.floor((Math.random() * 10))) + " OUT OF ") + Math.floor((Math.random() * 10))) + "") + Math.floor((Math.random() * 10))) + "") + Math.floor((Math.random() * 10))) + " PEOPLE");
RNUM = Math.floor((Math.random() * RANDOM.length));
text.text = (RANTEXT.slice(0, n) + RANDOM.slice(RNUM, (RNUM + 1)));
text.autoSize = "left";
} else {
RANTEXT = (((((((((((Math.floor((Math.random() * 10)) + "") + Math.floor((Math.random() * 10))) + "") + Math.floor((Math.random() * 10))) + " OUT OF ") + Math.floor((Math.random() * 10))) + "") + Math.floor((Math.random() * 10))) + "") + Math.floor((Math.random() * 10))) + " PEOPLE");
text.text = RANTEXT.slice(0, n);
text.autoSize = "left";
};
time++;
n++;
if ((((n >= TEXTTOTAL)) && ((time > 60)))){
text.text = TEXT;
text.autoSize = "left";
if (Result == "000"){
if (time > 90){
removeEventListener(Event.ENTER_FRAME, OPEN);
i = 0;
n = 0;
time = 0;
addEventListener(Event.ENTER_FRAME, CLOSE);
};
} else {
removeEventListener(Event.ENTER_FRAME, OPEN);
};
};
}
public function SEARCH(_arg1){
search.TYPO("test", "test");
if (_arg1 < 10){
Result = ("00" + _arg1);
} else {
if (_arg1 < 100){
Result = ("0" + _arg1);
} else {
Result = _arg1;
};
};
text.x = 1;
i = 0;
n = 0;
time = 0;
TOTAL = TITLE.length;
TEXTTOTAL = TEXT.length;
removeEventListener(Event.ENTER_FRAME, OPEN);
removeEventListener(Event.ENTER_FRAME, CLOSE);
if ((((MovieClip(parent.parent).FILTERING == 0)) && (!((_arg1 == 0))))){
if (text.text == ""){
TEXT = "";
};
addEventListener(Event.ENTER_FRAME, CLOSE);
} else {
TEXT = (Result + " OUT OF 343 PEOPLE");
text.text = "";
text.autoSize = "left";
text.x = 1;
addEventListener(Event.ENTER_FRAME, OPEN);
};
}
}
}//package
Section 79
//Text (Text)
package {
import flash.display.*;
import flash.text.*;
public dynamic class Text extends MovieClip {
public var q:TextField;
public var en:TextField;
}
}//package
Section 80
//XMLLoader (XMLLoader)
package {
import flash.events.*;
import flash.net.*;
import flash.system.*;
public class XMLLoader extends EventDispatcher {
private var func:String;
private var xml:XML;
private var xmlLoader:URLLoader;
private var path:Object;
private var object:Object;
public static const LOAD_COMPLETE:String = "load_complete";
public function XMLLoader(_arg1:String, _arg2:Boolean, _arg3:Object, _arg4:String){
path = _arg3;
func = _arg4;
xmlLoader = new URLLoader();
xmlLoader.dataFormat = URLLoaderDataFormat.TEXT;
xmlLoader.addEventListener(Event.COMPLETE, onXMLLoaded);
System.useCodePage = !(_arg2);
xmlLoader.load(new URLRequest(_arg1));
}
public function get rawXML():XML{
return (xml);
}
private function onXMLLoaded(_arg1:Event):void{
var e = _arg1;
try {
xml = new XML(xmlLoader.data);
parseXML();
} catch(err:TypeError) {
trace(err.message);
};
}
private function parseXML(){
var _local1:*;
var _local2:Array;
var _local3:XML;
var _local4:*;
_local1 = 0;
_local2 = new Array();
for each (_local3 in xml.node) {
_local4 = new Object();
_local4.id = _local3.@id;
_local4.name = _local3.@name;
_local4.aka = _local3.@aka;
_local4.height = _local3.@height;
_local4.age = _local3.@age;
_local4.blood = _local3.@blood;
_local4.cup = _local3.@cup;
_local4.size = _local3.@size;
_local4.a1 = _local3.@a1;
_local4.a2 = _local3.@a2;
_local4.a3 = _local3.@a3;
_local4.a3_2 = _local3.@a3_2;
_local4.a4 = _local3.@a4;
_local4.a5 = _local3.@a5;
_local4.a6 = _local3.@a6;
_local4.a7 = _local3.@a7;
_local4.a8 = _local3.@a8;
_local4.a9 = _local3.@a9;
_local4.a10 = _local3.@a10;
_local4.a11 = _local3.@a11;
_local4.a12 = _local3.@a12;
_local4.a13 = _local3.@a13;
_local4.a13x = _local3.@a13x;
_local4.a13y = _local3.@a13y;
_local4.a14 = _local3.@a14;
_local4.a15 = _local3.@a15;
_local4.a16 = _local3.@a16;
_local4.a17 = _local3.@a17;
_local4.a18 = _local3.@a18;
_local4.bratop = _local3.@bratop;
_local4.en3 = _local3.@en3;
_local4.en10 = _local3.@en10;
_local4.en11 = _local3.@en11;
_local4.en12 = _local3.@en12;
_local4.en13 = _local3.@en13;
_local4.en14 = _local3.@en14;
_local2.push(_local4);
};
object = _local4;
dispatchEvent(new Event(LOAD_COMPLETE));
var _local5 = path;
_local5[func](_local2);
}
}
}//package