From 32a7b6d14e696a9954201eaa0edbd1399a71e93c Mon Sep 17 00:00:00 2001 From: xiazeyu_2011 Date: Sun, 14 Jan 2018 00:22:22 +0800 Subject: [PATCH] feat: 3.0 API now is fixed. reday to publish --- .../docs/ast/source/config/configMgr.js.json | 1554 ++++----- .../ast/source/config/configValidater.js.json | 1570 ++++----- ghpages/docs/ast/source/elementMgr.js.json | 3098 ++++++++--------- ghpages/docs/ast/source/index.js.json | 828 ++--- .../docs/file/src/config/configMgr.js.html | 2 +- .../file/src/config/configValidater.js.html | 2 +- ghpages/docs/file/src/elementMgr.js.html | 4 +- ghpages/docs/file/src/index.js.html | 2 +- ghpages/docs/index.json | 8 +- ghpages/docs/source.html | 16 +- ghpages/lib/clL2D.0.min.js | 4 +- ghpages/lib/clL2D.0.min.js.map | 2 +- ghpages/lib/clL2D.min.js | 4 +- ghpages/lib/clL2D.min.js.map | 2 +- ghpages/lib/stats.html | 2 +- lib/clL2D.0.min.js | 4 +- lib/clL2D.0.min.js.map | 2 +- lib/clL2D.min.js | 4 +- lib/clL2D.min.js.map | 2 +- lib/stats.html | 2 +- src/config/configMgr.js | 2 +- src/config/configValidater.js | 2 +- src/elementMgr.js | 4 +- src/index.js | 2 +- 24 files changed, 3561 insertions(+), 3561 deletions(-) diff --git a/ghpages/docs/ast/source/config/configMgr.js.json b/ghpages/docs/ast/source/config/configMgr.js.json index 4c6043a..f309b6a 100644 --- a/ghpages/docs/ast/source/config/configMgr.js.json +++ b/ghpages/docs/ast/source/config/configMgr.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 1625, + "end": 1627, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 1625, + "end": 1627, "loc": { "start": { "line": 1, @@ -222,7 +222,7 @@ { "type": "VariableDeclaration", "start": 265, - "end": 1081, + "end": 1083, "loc": { "start": { "line": 23, @@ -237,7 +237,7 @@ { "type": "VariableDeclarator", "start": 271, - "end": 1081, + "end": 1083, "loc": { "start": { "line": 23, @@ -269,7 +269,7 @@ "init": { "type": "ObjectExpression", "start": 287, - "end": 1081, + "end": 1083, "loc": { "start": { "line": 23, @@ -607,7 +607,7 @@ { "type": "ObjectProperty", "start": 474, - "end": 596, + "end": 598, "loc": { "start": { "line": 31, @@ -641,7 +641,7 @@ "value": { "type": "ObjectExpression", "start": 483, - "end": 596, + "end": 598, "loc": { "start": { "line": 31, @@ -656,7 +656,7 @@ { "type": "ObjectProperty", "start": 489, - "end": 501, + "end": 503, "loc": { "start": { "line": 32, @@ -664,7 +664,7 @@ }, "end": { "line": 32, - "column": 16 + "column": 18 } }, "method": false, @@ -673,7 +673,7 @@ "key": { "type": "Identifier", "start": 489, - "end": 498, + "end": 500, "loc": { "start": { "line": 32, @@ -681,24 +681,24 @@ }, "end": { "line": 32, - "column": 13 + "column": 15 }, - "identifierName": "antialias" + "identifierName": "superSample" }, - "name": "antialias" + "name": "superSample" }, "value": { "type": "NumericLiteral", - "start": 500, - "end": 501, + "start": 502, + "end": 503, "loc": { "start": { "line": 32, - "column": 15 + "column": 17 }, "end": { "line": 32, - "column": 16 + "column": 18 } }, "extra": { @@ -710,8 +710,8 @@ }, { "type": "ObjectProperty", - "start": 507, - "end": 517, + "start": 509, + "end": 519, "loc": { "start": { "line": 33, @@ -727,8 +727,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 507, - "end": 512, + "start": 509, + "end": 514, "loc": { "start": { "line": 33, @@ -744,8 +744,8 @@ }, "value": { "type": "NumericLiteral", - "start": 514, - "end": 517, + "start": 516, + "end": 519, "loc": { "start": { "line": 33, @@ -765,8 +765,8 @@ }, { "type": "ObjectProperty", - "start": 523, - "end": 534, + "start": 525, + "end": 536, "loc": { "start": { "line": 34, @@ -782,8 +782,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 523, - "end": 529, + "start": 525, + "end": 531, "loc": { "start": { "line": 34, @@ -799,8 +799,8 @@ }, "value": { "type": "NumericLiteral", - "start": 531, - "end": 534, + "start": 533, + "end": 536, "loc": { "start": { "line": 34, @@ -820,8 +820,8 @@ }, { "type": "ObjectProperty", - "start": 540, - "end": 557, + "start": 542, + "end": 559, "loc": { "start": { "line": 35, @@ -837,8 +837,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 540, - "end": 548, + "start": 542, + "end": 550, "loc": { "start": { "line": 35, @@ -854,8 +854,8 @@ }, "value": { "type": "StringLiteral", - "start": 550, - "end": 557, + "start": 552, + "end": 559, "loc": { "start": { "line": 35, @@ -875,8 +875,8 @@ }, { "type": "ObjectProperty", - "start": 563, - "end": 573, + "start": 565, + "end": 575, "loc": { "start": { "line": 36, @@ -892,8 +892,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 563, - "end": 570, + "start": 565, + "end": 572, "loc": { "start": { "line": 36, @@ -909,8 +909,8 @@ }, "value": { "type": "NumericLiteral", - "start": 572, - "end": 573, + "start": 574, + "end": 575, "loc": { "start": { "line": 36, @@ -930,8 +930,8 @@ }, { "type": "ObjectProperty", - "start": 579, - "end": 591, + "start": 581, + "end": 593, "loc": { "start": { "line": 37, @@ -947,8 +947,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 579, - "end": 586, + "start": 581, + "end": 588, "loc": { "start": { "line": 37, @@ -964,8 +964,8 @@ }, "value": { "type": "UnaryExpression", - "start": 588, - "end": 591, + "start": 590, + "end": 593, "loc": { "start": { "line": 37, @@ -980,8 +980,8 @@ "prefix": true, "argument": { "type": "NumericLiteral", - "start": 589, - "end": 591, + "start": 591, + "end": 593, "loc": { "start": { "line": 37, @@ -1008,8 +1008,8 @@ }, { "type": "ObjectProperty", - "start": 600, - "end": 663, + "start": 602, + "end": 665, "loc": { "start": { "line": 39, @@ -1025,8 +1025,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 600, - "end": 606, + "start": 602, + "end": 608, "loc": { "start": { "line": 39, @@ -1042,8 +1042,8 @@ }, "value": { "type": "ObjectExpression", - "start": 608, - "end": 663, + "start": 610, + "end": 665, "loc": { "start": { "line": 39, @@ -1057,8 +1057,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 614, - "end": 624, + "start": 616, + "end": 626, "loc": { "start": { "line": 40, @@ -1074,8 +1074,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 614, - "end": 618, + "start": 616, + "end": 620, "loc": { "start": { "line": 40, @@ -1091,8 +1091,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 620, - "end": 624, + "start": 622, + "end": 626, "loc": { "start": { "line": 40, @@ -1108,8 +1108,8 @@ }, { "type": "ObjectProperty", - "start": 630, - "end": 640, + "start": 632, + "end": 642, "loc": { "start": { "line": 41, @@ -1125,8 +1125,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 630, - "end": 635, + "start": 632, + "end": 637, "loc": { "start": { "line": 41, @@ -1142,8 +1142,8 @@ }, "value": { "type": "NumericLiteral", - "start": 637, - "end": 640, + "start": 639, + "end": 642, "loc": { "start": { "line": 41, @@ -1163,8 +1163,8 @@ }, { "type": "ObjectProperty", - "start": 646, - "end": 658, + "start": 648, + "end": 660, "loc": { "start": { "line": 42, @@ -1180,8 +1180,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 646, - "end": 652, + "start": 648, + "end": 654, "loc": { "start": { "line": 42, @@ -1197,8 +1197,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 654, - "end": 658, + "start": 656, + "end": 660, "loc": { "start": { "line": 42, @@ -1217,8 +1217,8 @@ }, { "type": "ObjectProperty", - "start": 667, - "end": 732, + "start": 669, + "end": 734, "loc": { "start": { "line": 44, @@ -1234,8 +1234,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 667, - "end": 671, + "start": 669, + "end": 673, "loc": { "start": { "line": 44, @@ -1251,8 +1251,8 @@ }, "value": { "type": "ObjectExpression", - "start": 673, - "end": 732, + "start": 675, + "end": 734, "loc": { "start": { "line": 44, @@ -1266,8 +1266,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 679, - "end": 701, + "start": 681, + "end": 703, "loc": { "start": { "line": 45, @@ -1283,8 +1283,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 679, - "end": 685, + "start": 681, + "end": 687, "loc": { "start": { "line": 45, @@ -1300,8 +1300,8 @@ }, "value": { "type": "StringLiteral", - "start": 687, - "end": 701, + "start": 689, + "end": 703, "loc": { "start": { "line": 45, @@ -1321,8 +1321,8 @@ }, { "type": "ObjectProperty", - "start": 707, - "end": 727, + "start": 709, + "end": 729, "loc": { "start": { "line": 46, @@ -1338,8 +1338,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 707, - "end": 710, + "start": 709, + "end": 712, "loc": { "start": { "line": 46, @@ -1355,8 +1355,8 @@ }, "value": { "type": "StringLiteral", - "start": 712, - "end": 727, + "start": 714, + "end": 729, "loc": { "start": { "line": 46, @@ -1379,8 +1379,8 @@ }, { "type": "ObjectProperty", - "start": 736, - "end": 857, + "start": 738, + "end": 859, "loc": { "start": { "line": 48, @@ -1396,8 +1396,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 736, - "end": 741, + "start": 738, + "end": 743, "loc": { "start": { "line": 48, @@ -1413,8 +1413,8 @@ }, "value": { "type": "ObjectExpression", - "start": 743, - "end": 857, + "start": 745, + "end": 859, "loc": { "start": { "line": 48, @@ -1428,8 +1428,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 749, - "end": 768, + "start": 751, + "end": 770, "loc": { "start": { "line": 49, @@ -1445,8 +1445,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 749, - "end": 763, + "start": 751, + "end": 765, "loc": { "start": { "line": 49, @@ -1462,8 +1462,8 @@ }, "value": { "type": "NumericLiteral", - "start": 765, - "end": 768, + "start": 767, + "end": 770, "loc": { "start": { "line": 49, @@ -1483,8 +1483,8 @@ }, { "type": "ObjectProperty", - "start": 774, - "end": 793, + "start": 776, + "end": 795, "loc": { "start": { "line": 50, @@ -1500,8 +1500,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 774, - "end": 788, + "start": 776, + "end": 790, "loc": { "start": { "line": 50, @@ -1517,8 +1517,8 @@ }, "value": { "type": "NumericLiteral", - "start": 790, - "end": 793, + "start": 792, + "end": 795, "loc": { "start": { "line": 50, @@ -1538,8 +1538,8 @@ }, { "type": "ObjectProperty", - "start": 799, - "end": 852, + "start": 801, + "end": 854, "loc": { "start": { "line": 51, @@ -1555,8 +1555,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 799, - "end": 805, + "start": 801, + "end": 807, "loc": { "start": { "line": 51, @@ -1572,8 +1572,8 @@ }, "value": { "type": "ArrowFunctionExpression", - "start": 807, - "end": 852, + "start": 809, + "end": 854, "loc": { "start": { "line": 51, @@ -1591,8 +1591,8 @@ "params": [ { "type": "Identifier", - "start": 808, - "end": 809, + "start": 810, + "end": 811, "loc": { "start": { "line": 51, @@ -1609,8 +1609,8 @@ ], "body": { "type": "BlockStatement", - "start": 814, - "end": 852, + "start": 816, + "end": 854, "loc": { "start": { "line": 51, @@ -1624,8 +1624,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 815, - "end": 851, + "start": 817, + "end": 853, "loc": { "start": { "line": 51, @@ -1638,8 +1638,8 @@ }, "expression": { "type": "CallExpression", - "start": 815, - "end": 850, + "start": 817, + "end": 852, "loc": { "start": { "line": 51, @@ -1652,8 +1652,8 @@ }, "callee": { "type": "MemberExpression", - "start": 815, - "end": 826, + "start": 817, + "end": 828, "loc": { "start": { "line": 51, @@ -1666,8 +1666,8 @@ }, "object": { "type": "Identifier", - "start": 815, - "end": 822, + "start": 817, + "end": 824, "loc": { "start": { "line": 51, @@ -1683,8 +1683,8 @@ }, "property": { "type": "Identifier", - "start": 823, - "end": 826, + "start": 825, + "end": 828, "loc": { "start": { "line": 51, @@ -1703,8 +1703,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 827, - "end": 849, + "start": 829, + "end": 851, "loc": { "start": { "line": 51, @@ -1734,8 +1734,8 @@ }, { "type": "ObjectProperty", - "start": 861, - "end": 1064, + "start": 863, + "end": 1066, "loc": { "start": { "line": 53, @@ -1751,8 +1751,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 861, - "end": 864, + "start": 863, + "end": 866, "loc": { "start": { "line": 53, @@ -1768,8 +1768,8 @@ }, "value": { "type": "ObjectExpression", - "start": 866, - "end": 1064, + "start": 868, + "end": 1066, "loc": { "start": { "line": 53, @@ -1783,8 +1783,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 872, - "end": 882, + "start": 874, + "end": 884, "loc": { "start": { "line": 54, @@ -1800,8 +1800,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 872, - "end": 875, + "start": 874, + "end": 877, "loc": { "start": { "line": 54, @@ -1817,8 +1817,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 877, - "end": 882, + "start": 879, + "end": 884, "loc": { "start": { "line": 54, @@ -1834,8 +1834,8 @@ }, { "type": "ObjectProperty", - "start": 888, - "end": 951, + "start": 890, + "end": 953, "loc": { "start": { "line": 55, @@ -1851,8 +1851,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 888, - "end": 894, + "start": 890, + "end": 896, "loc": { "start": { "line": 55, @@ -1868,8 +1868,8 @@ }, "value": { "type": "ConditionalExpression", - "start": 897, - "end": 950, + "start": 899, + "end": 952, "loc": { "start": { "line": 55, @@ -1882,8 +1882,8 @@ }, "test": { "type": "BinaryExpression", - "start": 897, - "end": 935, + "start": 899, + "end": 937, "loc": { "start": { "line": 55, @@ -1896,8 +1896,8 @@ }, "left": { "type": "MemberExpression", - "start": 897, - "end": 917, + "start": 899, + "end": 919, "loc": { "start": { "line": 55, @@ -1910,8 +1910,8 @@ }, "object": { "type": "MemberExpression", - "start": 897, - "end": 908, + "start": 899, + "end": 910, "loc": { "start": { "line": 55, @@ -1924,8 +1924,8 @@ }, "object": { "type": "Identifier", - "start": 897, - "end": 904, + "start": 899, + "end": 906, "loc": { "start": { "line": 55, @@ -1941,8 +1941,8 @@ }, "property": { "type": "Identifier", - "start": 905, - "end": 908, + "start": 907, + "end": 910, "loc": { "start": { "line": 55, @@ -1960,8 +1960,8 @@ }, "property": { "type": "Identifier", - "start": 909, - "end": 917, + "start": 911, + "end": 919, "loc": { "start": { "line": 55, @@ -1980,8 +1980,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 922, - "end": 935, + "start": 924, + "end": 937, "loc": { "start": { "line": 55, @@ -2001,8 +2001,8 @@ }, "consequent": { "type": "BooleanLiteral", - "start": 938, - "end": 942, + "start": 940, + "end": 944, "loc": { "start": { "line": 55, @@ -2017,8 +2017,8 @@ }, "alternate": { "type": "BooleanLiteral", - "start": 945, - "end": 950, + "start": 947, + "end": 952, "loc": { "start": { "line": 55, @@ -2033,14 +2033,14 @@ }, "extra": { "parenthesized": true, - "parenStart": 896 + "parenStart": 898 } } }, { "type": "ObjectProperty", - "start": 957, - "end": 972, + "start": 959, + "end": 974, "loc": { "start": { "line": 56, @@ -2056,8 +2056,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 957, - "end": 965, + "start": 959, + "end": 967, "loc": { "start": { "line": 56, @@ -2073,8 +2073,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 967, - "end": 972, + "start": 969, + "end": 974, "loc": { "start": { "line": 56, @@ -2090,8 +2090,8 @@ }, { "type": "ObjectProperty", - "start": 978, - "end": 1059, + "start": 980, + "end": 1061, "loc": { "start": { "line": 57, @@ -2107,8 +2107,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 978, - "end": 987, + "start": 980, + "end": 989, "loc": { "start": { "line": 57, @@ -2124,8 +2124,8 @@ }, "value": { "type": "ArrowFunctionExpression", - "start": 989, - "end": 1059, + "start": 991, + "end": 1061, "loc": { "start": { "line": 57, @@ -2143,8 +2143,8 @@ "params": [ { "type": "Identifier", - "start": 990, - "end": 991, + "start": 992, + "end": 993, "loc": { "start": { "line": 57, @@ -2160,8 +2160,8 @@ }, { "type": "Identifier", - "start": 993, - "end": 994, + "start": 995, + "end": 996, "loc": { "start": { "line": 57, @@ -2177,8 +2177,8 @@ }, { "type": "Identifier", - "start": 996, - "end": 998, + "start": 998, + "end": 1000, "loc": { "start": { "line": 57, @@ -2194,8 +2194,8 @@ }, { "type": "Identifier", - "start": 1000, - "end": 1002, + "start": 1002, + "end": 1004, "loc": { "start": { "line": 57, @@ -2212,8 +2212,8 @@ ], "body": { "type": "BlockStatement", - "start": 1007, - "end": 1059, + "start": 1009, + "end": 1061, "loc": { "start": { "line": 57, @@ -2227,8 +2227,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1008, - "end": 1058, + "start": 1010, + "end": 1060, "loc": { "start": { "line": 57, @@ -2241,8 +2241,8 @@ }, "expression": { "type": "CallExpression", - "start": 1008, - "end": 1057, + "start": 1010, + "end": 1059, "loc": { "start": { "line": 57, @@ -2255,8 +2255,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1008, - "end": 1019, + "start": 1010, + "end": 1021, "loc": { "start": { "line": 57, @@ -2269,8 +2269,8 @@ }, "object": { "type": "Identifier", - "start": 1008, - "end": 1015, + "start": 1010, + "end": 1017, "loc": { "start": { "line": 57, @@ -2286,8 +2286,8 @@ }, "property": { "type": "Identifier", - "start": 1016, - "end": 1019, + "start": 1018, + "end": 1021, "loc": { "start": { "line": 57, @@ -2306,8 +2306,8 @@ "arguments": [ { "type": "TemplateLiteral", - "start": 1020, - "end": 1056, + "start": 1022, + "end": 1058, "loc": { "start": { "line": 57, @@ -2321,8 +2321,8 @@ "expressions": [ { "type": "Identifier", - "start": 1034, - "end": 1035, + "start": 1036, + "end": 1037, "loc": { "start": { "line": 57, @@ -2338,8 +2338,8 @@ }, { "type": "Identifier", - "start": 1039, - "end": 1040, + "start": 1041, + "end": 1042, "loc": { "start": { "line": 57, @@ -2355,8 +2355,8 @@ }, { "type": "Identifier", - "start": 1045, - "end": 1047, + "start": 1047, + "end": 1049, "loc": { "start": { "line": 57, @@ -2372,8 +2372,8 @@ }, { "type": "Identifier", - "start": 1052, - "end": 1054, + "start": 1054, + "end": 1056, "loc": { "start": { "line": 57, @@ -2391,8 +2391,8 @@ "quasis": [ { "type": "TemplateElement", - "start": 1021, - "end": 1032, + "start": 1023, + "end": 1034, "loc": { "start": { "line": 57, @@ -2411,8 +2411,8 @@ }, { "type": "TemplateElement", - "start": 1036, - "end": 1037, + "start": 1038, + "end": 1039, "loc": { "start": { "line": 57, @@ -2431,8 +2431,8 @@ }, { "type": "TemplateElement", - "start": 1041, - "end": 1043, + "start": 1043, + "end": 1045, "loc": { "start": { "line": 57, @@ -2451,8 +2451,8 @@ }, { "type": "TemplateElement", - "start": 1048, - "end": 1050, + "start": 1050, + "end": 1052, "loc": { "start": { "line": 57, @@ -2471,8 +2471,8 @@ }, { "type": "TemplateElement", - "start": 1055, - "end": 1055, + "start": 1057, + "end": 1057, "loc": { "start": { "line": 57, @@ -2505,8 +2505,8 @@ { "type": "CommentLine", "value": " _: true,", - "start": 1068, - "end": 1079, + "start": 1070, + "end": 1081, "loc": { "start": { "line": 59, @@ -2521,8 +2521,8 @@ { "type": "CommentBlock", "value": "*\n * Apply users function, make the full settings\n * @param {Object} [userConfig] User's custom config\n * @return {null}\n ", - "start": 1083, - "end": 1210, + "start": 1085, + "end": 1212, "loc": { "start": { "line": 62, @@ -2563,8 +2563,8 @@ }, { "type": "Identifier", - "start": 1212, - "end": 1571, + "start": 1214, + "end": 1573, "loc": { "start": { "line": 68, @@ -2577,8 +2577,8 @@ }, "id": { "type": "Identifier", - "start": 1221, - "end": 1234, + "start": 1223, + "end": 1236, "loc": { "start": { "line": 68, @@ -2598,8 +2598,8 @@ "params": [ { "type": "Identifier", - "start": 1235, - "end": 1245, + "start": 1237, + "end": 1247, "loc": { "start": { "line": 68, @@ -2616,8 +2616,8 @@ ], "body": { "type": "BlockStatement", - "start": 1246, - "end": 1571, + "start": 1248, + "end": 1573, "loc": { "start": { "line": 68, @@ -2631,8 +2631,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1471, - "end": 1526, + "start": 1473, + "end": 1528, "loc": { "start": { "line": 78, @@ -2645,8 +2645,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1471, - "end": 1525, + "start": 1473, + "end": 1527, "loc": { "start": { "line": 78, @@ -2660,8 +2660,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1471, - "end": 1481, + "start": 1473, + "end": 1483, "loc": { "start": { "line": 78, @@ -2678,8 +2678,8 @@ }, "right": { "type": "CallExpression", - "start": 1484, - "end": 1525, + "start": 1486, + "end": 1527, "loc": { "start": { "line": 78, @@ -2692,8 +2692,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1484, - "end": 1498, + "start": 1486, + "end": 1500, "loc": { "start": { "line": 78, @@ -2706,8 +2706,8 @@ }, "object": { "type": "Identifier", - "start": 1484, - "end": 1485, + "start": 1486, + "end": 1487, "loc": { "start": { "line": 78, @@ -2723,8 +2723,8 @@ }, "property": { "type": "Identifier", - "start": 1486, - "end": 1498, + "start": 1488, + "end": 1500, "loc": { "start": { "line": 78, @@ -2743,8 +2743,8 @@ "arguments": [ { "type": "Identifier", - "start": 1499, - "end": 1509, + "start": 1501, + "end": 1511, "loc": { "start": { "line": 78, @@ -2760,8 +2760,8 @@ }, { "type": "Identifier", - "start": 1511, - "end": 1524, + "start": 1513, + "end": 1526, "loc": { "start": { "line": 78, @@ -2783,8 +2783,8 @@ { "type": "CommentLine", "value": " if (_.has(userConfig, '_')){", - "start": 1251, - "end": 1282, + "start": 1253, + "end": 1284, "loc": { "start": { "line": 70, @@ -2799,8 +2799,8 @@ { "type": "CommentLine", "value": " import(/* webpackMode: \"lazy\" */ './configValidater').then(f => {", - "start": 1285, - "end": 1355, + "start": 1287, + "end": 1357, "loc": { "start": { "line": 71, @@ -2815,8 +2815,8 @@ { "type": "CommentLine", "value": " f.configValidater(userConfig);", - "start": 1358, - "end": 1395, + "start": 1360, + "end": 1397, "loc": { "start": { "line": 72, @@ -2831,8 +2831,8 @@ { "type": "CommentLine", "value": " }).catch(err => {", - "start": 1398, - "end": 1420, + "start": 1400, + "end": 1422, "loc": { "start": { "line": 73, @@ -2847,8 +2847,8 @@ { "type": "CommentLine", "value": " console.error(err);", - "start": 1423, - "end": 1449, + "start": 1425, + "end": 1451, "loc": { "start": { "line": 74, @@ -2863,8 +2863,8 @@ { "type": "CommentLine", "value": " });", - "start": 1452, - "end": 1460, + "start": 1454, + "end": 1462, "loc": { "start": { "line": 75, @@ -2879,8 +2879,8 @@ { "type": "CommentLine", "value": " }", - "start": 1463, - "end": 1467, + "start": 1465, + "end": 1469, "loc": { "start": { "line": 76, @@ -2896,8 +2896,8 @@ }, { "type": "ExpressionStatement", - "start": 1529, - "end": 1568, + "start": 1531, + "end": 1570, "loc": { "start": { "line": 79, @@ -2910,8 +2910,8 @@ }, "expression": { "type": "CallExpression", - "start": 1529, - "end": 1567, + "start": 1531, + "end": 1569, "loc": { "start": { "line": 79, @@ -2924,8 +2924,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1529, - "end": 1540, + "start": 1531, + "end": 1542, "loc": { "start": { "line": 79, @@ -2938,8 +2938,8 @@ }, "object": { "type": "Identifier", - "start": 1529, - "end": 1536, + "start": 1531, + "end": 1538, "loc": { "start": { "line": 79, @@ -2955,8 +2955,8 @@ }, "property": { "type": "Identifier", - "start": 1537, - "end": 1540, + "start": 1539, + "end": 1542, "loc": { "start": { "line": 79, @@ -2975,8 +2975,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1541, - "end": 1554, + "start": 1543, + "end": 1556, "loc": { "start": { "line": 79, @@ -2995,8 +2995,8 @@ }, { "type": "Identifier", - "start": 1556, - "end": 1566, + "start": 1558, + "end": 1568, "loc": { "start": { "line": 79, @@ -3022,8 +3022,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 1573, - "end": 1624, + "start": 1575, + "end": 1626, "loc": { "start": { "line": 83, @@ -3038,8 +3038,8 @@ "specifiers": [ { "type": "ExportSpecifier", - "start": 1584, - "end": 1597, + "start": 1586, + "end": 1599, "loc": { "start": { "line": 84, @@ -3052,8 +3052,8 @@ }, "local": { "type": "Identifier", - "start": 1584, - "end": 1597, + "start": 1586, + "end": 1599, "loc": { "start": { "line": 84, @@ -3069,8 +3069,8 @@ }, "exported": { "type": "Identifier", - "start": 1584, - "end": 1597, + "start": 1586, + "end": 1599, "loc": { "start": { "line": 84, @@ -3087,8 +3087,8 @@ }, { "type": "ExportSpecifier", - "start": 1601, - "end": 1621, + "start": 1603, + "end": 1623, "loc": { "start": { "line": 85, @@ -3101,8 +3101,8 @@ }, "local": { "type": "Identifier", - "start": 1601, - "end": 1611, + "start": 1603, + "end": 1613, "loc": { "start": { "line": 85, @@ -3118,8 +3118,8 @@ }, "exported": { "type": "Identifier", - "start": 1615, - "end": 1621, + "start": 1617, + "end": 1623, "loc": { "start": { "line": 85, @@ -3139,8 +3139,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 1573, - "end": 1624, + "start": 1575, + "end": 1626, "loc": { "start": { "line": 83, @@ -3153,8 +3153,8 @@ }, "declaration": { "type": "FunctionDeclaration", - "start": 1212, - "end": 1571, + "start": 1214, + "end": 1573, "loc": { "start": { "line": 68, @@ -3167,8 +3167,8 @@ }, "id": { "type": "Identifier", - "start": 1221, - "end": 1234, + "start": 1223, + "end": 1236, "loc": { "start": { "line": 68, @@ -3188,8 +3188,8 @@ "params": [ { "type": "Identifier", - "start": 1235, - "end": 1245, + "start": 1237, + "end": 1247, "loc": { "start": { "line": 68, @@ -3206,8 +3206,8 @@ ], "body": { "type": "BlockStatement", - "start": 1246, - "end": 1571, + "start": 1248, + "end": 1573, "loc": { "start": { "line": 68, @@ -3221,8 +3221,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1471, - "end": 1526, + "start": 1473, + "end": 1528, "loc": { "start": { "line": 78, @@ -3235,8 +3235,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1471, - "end": 1525, + "start": 1473, + "end": 1527, "loc": { "start": { "line": 78, @@ -3250,8 +3250,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1471, - "end": 1481, + "start": 1473, + "end": 1483, "loc": { "start": { "line": 78, @@ -3268,8 +3268,8 @@ }, "right": { "type": "CallExpression", - "start": 1484, - "end": 1525, + "start": 1486, + "end": 1527, "loc": { "start": { "line": 78, @@ -3282,8 +3282,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1484, - "end": 1498, + "start": 1486, + "end": 1500, "loc": { "start": { "line": 78, @@ -3296,8 +3296,8 @@ }, "object": { "type": "Identifier", - "start": 1484, - "end": 1485, + "start": 1486, + "end": 1487, "loc": { "start": { "line": 78, @@ -3313,8 +3313,8 @@ }, "property": { "type": "Identifier", - "start": 1486, - "end": 1498, + "start": 1488, + "end": 1500, "loc": { "start": { "line": 78, @@ -3333,8 +3333,8 @@ "arguments": [ { "type": "Identifier", - "start": 1499, - "end": 1509, + "start": 1501, + "end": 1511, "loc": { "start": { "line": 78, @@ -3350,8 +3350,8 @@ }, { "type": "Identifier", - "start": 1511, - "end": 1524, + "start": 1513, + "end": 1526, "loc": { "start": { "line": 78, @@ -3373,8 +3373,8 @@ { "type": "CommentLine", "value": " if (_.has(userConfig, '_')){", - "start": 1251, - "end": 1282, + "start": 1253, + "end": 1284, "loc": { "start": { "line": 70, @@ -3389,8 +3389,8 @@ { "type": "CommentLine", "value": " import(/* webpackMode: \"lazy\" */ './configValidater').then(f => {", - "start": 1285, - "end": 1355, + "start": 1287, + "end": 1357, "loc": { "start": { "line": 71, @@ -3405,8 +3405,8 @@ { "type": "CommentLine", "value": " f.configValidater(userConfig);", - "start": 1358, - "end": 1395, + "start": 1360, + "end": 1397, "loc": { "start": { "line": 72, @@ -3421,8 +3421,8 @@ { "type": "CommentLine", "value": " }).catch(err => {", - "start": 1398, - "end": 1420, + "start": 1400, + "end": 1422, "loc": { "start": { "line": 73, @@ -3437,8 +3437,8 @@ { "type": "CommentLine", "value": " console.error(err);", - "start": 1423, - "end": 1449, + "start": 1425, + "end": 1451, "loc": { "start": { "line": 74, @@ -3453,8 +3453,8 @@ { "type": "CommentLine", "value": " });", - "start": 1452, - "end": 1460, + "start": 1454, + "end": 1462, "loc": { "start": { "line": 75, @@ -3469,8 +3469,8 @@ { "type": "CommentLine", "value": " }", - "start": 1463, - "end": 1467, + "start": 1465, + "end": 1469, "loc": { "start": { "line": 76, @@ -3486,8 +3486,8 @@ }, { "type": "ExpressionStatement", - "start": 1529, - "end": 1568, + "start": 1531, + "end": 1570, "loc": { "start": { "line": 79, @@ -3500,8 +3500,8 @@ }, "expression": { "type": "CallExpression", - "start": 1529, - "end": 1567, + "start": 1531, + "end": 1569, "loc": { "start": { "line": 79, @@ -3514,8 +3514,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1529, - "end": 1540, + "start": 1531, + "end": 1542, "loc": { "start": { "line": 79, @@ -3528,8 +3528,8 @@ }, "object": { "type": "Identifier", - "start": 1529, - "end": 1536, + "start": 1531, + "end": 1538, "loc": { "start": { "line": 79, @@ -3545,8 +3545,8 @@ }, "property": { "type": "Identifier", - "start": 1537, - "end": 1540, + "start": 1539, + "end": 1542, "loc": { "start": { "line": 79, @@ -3565,8 +3565,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1541, - "end": 1554, + "start": 1543, + "end": 1556, "loc": { "start": { "line": 79, @@ -3585,8 +3585,8 @@ }, { "type": "Identifier", - "start": 1556, - "end": 1566, + "start": 1558, + "end": 1568, "loc": { "start": { "line": 79, @@ -3755,8 +3755,8 @@ { "type": "CommentLine", "value": " _: true,", - "start": 1068, - "end": 1079, + "start": 1070, + "end": 1081, "loc": { "start": { "line": 59, @@ -3771,8 +3771,8 @@ { "type": "CommentBlock", "value": "*\n * Apply users function, make the full settings\n * @param {Object} [userConfig] User's custom config\n * @return {null}\n ", - "start": 1083, - "end": 1210, + "start": 1085, + "end": 1212, "loc": { "start": { "line": 62, @@ -3787,8 +3787,8 @@ { "type": "CommentLine", "value": " if (_.has(userConfig, '_')){", - "start": 1251, - "end": 1282, + "start": 1253, + "end": 1284, "loc": { "start": { "line": 70, @@ -3803,8 +3803,8 @@ { "type": "CommentLine", "value": " import(/* webpackMode: \"lazy\" */ './configValidater').then(f => {", - "start": 1285, - "end": 1355, + "start": 1287, + "end": 1357, "loc": { "start": { "line": 71, @@ -3819,8 +3819,8 @@ { "type": "CommentLine", "value": " f.configValidater(userConfig);", - "start": 1358, - "end": 1395, + "start": 1360, + "end": 1397, "loc": { "start": { "line": 72, @@ -3835,8 +3835,8 @@ { "type": "CommentLine", "value": " }).catch(err => {", - "start": 1398, - "end": 1420, + "start": 1400, + "end": 1422, "loc": { "start": { "line": 73, @@ -3851,8 +3851,8 @@ { "type": "CommentLine", "value": " console.error(err);", - "start": 1423, - "end": 1449, + "start": 1425, + "end": 1451, "loc": { "start": { "line": 74, @@ -3867,8 +3867,8 @@ { "type": "CommentLine", "value": " });", - "start": 1452, - "end": 1460, + "start": 1454, + "end": 1462, "loc": { "start": { "line": 75, @@ -3883,8 +3883,8 @@ { "type": "CommentLine", "value": " }", - "start": 1463, - "end": 1467, + "start": 1465, + "end": 1469, "loc": { "start": { "line": 76, @@ -5178,9 +5178,9 @@ "postfix": false, "binop": null }, - "value": "antialias", + "value": "superSample", "start": 489, - "end": 498, + "end": 500, "loc": { "start": { "line": 32, @@ -5188,7 +5188,7 @@ }, "end": { "line": 32, - "column": 13 + "column": 15 } } }, @@ -5205,16 +5205,16 @@ "binop": null, "updateContext": null }, - "start": 498, - "end": 499, + "start": 500, + "end": 501, "loc": { "start": { "line": 32, - "column": 13 + "column": 15 }, "end": { "line": 32, - "column": 14 + "column": 16 } } }, @@ -5232,16 +5232,16 @@ "updateContext": null }, "value": 2, - "start": 500, - "end": 501, + "start": 502, + "end": 503, "loc": { "start": { "line": 32, - "column": 15 + "column": 17 }, "end": { "line": 32, - "column": 16 + "column": 18 } } }, @@ -5258,16 +5258,16 @@ "binop": null, "updateContext": null }, - "start": 501, - "end": 502, + "start": 503, + "end": 504, "loc": { "start": { "line": 32, - "column": 16 + "column": 18 }, "end": { "line": 32, - "column": 17 + "column": 19 } } }, @@ -5284,8 +5284,8 @@ "binop": null }, "value": "width", - "start": 507, - "end": 512, + "start": 509, + "end": 514, "loc": { "start": { "line": 33, @@ -5310,8 +5310,8 @@ "binop": null, "updateContext": null }, - "start": 512, - "end": 513, + "start": 514, + "end": 515, "loc": { "start": { "line": 33, @@ -5337,8 +5337,8 @@ "updateContext": null }, "value": 150, - "start": 514, - "end": 517, + "start": 516, + "end": 519, "loc": { "start": { "line": 33, @@ -5363,8 +5363,8 @@ "binop": null, "updateContext": null }, - "start": 517, - "end": 518, + "start": 519, + "end": 520, "loc": { "start": { "line": 33, @@ -5389,8 +5389,8 @@ "binop": null }, "value": "height", - "start": 523, - "end": 529, + "start": 525, + "end": 531, "loc": { "start": { "line": 34, @@ -5415,8 +5415,8 @@ "binop": null, "updateContext": null }, - "start": 529, - "end": 530, + "start": 531, + "end": 532, "loc": { "start": { "line": 34, @@ -5442,8 +5442,8 @@ "updateContext": null }, "value": 300, - "start": 531, - "end": 534, + "start": 533, + "end": 536, "loc": { "start": { "line": 34, @@ -5468,8 +5468,8 @@ "binop": null, "updateContext": null }, - "start": 534, - "end": 535, + "start": 536, + "end": 537, "loc": { "start": { "line": 34, @@ -5494,8 +5494,8 @@ "binop": null }, "value": "position", - "start": 540, - "end": 548, + "start": 542, + "end": 550, "loc": { "start": { "line": 35, @@ -5520,8 +5520,8 @@ "binop": null, "updateContext": null }, - "start": 548, - "end": 549, + "start": 550, + "end": 551, "loc": { "start": { "line": 35, @@ -5547,8 +5547,8 @@ "updateContext": null }, "value": "right", - "start": 550, - "end": 557, + "start": 552, + "end": 559, "loc": { "start": { "line": 35, @@ -5573,8 +5573,8 @@ "binop": null, "updateContext": null }, - "start": 557, - "end": 558, + "start": 559, + "end": 560, "loc": { "start": { "line": 35, @@ -5599,8 +5599,8 @@ "binop": null }, "value": "hOffset", - "start": 563, - "end": 570, + "start": 565, + "end": 572, "loc": { "start": { "line": 36, @@ -5625,8 +5625,8 @@ "binop": null, "updateContext": null }, - "start": 570, - "end": 571, + "start": 572, + "end": 573, "loc": { "start": { "line": 36, @@ -5652,8 +5652,8 @@ "updateContext": null }, "value": 0, - "start": 572, - "end": 573, + "start": 574, + "end": 575, "loc": { "start": { "line": 36, @@ -5678,8 +5678,8 @@ "binop": null, "updateContext": null }, - "start": 573, - "end": 574, + "start": 575, + "end": 576, "loc": { "start": { "line": 36, @@ -5704,8 +5704,8 @@ "binop": null }, "value": "vOffset", - "start": 579, - "end": 586, + "start": 581, + "end": 588, "loc": { "start": { "line": 37, @@ -5730,8 +5730,8 @@ "binop": null, "updateContext": null }, - "start": 586, - "end": 587, + "start": 588, + "end": 589, "loc": { "start": { "line": 37, @@ -5757,8 +5757,8 @@ "updateContext": null }, "value": "-", - "start": 588, - "end": 589, + "start": 590, + "end": 591, "loc": { "start": { "line": 37, @@ -5784,8 +5784,8 @@ "updateContext": null }, "value": 20, - "start": 589, - "end": 591, + "start": 591, + "end": 593, "loc": { "start": { "line": 37, @@ -5810,8 +5810,8 @@ "binop": null, "updateContext": null }, - "start": 591, - "end": 592, + "start": 593, + "end": 594, "loc": { "start": { "line": 37, @@ -5835,8 +5835,8 @@ "postfix": false, "binop": null }, - "start": 595, - "end": 596, + "start": 597, + "end": 598, "loc": { "start": { "line": 38, @@ -5861,8 +5861,8 @@ "binop": null, "updateContext": null }, - "start": 596, - "end": 597, + "start": 598, + "end": 599, "loc": { "start": { "line": 38, @@ -5887,8 +5887,8 @@ "binop": null }, "value": "mobile", - "start": 600, - "end": 606, + "start": 602, + "end": 608, "loc": { "start": { "line": 39, @@ -5913,8 +5913,8 @@ "binop": null, "updateContext": null }, - "start": 606, - "end": 607, + "start": 608, + "end": 609, "loc": { "start": { "line": 39, @@ -5938,8 +5938,8 @@ "postfix": false, "binop": null }, - "start": 608, - "end": 609, + "start": 610, + "end": 611, "loc": { "start": { "line": 39, @@ -5964,8 +5964,8 @@ "binop": null }, "value": "show", - "start": 614, - "end": 618, + "start": 616, + "end": 620, "loc": { "start": { "line": 40, @@ -5990,8 +5990,8 @@ "binop": null, "updateContext": null }, - "start": 618, - "end": 619, + "start": 620, + "end": 621, "loc": { "start": { "line": 40, @@ -6018,8 +6018,8 @@ "updateContext": null }, "value": "true", - "start": 620, - "end": 624, + "start": 622, + "end": 626, "loc": { "start": { "line": 40, @@ -6044,8 +6044,8 @@ "binop": null, "updateContext": null }, - "start": 624, - "end": 625, + "start": 626, + "end": 627, "loc": { "start": { "line": 40, @@ -6070,8 +6070,8 @@ "binop": null }, "value": "scale", - "start": 630, - "end": 635, + "start": 632, + "end": 637, "loc": { "start": { "line": 41, @@ -6096,8 +6096,8 @@ "binop": null, "updateContext": null }, - "start": 635, - "end": 636, + "start": 637, + "end": 638, "loc": { "start": { "line": 41, @@ -6123,8 +6123,8 @@ "updateContext": null }, "value": 0.5, - "start": 637, - "end": 640, + "start": 639, + "end": 642, "loc": { "start": { "line": 41, @@ -6149,8 +6149,8 @@ "binop": null, "updateContext": null }, - "start": 640, - "end": 641, + "start": 642, + "end": 643, "loc": { "start": { "line": 41, @@ -6175,8 +6175,8 @@ "binop": null }, "value": "motion", - "start": 646, - "end": 652, + "start": 648, + "end": 654, "loc": { "start": { "line": 42, @@ -6201,8 +6201,8 @@ "binop": null, "updateContext": null }, - "start": 652, - "end": 653, + "start": 654, + "end": 655, "loc": { "start": { "line": 42, @@ -6229,8 +6229,8 @@ "updateContext": null }, "value": "true", - "start": 654, - "end": 658, + "start": 656, + "end": 660, "loc": { "start": { "line": 42, @@ -6255,8 +6255,8 @@ "binop": null, "updateContext": null }, - "start": 658, - "end": 659, + "start": 660, + "end": 661, "loc": { "start": { "line": 42, @@ -6280,8 +6280,8 @@ "postfix": false, "binop": null }, - "start": 662, - "end": 663, + "start": 664, + "end": 665, "loc": { "start": { "line": 43, @@ -6306,8 +6306,8 @@ "binop": null, "updateContext": null }, - "start": 663, - "end": 664, + "start": 665, + "end": 666, "loc": { "start": { "line": 43, @@ -6332,8 +6332,8 @@ "binop": null }, "value": "name", - "start": 667, - "end": 671, + "start": 669, + "end": 673, "loc": { "start": { "line": 44, @@ -6358,8 +6358,8 @@ "binop": null, "updateContext": null }, - "start": 671, - "end": 672, + "start": 673, + "end": 674, "loc": { "start": { "line": 44, @@ -6383,8 +6383,8 @@ "postfix": false, "binop": null }, - "start": 673, - "end": 674, + "start": 675, + "end": 676, "loc": { "start": { "line": 44, @@ -6409,8 +6409,8 @@ "binop": null }, "value": "canvas", - "start": 679, - "end": 685, + "start": 681, + "end": 687, "loc": { "start": { "line": 45, @@ -6435,8 +6435,8 @@ "binop": null, "updateContext": null }, - "start": 685, - "end": 686, + "start": 687, + "end": 688, "loc": { "start": { "line": 45, @@ -6462,8 +6462,8 @@ "updateContext": null }, "value": "live2dcanvas", - "start": 687, - "end": 701, + "start": 689, + "end": 703, "loc": { "start": { "line": 45, @@ -6488,8 +6488,8 @@ "binop": null, "updateContext": null }, - "start": 701, - "end": 702, + "start": 703, + "end": 704, "loc": { "start": { "line": 45, @@ -6514,8 +6514,8 @@ "binop": null }, "value": "div", - "start": 707, - "end": 710, + "start": 709, + "end": 712, "loc": { "start": { "line": 46, @@ -6540,8 +6540,8 @@ "binop": null, "updateContext": null }, - "start": 710, - "end": 711, + "start": 712, + "end": 713, "loc": { "start": { "line": 46, @@ -6567,8 +6567,8 @@ "updateContext": null }, "value": "live2d-widget", - "start": 712, - "end": 727, + "start": 714, + "end": 729, "loc": { "start": { "line": 46, @@ -6593,8 +6593,8 @@ "binop": null, "updateContext": null }, - "start": 727, - "end": 728, + "start": 729, + "end": 730, "loc": { "start": { "line": 46, @@ -6618,8 +6618,8 @@ "postfix": false, "binop": null }, - "start": 731, - "end": 732, + "start": 733, + "end": 734, "loc": { "start": { "line": 47, @@ -6644,8 +6644,8 @@ "binop": null, "updateContext": null }, - "start": 732, - "end": 733, + "start": 734, + "end": 735, "loc": { "start": { "line": 47, @@ -6670,8 +6670,8 @@ "binop": null }, "value": "react", - "start": 736, - "end": 741, + "start": 738, + "end": 743, "loc": { "start": { "line": 48, @@ -6696,8 +6696,8 @@ "binop": null, "updateContext": null }, - "start": 741, - "end": 742, + "start": 743, + "end": 744, "loc": { "start": { "line": 48, @@ -6721,8 +6721,8 @@ "postfix": false, "binop": null }, - "start": 743, - "end": 744, + "start": 745, + "end": 746, "loc": { "start": { "line": 48, @@ -6747,8 +6747,8 @@ "binop": null }, "value": "opacityDefault", - "start": 749, - "end": 763, + "start": 751, + "end": 765, "loc": { "start": { "line": 49, @@ -6773,8 +6773,8 @@ "binop": null, "updateContext": null }, - "start": 763, - "end": 764, + "start": 765, + "end": 766, "loc": { "start": { "line": 49, @@ -6800,8 +6800,8 @@ "updateContext": null }, "value": 0.7, - "start": 765, - "end": 768, + "start": 767, + "end": 770, "loc": { "start": { "line": 49, @@ -6826,8 +6826,8 @@ "binop": null, "updateContext": null }, - "start": 768, - "end": 769, + "start": 770, + "end": 771, "loc": { "start": { "line": 49, @@ -6852,8 +6852,8 @@ "binop": null }, "value": "opacityOnHover", - "start": 774, - "end": 788, + "start": 776, + "end": 790, "loc": { "start": { "line": 50, @@ -6878,8 +6878,8 @@ "binop": null, "updateContext": null }, - "start": 788, - "end": 789, + "start": 790, + "end": 791, "loc": { "start": { "line": 50, @@ -6905,8 +6905,8 @@ "updateContext": null }, "value": 0.2, - "start": 790, - "end": 793, + "start": 792, + "end": 795, "loc": { "start": { "line": 50, @@ -6931,8 +6931,8 @@ "binop": null, "updateContext": null }, - "start": 793, - "end": 794, + "start": 795, + "end": 796, "loc": { "start": { "line": 50, @@ -6957,8 +6957,8 @@ "binop": null }, "value": "myFunc", - "start": 799, - "end": 805, + "start": 801, + "end": 807, "loc": { "start": { "line": 51, @@ -6983,8 +6983,8 @@ "binop": null, "updateContext": null }, - "start": 805, - "end": 806, + "start": 807, + "end": 808, "loc": { "start": { "line": 51, @@ -7008,8 +7008,8 @@ "postfix": false, "binop": null }, - "start": 807, - "end": 808, + "start": 809, + "end": 810, "loc": { "start": { "line": 51, @@ -7034,8 +7034,8 @@ "binop": null }, "value": "e", - "start": 808, - "end": 809, + "start": 810, + "end": 811, "loc": { "start": { "line": 51, @@ -7059,8 +7059,8 @@ "postfix": false, "binop": null }, - "start": 809, - "end": 810, + "start": 811, + "end": 812, "loc": { "start": { "line": 51, @@ -7085,8 +7085,8 @@ "binop": null, "updateContext": null }, - "start": 811, - "end": 813, + "start": 813, + "end": 815, "loc": { "start": { "line": 51, @@ -7110,8 +7110,8 @@ "postfix": false, "binop": null }, - "start": 814, - "end": 815, + "start": 816, + "end": 817, "loc": { "start": { "line": 51, @@ -7136,8 +7136,8 @@ "binop": null }, "value": "console", - "start": 815, - "end": 822, + "start": 817, + "end": 824, "loc": { "start": { "line": 51, @@ -7162,8 +7162,8 @@ "binop": null, "updateContext": null }, - "start": 822, - "end": 823, + "start": 824, + "end": 825, "loc": { "start": { "line": 51, @@ -7188,8 +7188,8 @@ "binop": null }, "value": "log", - "start": 823, - "end": 826, + "start": 825, + "end": 828, "loc": { "start": { "line": 51, @@ -7213,8 +7213,8 @@ "postfix": false, "binop": null }, - "start": 826, - "end": 827, + "start": 828, + "end": 829, "loc": { "start": { "line": 51, @@ -7240,8 +7240,8 @@ "updateContext": null }, "value": "(undefined) ┑( ̄Д  ̄)┍", - "start": 827, - "end": 849, + "start": 829, + "end": 851, "loc": { "start": { "line": 51, @@ -7265,8 +7265,8 @@ "postfix": false, "binop": null }, - "start": 849, - "end": 850, + "start": 851, + "end": 852, "loc": { "start": { "line": 51, @@ -7291,8 +7291,8 @@ "binop": null, "updateContext": null }, - "start": 850, - "end": 851, + "start": 852, + "end": 853, "loc": { "start": { "line": 51, @@ -7316,8 +7316,8 @@ "postfix": false, "binop": null }, - "start": 851, - "end": 852, + "start": 853, + "end": 854, "loc": { "start": { "line": 51, @@ -7342,8 +7342,8 @@ "binop": null, "updateContext": null }, - "start": 852, - "end": 853, + "start": 854, + "end": 855, "loc": { "start": { "line": 51, @@ -7367,8 +7367,8 @@ "postfix": false, "binop": null }, - "start": 856, - "end": 857, + "start": 858, + "end": 859, "loc": { "start": { "line": 52, @@ -7393,8 +7393,8 @@ "binop": null, "updateContext": null }, - "start": 857, - "end": 858, + "start": 859, + "end": 860, "loc": { "start": { "line": 52, @@ -7419,8 +7419,8 @@ "binop": null }, "value": "dev", - "start": 861, - "end": 864, + "start": 863, + "end": 866, "loc": { "start": { "line": 53, @@ -7445,8 +7445,8 @@ "binop": null, "updateContext": null }, - "start": 864, - "end": 865, + "start": 866, + "end": 867, "loc": { "start": { "line": 53, @@ -7470,8 +7470,8 @@ "postfix": false, "binop": null }, - "start": 866, - "end": 867, + "start": 868, + "end": 869, "loc": { "start": { "line": 53, @@ -7496,8 +7496,8 @@ "binop": null }, "value": "log", - "start": 872, - "end": 875, + "start": 874, + "end": 877, "loc": { "start": { "line": 54, @@ -7522,8 +7522,8 @@ "binop": null, "updateContext": null }, - "start": 875, - "end": 876, + "start": 877, + "end": 878, "loc": { "start": { "line": 54, @@ -7550,8 +7550,8 @@ "updateContext": null }, "value": "false", - "start": 877, - "end": 882, + "start": 879, + "end": 884, "loc": { "start": { "line": 54, @@ -7576,8 +7576,8 @@ "binop": null, "updateContext": null }, - "start": 882, - "end": 883, + "start": 884, + "end": 885, "loc": { "start": { "line": 54, @@ -7602,8 +7602,8 @@ "binop": null }, "value": "border", - "start": 888, - "end": 894, + "start": 890, + "end": 896, "loc": { "start": { "line": 55, @@ -7628,8 +7628,8 @@ "binop": null, "updateContext": null }, - "start": 894, - "end": 895, + "start": 896, + "end": 897, "loc": { "start": { "line": 55, @@ -7653,8 +7653,8 @@ "postfix": false, "binop": null }, - "start": 896, - "end": 897, + "start": 898, + "end": 899, "loc": { "start": { "line": 55, @@ -7679,8 +7679,8 @@ "binop": null }, "value": "process", - "start": 897, - "end": 904, + "start": 899, + "end": 906, "loc": { "start": { "line": 55, @@ -7705,8 +7705,8 @@ "binop": null, "updateContext": null }, - "start": 904, - "end": 905, + "start": 906, + "end": 907, "loc": { "start": { "line": 55, @@ -7731,8 +7731,8 @@ "binop": null }, "value": "env", - "start": 905, - "end": 908, + "start": 907, + "end": 910, "loc": { "start": { "line": 55, @@ -7757,8 +7757,8 @@ "binop": null, "updateContext": null }, - "start": 908, - "end": 909, + "start": 910, + "end": 911, "loc": { "start": { "line": 55, @@ -7783,8 +7783,8 @@ "binop": null }, "value": "NODE_ENV", - "start": 909, - "end": 917, + "start": 911, + "end": 919, "loc": { "start": { "line": 55, @@ -7810,8 +7810,8 @@ "updateContext": null }, "value": "===", - "start": 918, - "end": 921, + "start": 920, + "end": 923, "loc": { "start": { "line": 55, @@ -7837,8 +7837,8 @@ "updateContext": null }, "value": "development", - "start": 922, - "end": 935, + "start": 924, + "end": 937, "loc": { "start": { "line": 55, @@ -7863,8 +7863,8 @@ "binop": null, "updateContext": null }, - "start": 936, - "end": 937, + "start": 938, + "end": 939, "loc": { "start": { "line": 55, @@ -7891,8 +7891,8 @@ "updateContext": null }, "value": "true", - "start": 938, - "end": 942, + "start": 940, + "end": 944, "loc": { "start": { "line": 55, @@ -7917,8 +7917,8 @@ "binop": null, "updateContext": null }, - "start": 943, - "end": 944, + "start": 945, + "end": 946, "loc": { "start": { "line": 55, @@ -7945,8 +7945,8 @@ "updateContext": null }, "value": "false", - "start": 945, - "end": 950, + "start": 947, + "end": 952, "loc": { "start": { "line": 55, @@ -7970,8 +7970,8 @@ "postfix": false, "binop": null }, - "start": 950, - "end": 951, + "start": 952, + "end": 953, "loc": { "start": { "line": 55, @@ -7996,8 +7996,8 @@ "binop": null, "updateContext": null }, - "start": 951, - "end": 952, + "start": 953, + "end": 954, "loc": { "start": { "line": 55, @@ -8022,8 +8022,8 @@ "binop": null }, "value": "mouseLog", - "start": 957, - "end": 965, + "start": 959, + "end": 967, "loc": { "start": { "line": 56, @@ -8048,8 +8048,8 @@ "binop": null, "updateContext": null }, - "start": 965, - "end": 966, + "start": 967, + "end": 968, "loc": { "start": { "line": 56, @@ -8076,8 +8076,8 @@ "updateContext": null }, "value": "false", - "start": 967, - "end": 972, + "start": 969, + "end": 974, "loc": { "start": { "line": 56, @@ -8102,8 +8102,8 @@ "binop": null, "updateContext": null }, - "start": 972, - "end": 973, + "start": 974, + "end": 975, "loc": { "start": { "line": 56, @@ -8128,8 +8128,8 @@ "binop": null }, "value": "mouseFunc", - "start": 978, - "end": 987, + "start": 980, + "end": 989, "loc": { "start": { "line": 57, @@ -8154,8 +8154,8 @@ "binop": null, "updateContext": null }, - "start": 987, - "end": 988, + "start": 989, + "end": 990, "loc": { "start": { "line": 57, @@ -8179,8 +8179,8 @@ "postfix": false, "binop": null }, - "start": 989, - "end": 990, + "start": 991, + "end": 992, "loc": { "start": { "line": 57, @@ -8205,8 +8205,8 @@ "binop": null }, "value": "x", - "start": 990, - "end": 991, + "start": 992, + "end": 993, "loc": { "start": { "line": 57, @@ -8231,8 +8231,8 @@ "binop": null, "updateContext": null }, - "start": 991, - "end": 992, + "start": 993, + "end": 994, "loc": { "start": { "line": 57, @@ -8257,8 +8257,8 @@ "binop": null }, "value": "y", - "start": 993, - "end": 994, + "start": 995, + "end": 996, "loc": { "start": { "line": 57, @@ -8283,8 +8283,8 @@ "binop": null, "updateContext": null }, - "start": 994, - "end": 995, + "start": 996, + "end": 997, "loc": { "start": { "line": 57, @@ -8309,8 +8309,8 @@ "binop": null }, "value": "ix", - "start": 996, - "end": 998, + "start": 998, + "end": 1000, "loc": { "start": { "line": 57, @@ -8335,8 +8335,8 @@ "binop": null, "updateContext": null }, - "start": 998, - "end": 999, + "start": 1000, + "end": 1001, "loc": { "start": { "line": 57, @@ -8361,8 +8361,8 @@ "binop": null }, "value": "iy", - "start": 1000, - "end": 1002, + "start": 1002, + "end": 1004, "loc": { "start": { "line": 57, @@ -8386,8 +8386,8 @@ "postfix": false, "binop": null }, - "start": 1002, - "end": 1003, + "start": 1004, + "end": 1005, "loc": { "start": { "line": 57, @@ -8412,8 +8412,8 @@ "binop": null, "updateContext": null }, - "start": 1004, - "end": 1006, + "start": 1006, + "end": 1008, "loc": { "start": { "line": 57, @@ -8437,8 +8437,8 @@ "postfix": false, "binop": null }, - "start": 1007, - "end": 1008, + "start": 1009, + "end": 1010, "loc": { "start": { "line": 57, @@ -8463,8 +8463,8 @@ "binop": null }, "value": "console", - "start": 1008, - "end": 1015, + "start": 1010, + "end": 1017, "loc": { "start": { "line": 57, @@ -8489,8 +8489,8 @@ "binop": null, "updateContext": null }, - "start": 1015, - "end": 1016, + "start": 1017, + "end": 1018, "loc": { "start": { "line": 57, @@ -8515,8 +8515,8 @@ "binop": null }, "value": "log", - "start": 1016, - "end": 1019, + "start": 1018, + "end": 1021, "loc": { "start": { "line": 57, @@ -8540,8 +8540,8 @@ "postfix": false, "binop": null }, - "start": 1019, - "end": 1020, + "start": 1021, + "end": 1022, "loc": { "start": { "line": 57, @@ -8565,8 +8565,8 @@ "postfix": false, "binop": null }, - "start": 1020, - "end": 1021, + "start": 1022, + "end": 1023, "loc": { "start": { "line": 57, @@ -8592,8 +8592,8 @@ "updateContext": null }, "value": "MouseFunc: ", - "start": 1021, - "end": 1032, + "start": 1023, + "end": 1034, "loc": { "start": { "line": 57, @@ -8617,8 +8617,8 @@ "postfix": false, "binop": null }, - "start": 1032, - "end": 1034, + "start": 1034, + "end": 1036, "loc": { "start": { "line": 57, @@ -8643,8 +8643,8 @@ "binop": null }, "value": "x", - "start": 1034, - "end": 1035, + "start": 1036, + "end": 1037, "loc": { "start": { "line": 57, @@ -8668,8 +8668,8 @@ "postfix": false, "binop": null }, - "start": 1035, - "end": 1036, + "start": 1037, + "end": 1038, "loc": { "start": { "line": 57, @@ -8695,8 +8695,8 @@ "updateContext": null }, "value": ",", - "start": 1036, - "end": 1037, + "start": 1038, + "end": 1039, "loc": { "start": { "line": 57, @@ -8720,8 +8720,8 @@ "postfix": false, "binop": null }, - "start": 1037, - "end": 1039, + "start": 1039, + "end": 1041, "loc": { "start": { "line": 57, @@ -8746,8 +8746,8 @@ "binop": null }, "value": "y", - "start": 1039, - "end": 1040, + "start": 1041, + "end": 1042, "loc": { "start": { "line": 57, @@ -8771,8 +8771,8 @@ "postfix": false, "binop": null }, - "start": 1040, - "end": 1041, + "start": 1042, + "end": 1043, "loc": { "start": { "line": 57, @@ -8798,8 +8798,8 @@ "updateContext": null }, "value": "; ", - "start": 1041, - "end": 1043, + "start": 1043, + "end": 1045, "loc": { "start": { "line": 57, @@ -8823,8 +8823,8 @@ "postfix": false, "binop": null }, - "start": 1043, - "end": 1045, + "start": 1045, + "end": 1047, "loc": { "start": { "line": 57, @@ -8849,8 +8849,8 @@ "binop": null }, "value": "ix", - "start": 1045, - "end": 1047, + "start": 1047, + "end": 1049, "loc": { "start": { "line": 57, @@ -8874,8 +8874,8 @@ "postfix": false, "binop": null }, - "start": 1047, - "end": 1048, + "start": 1049, + "end": 1050, "loc": { "start": { "line": 57, @@ -8901,8 +8901,8 @@ "updateContext": null }, "value": ", ", - "start": 1048, - "end": 1050, + "start": 1050, + "end": 1052, "loc": { "start": { "line": 57, @@ -8926,8 +8926,8 @@ "postfix": false, "binop": null }, - "start": 1050, - "end": 1052, + "start": 1052, + "end": 1054, "loc": { "start": { "line": 57, @@ -8952,8 +8952,8 @@ "binop": null }, "value": "iy", - "start": 1052, - "end": 1054, + "start": 1054, + "end": 1056, "loc": { "start": { "line": 57, @@ -8977,8 +8977,8 @@ "postfix": false, "binop": null }, - "start": 1054, - "end": 1055, + "start": 1056, + "end": 1057, "loc": { "start": { "line": 57, @@ -9004,8 +9004,8 @@ "updateContext": null }, "value": "", - "start": 1055, - "end": 1055, + "start": 1057, + "end": 1057, "loc": { "start": { "line": 57, @@ -9029,8 +9029,8 @@ "postfix": false, "binop": null }, - "start": 1055, - "end": 1056, + "start": 1057, + "end": 1058, "loc": { "start": { "line": 57, @@ -9054,8 +9054,8 @@ "postfix": false, "binop": null }, - "start": 1056, - "end": 1057, + "start": 1058, + "end": 1059, "loc": { "start": { "line": 57, @@ -9080,8 +9080,8 @@ "binop": null, "updateContext": null }, - "start": 1057, - "end": 1058, + "start": 1059, + "end": 1060, "loc": { "start": { "line": 57, @@ -9105,8 +9105,8 @@ "postfix": false, "binop": null }, - "start": 1058, - "end": 1059, + "start": 1060, + "end": 1061, "loc": { "start": { "line": 57, @@ -9131,8 +9131,8 @@ "binop": null, "updateContext": null }, - "start": 1059, - "end": 1060, + "start": 1061, + "end": 1062, "loc": { "start": { "line": 57, @@ -9156,8 +9156,8 @@ "postfix": false, "binop": null }, - "start": 1063, - "end": 1064, + "start": 1065, + "end": 1066, "loc": { "start": { "line": 58, @@ -9182,8 +9182,8 @@ "binop": null, "updateContext": null }, - "start": 1064, - "end": 1065, + "start": 1066, + "end": 1067, "loc": { "start": { "line": 58, @@ -9198,8 +9198,8 @@ { "type": "CommentLine", "value": " _: true,", - "start": 1068, - "end": 1079, + "start": 1070, + "end": 1081, "loc": { "start": { "line": 59, @@ -9223,8 +9223,8 @@ "postfix": false, "binop": null }, - "start": 1080, - "end": 1081, + "start": 1082, + "end": 1083, "loc": { "start": { "line": 60, @@ -9239,8 +9239,8 @@ { "type": "CommentBlock", "value": "*\n * Apply users function, make the full settings\n * @param {Object} [userConfig] User's custom config\n * @return {null}\n ", - "start": 1083, - "end": 1210, + "start": 1085, + "end": 1212, "loc": { "start": { "line": 62, @@ -9266,8 +9266,8 @@ "binop": null }, "value": "function", - "start": 1212, - "end": 1220, + "start": 1214, + "end": 1222, "loc": { "start": { "line": 68, @@ -9292,8 +9292,8 @@ "binop": null }, "value": "configApplyer", - "start": 1221, - "end": 1234, + "start": 1223, + "end": 1236, "loc": { "start": { "line": 68, @@ -9317,8 +9317,8 @@ "postfix": false, "binop": null }, - "start": 1234, - "end": 1235, + "start": 1236, + "end": 1237, "loc": { "start": { "line": 68, @@ -9343,8 +9343,8 @@ "binop": null }, "value": "userConfig", - "start": 1235, - "end": 1245, + "start": 1237, + "end": 1247, "loc": { "start": { "line": 68, @@ -9368,8 +9368,8 @@ "postfix": false, "binop": null }, - "start": 1245, - "end": 1246, + "start": 1247, + "end": 1248, "loc": { "start": { "line": 68, @@ -9393,8 +9393,8 @@ "postfix": false, "binop": null }, - "start": 1246, - "end": 1247, + "start": 1248, + "end": 1249, "loc": { "start": { "line": 68, @@ -9409,8 +9409,8 @@ { "type": "CommentLine", "value": " if (_.has(userConfig, '_')){", - "start": 1251, - "end": 1282, + "start": 1253, + "end": 1284, "loc": { "start": { "line": 70, @@ -9425,8 +9425,8 @@ { "type": "CommentLine", "value": " import(/* webpackMode: \"lazy\" */ './configValidater').then(f => {", - "start": 1285, - "end": 1355, + "start": 1287, + "end": 1357, "loc": { "start": { "line": 71, @@ -9441,8 +9441,8 @@ { "type": "CommentLine", "value": " f.configValidater(userConfig);", - "start": 1358, - "end": 1395, + "start": 1360, + "end": 1397, "loc": { "start": { "line": 72, @@ -9457,8 +9457,8 @@ { "type": "CommentLine", "value": " }).catch(err => {", - "start": 1398, - "end": 1420, + "start": 1400, + "end": 1422, "loc": { "start": { "line": 73, @@ -9473,8 +9473,8 @@ { "type": "CommentLine", "value": " console.error(err);", - "start": 1423, - "end": 1449, + "start": 1425, + "end": 1451, "loc": { "start": { "line": 74, @@ -9489,8 +9489,8 @@ { "type": "CommentLine", "value": " });", - "start": 1452, - "end": 1460, + "start": 1454, + "end": 1462, "loc": { "start": { "line": 75, @@ -9505,8 +9505,8 @@ { "type": "CommentLine", "value": " }", - "start": 1463, - "end": 1467, + "start": 1465, + "end": 1469, "loc": { "start": { "line": 76, @@ -9531,8 +9531,8 @@ "binop": null }, "value": "currConfig", - "start": 1471, - "end": 1481, + "start": 1473, + "end": 1483, "loc": { "start": { "line": 78, @@ -9558,8 +9558,8 @@ "updateContext": null }, "value": "=", - "start": 1482, - "end": 1483, + "start": 1484, + "end": 1485, "loc": { "start": { "line": 78, @@ -9584,8 +9584,8 @@ "binop": null }, "value": "_", - "start": 1484, - "end": 1485, + "start": 1486, + "end": 1487, "loc": { "start": { "line": 78, @@ -9610,8 +9610,8 @@ "binop": null, "updateContext": null }, - "start": 1485, - "end": 1486, + "start": 1487, + "end": 1488, "loc": { "start": { "line": 78, @@ -9636,8 +9636,8 @@ "binop": null }, "value": "defaultsDeep", - "start": 1486, - "end": 1498, + "start": 1488, + "end": 1500, "loc": { "start": { "line": 78, @@ -9661,8 +9661,8 @@ "postfix": false, "binop": null }, - "start": 1498, - "end": 1499, + "start": 1500, + "end": 1501, "loc": { "start": { "line": 78, @@ -9687,8 +9687,8 @@ "binop": null }, "value": "userConfig", - "start": 1499, - "end": 1509, + "start": 1501, + "end": 1511, "loc": { "start": { "line": 78, @@ -9713,8 +9713,8 @@ "binop": null, "updateContext": null }, - "start": 1509, - "end": 1510, + "start": 1511, + "end": 1512, "loc": { "start": { "line": 78, @@ -9739,8 +9739,8 @@ "binop": null }, "value": "defaultConfig", - "start": 1511, - "end": 1524, + "start": 1513, + "end": 1526, "loc": { "start": { "line": 78, @@ -9764,8 +9764,8 @@ "postfix": false, "binop": null }, - "start": 1524, - "end": 1525, + "start": 1526, + "end": 1527, "loc": { "start": { "line": 78, @@ -9790,8 +9790,8 @@ "binop": null, "updateContext": null }, - "start": 1525, - "end": 1526, + "start": 1527, + "end": 1528, "loc": { "start": { "line": 78, @@ -9816,8 +9816,8 @@ "binop": null }, "value": "console", - "start": 1529, - "end": 1536, + "start": 1531, + "end": 1538, "loc": { "start": { "line": 79, @@ -9842,8 +9842,8 @@ "binop": null, "updateContext": null }, - "start": 1536, - "end": 1537, + "start": 1538, + "end": 1539, "loc": { "start": { "line": 79, @@ -9868,8 +9868,8 @@ "binop": null }, "value": "log", - "start": 1537, - "end": 1540, + "start": 1539, + "end": 1542, "loc": { "start": { "line": 79, @@ -9893,8 +9893,8 @@ "postfix": false, "binop": null }, - "start": 1540, - "end": 1541, + "start": 1542, + "end": 1543, "loc": { "start": { "line": 79, @@ -9920,8 +9920,8 @@ "updateContext": null }, "value": "currConfig:", - "start": 1541, - "end": 1554, + "start": 1543, + "end": 1556, "loc": { "start": { "line": 79, @@ -9946,8 +9946,8 @@ "binop": null, "updateContext": null }, - "start": 1554, - "end": 1555, + "start": 1556, + "end": 1557, "loc": { "start": { "line": 79, @@ -9972,8 +9972,8 @@ "binop": null }, "value": "currConfig", - "start": 1556, - "end": 1566, + "start": 1558, + "end": 1568, "loc": { "start": { "line": 79, @@ -9997,8 +9997,8 @@ "postfix": false, "binop": null }, - "start": 1566, - "end": 1567, + "start": 1568, + "end": 1569, "loc": { "start": { "line": 79, @@ -10023,8 +10023,8 @@ "binop": null, "updateContext": null }, - "start": 1567, - "end": 1568, + "start": 1569, + "end": 1570, "loc": { "start": { "line": 79, @@ -10048,8 +10048,8 @@ "postfix": false, "binop": null }, - "start": 1570, - "end": 1571, + "start": 1572, + "end": 1573, "loc": { "start": { "line": 81, @@ -10076,8 +10076,8 @@ "updateContext": null }, "value": "export", - "start": 1573, - "end": 1579, + "start": 1575, + "end": 1581, "loc": { "start": { "line": 83, @@ -10101,8 +10101,8 @@ "postfix": false, "binop": null }, - "start": 1580, - "end": 1581, + "start": 1582, + "end": 1583, "loc": { "start": { "line": 83, @@ -10127,8 +10127,8 @@ "binop": null }, "value": "configApplyer", - "start": 1584, - "end": 1597, + "start": 1586, + "end": 1599, "loc": { "start": { "line": 84, @@ -10153,8 +10153,8 @@ "binop": null, "updateContext": null }, - "start": 1597, - "end": 1598, + "start": 1599, + "end": 1600, "loc": { "start": { "line": 84, @@ -10179,8 +10179,8 @@ "binop": null }, "value": "currConfig", - "start": 1601, - "end": 1611, + "start": 1603, + "end": 1613, "loc": { "start": { "line": 85, @@ -10205,8 +10205,8 @@ "binop": null }, "value": "as", - "start": 1612, - "end": 1614, + "start": 1614, + "end": 1616, "loc": { "start": { "line": 85, @@ -10231,8 +10231,8 @@ "binop": null }, "value": "config", - "start": 1615, - "end": 1621, + "start": 1617, + "end": 1623, "loc": { "start": { "line": 85, @@ -10257,8 +10257,8 @@ "binop": null, "updateContext": null }, - "start": 1621, - "end": 1622, + "start": 1623, + "end": 1624, "loc": { "start": { "line": 85, @@ -10282,8 +10282,8 @@ "postfix": false, "binop": null }, - "start": 1623, - "end": 1624, + "start": 1625, + "end": 1626, "loc": { "start": { "line": 86, @@ -10308,8 +10308,8 @@ "binop": null, "updateContext": null }, - "start": 1625, - "end": 1625, + "start": 1627, + "end": 1627, "loc": { "start": { "line": 87, diff --git a/ghpages/docs/ast/source/config/configValidater.js.json b/ghpages/docs/ast/source/config/configValidater.js.json index 031b8b1..258893d 100644 --- a/ghpages/docs/ast/source/config/configValidater.js.json +++ b/ghpages/docs/ast/source/config/configValidater.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 1818, + "end": 1820, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 1818, + "end": 1820, "loc": { "start": { "line": 1, @@ -153,7 +153,7 @@ { "type": "VariableDeclaration", "start": 346, - "end": 1289, + "end": 1291, "loc": { "start": { "line": 19, @@ -168,7 +168,7 @@ { "type": "VariableDeclarator", "start": 352, - "end": 1289, + "end": 1291, "loc": { "start": { "line": 19, @@ -200,7 +200,7 @@ "init": { "type": "ObjectExpression", "start": 370, - "end": 1289, + "end": 1291, "loc": { "start": { "line": 19, @@ -674,7 +674,7 @@ { "type": "ObjectProperty", "start": 534, - "end": 798, + "end": 800, "loc": { "start": { "line": 26, @@ -708,7 +708,7 @@ "value": { "type": "CallExpression", "start": 543, - "end": 798, + "end": 800, "loc": { "start": { "line": 26, @@ -773,7 +773,7 @@ { "type": "ObjectExpression", "start": 559, - "end": 797, + "end": 799, "loc": { "start": { "line": 26, @@ -788,7 +788,7 @@ { "type": "ObjectProperty", "start": 565, - "end": 592, + "end": 594, "loc": { "start": { "line": 27, @@ -796,7 +796,7 @@ }, "end": { "line": 27, - "column": 31 + "column": 33 } }, "method": false, @@ -805,7 +805,7 @@ "key": { "type": "Identifier", "start": 565, - "end": 574, + "end": 576, "loc": { "start": { "line": 27, @@ -813,38 +813,38 @@ }, "end": { "line": 27, - "column": 13 + "column": 15 }, - "identifierName": "antialias" + "identifierName": "superSample" }, - "name": "antialias" + "name": "superSample" }, "value": { "type": "MemberExpression", - "start": 576, - "end": 592, + "start": 578, + "end": 594, "loc": { "start": { "line": 27, - "column": 15 + "column": 17 }, "end": { "line": 27, - "column": 31 + "column": 33 } }, "object": { "type": "Identifier", - "start": 576, - "end": 585, + "start": 578, + "end": 587, "loc": { "start": { "line": 27, - "column": 15 + "column": 17 }, "end": { "line": 27, - "column": 24 + "column": 26 }, "identifierName": "PropTypes" }, @@ -852,16 +852,16 @@ }, "property": { "type": "Identifier", - "start": 586, - "end": 592, + "start": 588, + "end": 594, "loc": { "start": { "line": 27, - "column": 25 + "column": 27 }, "end": { "line": 27, - "column": 31 + "column": 33 }, "identifierName": "number" }, @@ -872,8 +872,8 @@ }, { "type": "ObjectProperty", - "start": 598, - "end": 621, + "start": 600, + "end": 623, "loc": { "start": { "line": 28, @@ -889,8 +889,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 598, - "end": 603, + "start": 600, + "end": 605, "loc": { "start": { "line": 28, @@ -906,8 +906,8 @@ }, "value": { "type": "MemberExpression", - "start": 605, - "end": 621, + "start": 607, + "end": 623, "loc": { "start": { "line": 28, @@ -920,8 +920,8 @@ }, "object": { "type": "Identifier", - "start": 605, - "end": 614, + "start": 607, + "end": 616, "loc": { "start": { "line": 28, @@ -937,8 +937,8 @@ }, "property": { "type": "Identifier", - "start": 615, - "end": 621, + "start": 617, + "end": 623, "loc": { "start": { "line": 28, @@ -957,8 +957,8 @@ }, { "type": "ObjectProperty", - "start": 627, - "end": 651, + "start": 629, + "end": 653, "loc": { "start": { "line": 29, @@ -974,8 +974,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 627, - "end": 633, + "start": 629, + "end": 635, "loc": { "start": { "line": 29, @@ -991,8 +991,8 @@ }, "value": { "type": "MemberExpression", - "start": 635, - "end": 651, + "start": 637, + "end": 653, "loc": { "start": { "line": 29, @@ -1005,8 +1005,8 @@ }, "object": { "type": "Identifier", - "start": 635, - "end": 644, + "start": 637, + "end": 646, "loc": { "start": { "line": 29, @@ -1022,8 +1022,8 @@ }, "property": { "type": "Identifier", - "start": 645, - "end": 651, + "start": 647, + "end": 653, "loc": { "start": { "line": 29, @@ -1042,8 +1042,8 @@ }, { "type": "ObjectProperty", - "start": 657, - "end": 680, + "start": 659, + "end": 682, "loc": { "start": { "line": 30, @@ -1059,8 +1059,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 657, - "end": 662, + "start": 659, + "end": 664, "loc": { "start": { "line": 30, @@ -1076,8 +1076,8 @@ }, "value": { "type": "MemberExpression", - "start": 664, - "end": 680, + "start": 666, + "end": 682, "loc": { "start": { "line": 30, @@ -1090,8 +1090,8 @@ }, "object": { "type": "Identifier", - "start": 664, - "end": 673, + "start": 666, + "end": 675, "loc": { "start": { "line": 30, @@ -1107,8 +1107,8 @@ }, "property": { "type": "Identifier", - "start": 674, - "end": 680, + "start": 676, + "end": 682, "loc": { "start": { "line": 30, @@ -1127,8 +1127,8 @@ }, { "type": "ObjectProperty", - "start": 686, - "end": 730, + "start": 688, + "end": 732, "loc": { "start": { "line": 31, @@ -1144,8 +1144,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 686, - "end": 694, + "start": 688, + "end": 696, "loc": { "start": { "line": 31, @@ -1161,8 +1161,8 @@ }, "value": { "type": "CallExpression", - "start": 696, - "end": 730, + "start": 698, + "end": 732, "loc": { "start": { "line": 31, @@ -1175,8 +1175,8 @@ }, "callee": { "type": "MemberExpression", - "start": 696, - "end": 711, + "start": 698, + "end": 713, "loc": { "start": { "line": 31, @@ -1189,8 +1189,8 @@ }, "object": { "type": "Identifier", - "start": 696, - "end": 705, + "start": 698, + "end": 707, "loc": { "start": { "line": 31, @@ -1206,8 +1206,8 @@ }, "property": { "type": "Identifier", - "start": 706, - "end": 711, + "start": 708, + "end": 713, "loc": { "start": { "line": 31, @@ -1226,8 +1226,8 @@ "arguments": [ { "type": "ArrayExpression", - "start": 712, - "end": 729, + "start": 714, + "end": 731, "loc": { "start": { "line": 31, @@ -1241,8 +1241,8 @@ "elements": [ { "type": "StringLiteral", - "start": 713, - "end": 719, + "start": 715, + "end": 721, "loc": { "start": { "line": 31, @@ -1261,8 +1261,8 @@ }, { "type": "StringLiteral", - "start": 721, - "end": 728, + "start": 723, + "end": 730, "loc": { "start": { "line": 31, @@ -1286,8 +1286,8 @@ }, { "type": "ObjectProperty", - "start": 736, - "end": 761, + "start": 738, + "end": 763, "loc": { "start": { "line": 32, @@ -1303,8 +1303,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 736, - "end": 743, + "start": 738, + "end": 745, "loc": { "start": { "line": 32, @@ -1320,8 +1320,8 @@ }, "value": { "type": "MemberExpression", - "start": 745, - "end": 761, + "start": 747, + "end": 763, "loc": { "start": { "line": 32, @@ -1334,8 +1334,8 @@ }, "object": { "type": "Identifier", - "start": 745, - "end": 754, + "start": 747, + "end": 756, "loc": { "start": { "line": 32, @@ -1351,8 +1351,8 @@ }, "property": { "type": "Identifier", - "start": 755, - "end": 761, + "start": 757, + "end": 763, "loc": { "start": { "line": 32, @@ -1371,8 +1371,8 @@ }, { "type": "ObjectProperty", - "start": 767, - "end": 792, + "start": 769, + "end": 794, "loc": { "start": { "line": 33, @@ -1388,8 +1388,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 767, - "end": 774, + "start": 769, + "end": 776, "loc": { "start": { "line": 33, @@ -1405,8 +1405,8 @@ }, "value": { "type": "MemberExpression", - "start": 776, - "end": 792, + "start": 778, + "end": 794, "loc": { "start": { "line": 33, @@ -1419,8 +1419,8 @@ }, "object": { "type": "Identifier", - "start": 776, - "end": 785, + "start": 778, + "end": 787, "loc": { "start": { "line": 33, @@ -1436,8 +1436,8 @@ }, "property": { "type": "Identifier", - "start": 786, - "end": 792, + "start": 788, + "end": 794, "loc": { "start": { "line": 33, @@ -1461,8 +1461,8 @@ }, { "type": "ObjectProperty", - "start": 802, - "end": 915, + "start": 804, + "end": 917, "loc": { "start": { "line": 35, @@ -1478,8 +1478,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 802, - "end": 808, + "start": 804, + "end": 810, "loc": { "start": { "line": 35, @@ -1495,8 +1495,8 @@ }, "value": { "type": "CallExpression", - "start": 810, - "end": 915, + "start": 812, + "end": 917, "loc": { "start": { "line": 35, @@ -1509,8 +1509,8 @@ }, "callee": { "type": "MemberExpression", - "start": 810, - "end": 825, + "start": 812, + "end": 827, "loc": { "start": { "line": 35, @@ -1523,8 +1523,8 @@ }, "object": { "type": "Identifier", - "start": 810, - "end": 819, + "start": 812, + "end": 821, "loc": { "start": { "line": 35, @@ -1540,8 +1540,8 @@ }, "property": { "type": "Identifier", - "start": 820, - "end": 825, + "start": 822, + "end": 827, "loc": { "start": { "line": 35, @@ -1560,8 +1560,8 @@ "arguments": [ { "type": "ObjectExpression", - "start": 826, - "end": 914, + "start": 828, + "end": 916, "loc": { "start": { "line": 35, @@ -1575,8 +1575,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 832, - "end": 852, + "start": 834, + "end": 854, "loc": { "start": { "line": 36, @@ -1592,8 +1592,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 832, - "end": 836, + "start": 834, + "end": 838, "loc": { "start": { "line": 36, @@ -1609,8 +1609,8 @@ }, "value": { "type": "MemberExpression", - "start": 838, - "end": 852, + "start": 840, + "end": 854, "loc": { "start": { "line": 36, @@ -1623,8 +1623,8 @@ }, "object": { "type": "Identifier", - "start": 838, - "end": 847, + "start": 840, + "end": 849, "loc": { "start": { "line": 36, @@ -1640,8 +1640,8 @@ }, "property": { "type": "Identifier", - "start": 848, - "end": 852, + "start": 850, + "end": 854, "loc": { "start": { "line": 36, @@ -1660,8 +1660,8 @@ }, { "type": "ObjectProperty", - "start": 858, - "end": 881, + "start": 860, + "end": 883, "loc": { "start": { "line": 37, @@ -1677,8 +1677,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 858, - "end": 863, + "start": 860, + "end": 865, "loc": { "start": { "line": 37, @@ -1694,8 +1694,8 @@ }, "value": { "type": "MemberExpression", - "start": 865, - "end": 881, + "start": 867, + "end": 883, "loc": { "start": { "line": 37, @@ -1708,8 +1708,8 @@ }, "object": { "type": "Identifier", - "start": 865, - "end": 874, + "start": 867, + "end": 876, "loc": { "start": { "line": 37, @@ -1725,8 +1725,8 @@ }, "property": { "type": "Identifier", - "start": 875, - "end": 881, + "start": 877, + "end": 883, "loc": { "start": { "line": 37, @@ -1745,8 +1745,8 @@ }, { "type": "ObjectProperty", - "start": 887, - "end": 909, + "start": 889, + "end": 911, "loc": { "start": { "line": 38, @@ -1762,8 +1762,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 887, - "end": 893, + "start": 889, + "end": 895, "loc": { "start": { "line": 38, @@ -1779,8 +1779,8 @@ }, "value": { "type": "MemberExpression", - "start": 895, - "end": 909, + "start": 897, + "end": 911, "loc": { "start": { "line": 38, @@ -1793,8 +1793,8 @@ }, "object": { "type": "Identifier", - "start": 895, - "end": 904, + "start": 897, + "end": 906, "loc": { "start": { "line": 38, @@ -1810,8 +1810,8 @@ }, "property": { "type": "Identifier", - "start": 905, - "end": 909, + "start": 907, + "end": 911, "loc": { "start": { "line": 38, @@ -1835,8 +1835,8 @@ }, { "type": "ObjectProperty", - "start": 919, - "end": 1004, + "start": 921, + "end": 1006, "loc": { "start": { "line": 40, @@ -1852,8 +1852,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 919, - "end": 923, + "start": 921, + "end": 925, "loc": { "start": { "line": 40, @@ -1869,8 +1869,8 @@ }, "value": { "type": "CallExpression", - "start": 925, - "end": 1004, + "start": 927, + "end": 1006, "loc": { "start": { "line": 40, @@ -1883,8 +1883,8 @@ }, "callee": { "type": "MemberExpression", - "start": 925, - "end": 940, + "start": 927, + "end": 942, "loc": { "start": { "line": 40, @@ -1897,8 +1897,8 @@ }, "object": { "type": "Identifier", - "start": 925, - "end": 934, + "start": 927, + "end": 936, "loc": { "start": { "line": 40, @@ -1914,8 +1914,8 @@ }, "property": { "type": "Identifier", - "start": 935, - "end": 940, + "start": 937, + "end": 942, "loc": { "start": { "line": 40, @@ -1934,8 +1934,8 @@ "arguments": [ { "type": "ObjectExpression", - "start": 941, - "end": 1003, + "start": 943, + "end": 1005, "loc": { "start": { "line": 40, @@ -1949,8 +1949,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 947, - "end": 971, + "start": 949, + "end": 973, "loc": { "start": { "line": 41, @@ -1966,8 +1966,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 947, - "end": 953, + "start": 949, + "end": 955, "loc": { "start": { "line": 41, @@ -1983,8 +1983,8 @@ }, "value": { "type": "MemberExpression", - "start": 955, - "end": 971, + "start": 957, + "end": 973, "loc": { "start": { "line": 41, @@ -1997,8 +1997,8 @@ }, "object": { "type": "Identifier", - "start": 955, - "end": 964, + "start": 957, + "end": 966, "loc": { "start": { "line": 41, @@ -2014,8 +2014,8 @@ }, "property": { "type": "Identifier", - "start": 965, - "end": 971, + "start": 967, + "end": 973, "loc": { "start": { "line": 41, @@ -2034,8 +2034,8 @@ }, { "type": "ObjectProperty", - "start": 977, - "end": 998, + "start": 979, + "end": 1000, "loc": { "start": { "line": 42, @@ -2051,8 +2051,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 977, - "end": 980, + "start": 979, + "end": 982, "loc": { "start": { "line": 42, @@ -2068,8 +2068,8 @@ }, "value": { "type": "MemberExpression", - "start": 982, - "end": 998, + "start": 984, + "end": 1000, "loc": { "start": { "line": 42, @@ -2082,8 +2082,8 @@ }, "object": { "type": "Identifier", - "start": 982, - "end": 991, + "start": 984, + "end": 993, "loc": { "start": { "line": 42, @@ -2099,8 +2099,8 @@ }, "property": { "type": "Identifier", - "start": 992, - "end": 998, + "start": 994, + "end": 1000, "loc": { "start": { "line": 42, @@ -2124,8 +2124,8 @@ }, { "type": "ObjectProperty", - "start": 1008, - "end": 1141, + "start": 1010, + "end": 1143, "loc": { "start": { "line": 44, @@ -2141,8 +2141,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1008, - "end": 1013, + "start": 1010, + "end": 1015, "loc": { "start": { "line": 44, @@ -2158,8 +2158,8 @@ }, "value": { "type": "CallExpression", - "start": 1015, - "end": 1141, + "start": 1017, + "end": 1143, "loc": { "start": { "line": 44, @@ -2172,8 +2172,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1015, - "end": 1030, + "start": 1017, + "end": 1032, "loc": { "start": { "line": 44, @@ -2186,8 +2186,8 @@ }, "object": { "type": "Identifier", - "start": 1015, - "end": 1024, + "start": 1017, + "end": 1026, "loc": { "start": { "line": 44, @@ -2203,8 +2203,8 @@ }, "property": { "type": "Identifier", - "start": 1025, - "end": 1030, + "start": 1027, + "end": 1032, "loc": { "start": { "line": 44, @@ -2223,8 +2223,8 @@ "arguments": [ { "type": "ObjectExpression", - "start": 1031, - "end": 1140, + "start": 1033, + "end": 1142, "loc": { "start": { "line": 44, @@ -2238,8 +2238,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 1037, - "end": 1069, + "start": 1039, + "end": 1071, "loc": { "start": { "line": 45, @@ -2255,8 +2255,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1037, - "end": 1051, + "start": 1039, + "end": 1053, "loc": { "start": { "line": 45, @@ -2272,8 +2272,8 @@ }, "value": { "type": "MemberExpression", - "start": 1053, - "end": 1069, + "start": 1055, + "end": 1071, "loc": { "start": { "line": 45, @@ -2286,8 +2286,8 @@ }, "object": { "type": "Identifier", - "start": 1053, - "end": 1062, + "start": 1055, + "end": 1064, "loc": { "start": { "line": 45, @@ -2303,8 +2303,8 @@ }, "property": { "type": "Identifier", - "start": 1063, - "end": 1069, + "start": 1065, + "end": 1071, "loc": { "start": { "line": 45, @@ -2323,8 +2323,8 @@ }, { "type": "ObjectProperty", - "start": 1075, - "end": 1107, + "start": 1077, + "end": 1109, "loc": { "start": { "line": 46, @@ -2340,8 +2340,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1075, - "end": 1089, + "start": 1077, + "end": 1091, "loc": { "start": { "line": 46, @@ -2357,8 +2357,8 @@ }, "value": { "type": "MemberExpression", - "start": 1091, - "end": 1107, + "start": 1093, + "end": 1109, "loc": { "start": { "line": 46, @@ -2371,8 +2371,8 @@ }, "object": { "type": "Identifier", - "start": 1091, - "end": 1100, + "start": 1093, + "end": 1102, "loc": { "start": { "line": 46, @@ -2388,8 +2388,8 @@ }, "property": { "type": "Identifier", - "start": 1101, - "end": 1107, + "start": 1103, + "end": 1109, "loc": { "start": { "line": 46, @@ -2408,8 +2408,8 @@ }, { "type": "ObjectProperty", - "start": 1113, - "end": 1135, + "start": 1115, + "end": 1137, "loc": { "start": { "line": 47, @@ -2425,8 +2425,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1113, - "end": 1119, + "start": 1115, + "end": 1121, "loc": { "start": { "line": 47, @@ -2442,8 +2442,8 @@ }, "value": { "type": "MemberExpression", - "start": 1121, - "end": 1135, + "start": 1123, + "end": 1137, "loc": { "start": { "line": 47, @@ -2456,8 +2456,8 @@ }, "object": { "type": "Identifier", - "start": 1121, - "end": 1130, + "start": 1123, + "end": 1132, "loc": { "start": { "line": 47, @@ -2473,8 +2473,8 @@ }, "property": { "type": "Identifier", - "start": 1131, - "end": 1135, + "start": 1133, + "end": 1137, "loc": { "start": { "line": 47, @@ -2498,8 +2498,8 @@ }, { "type": "ObjectProperty", - "start": 1145, - "end": 1286, + "start": 1147, + "end": 1288, "loc": { "start": { "line": 49, @@ -2515,8 +2515,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1145, - "end": 1148, + "start": 1147, + "end": 1150, "loc": { "start": { "line": 49, @@ -2532,8 +2532,8 @@ }, "value": { "type": "CallExpression", - "start": 1150, - "end": 1286, + "start": 1152, + "end": 1288, "loc": { "start": { "line": 49, @@ -2546,8 +2546,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1150, - "end": 1165, + "start": 1152, + "end": 1167, "loc": { "start": { "line": 49, @@ -2560,8 +2560,8 @@ }, "object": { "type": "Identifier", - "start": 1150, - "end": 1159, + "start": 1152, + "end": 1161, "loc": { "start": { "line": 49, @@ -2577,8 +2577,8 @@ }, "property": { "type": "Identifier", - "start": 1160, - "end": 1165, + "start": 1162, + "end": 1167, "loc": { "start": { "line": 49, @@ -2597,8 +2597,8 @@ "arguments": [ { "type": "ObjectExpression", - "start": 1166, - "end": 1285, + "start": 1168, + "end": 1287, "loc": { "start": { "line": 49, @@ -2612,8 +2612,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 1172, - "end": 1191, + "start": 1174, + "end": 1193, "loc": { "start": { "line": 50, @@ -2629,8 +2629,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1172, - "end": 1175, + "start": 1174, + "end": 1177, "loc": { "start": { "line": 50, @@ -2646,8 +2646,8 @@ }, "value": { "type": "MemberExpression", - "start": 1177, - "end": 1191, + "start": 1179, + "end": 1193, "loc": { "start": { "line": 50, @@ -2660,8 +2660,8 @@ }, "object": { "type": "Identifier", - "start": 1177, - "end": 1186, + "start": 1179, + "end": 1188, "loc": { "start": { "line": 50, @@ -2677,8 +2677,8 @@ }, "property": { "type": "Identifier", - "start": 1187, - "end": 1191, + "start": 1189, + "end": 1193, "loc": { "start": { "line": 50, @@ -2697,8 +2697,8 @@ }, { "type": "ObjectProperty", - "start": 1197, - "end": 1219, + "start": 1199, + "end": 1221, "loc": { "start": { "line": 51, @@ -2714,8 +2714,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1197, - "end": 1203, + "start": 1199, + "end": 1205, "loc": { "start": { "line": 51, @@ -2731,8 +2731,8 @@ }, "value": { "type": "MemberExpression", - "start": 1205, - "end": 1219, + "start": 1207, + "end": 1221, "loc": { "start": { "line": 51, @@ -2745,8 +2745,8 @@ }, "object": { "type": "Identifier", - "start": 1205, - "end": 1214, + "start": 1207, + "end": 1216, "loc": { "start": { "line": 51, @@ -2762,8 +2762,8 @@ }, "property": { "type": "Identifier", - "start": 1215, - "end": 1219, + "start": 1217, + "end": 1221, "loc": { "start": { "line": 51, @@ -2782,8 +2782,8 @@ }, { "type": "ObjectProperty", - "start": 1225, - "end": 1249, + "start": 1227, + "end": 1251, "loc": { "start": { "line": 52, @@ -2799,8 +2799,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1225, - "end": 1233, + "start": 1227, + "end": 1235, "loc": { "start": { "line": 52, @@ -2816,8 +2816,8 @@ }, "value": { "type": "MemberExpression", - "start": 1235, - "end": 1249, + "start": 1237, + "end": 1251, "loc": { "start": { "line": 52, @@ -2830,8 +2830,8 @@ }, "object": { "type": "Identifier", - "start": 1235, - "end": 1244, + "start": 1237, + "end": 1246, "loc": { "start": { "line": 52, @@ -2847,8 +2847,8 @@ }, "property": { "type": "Identifier", - "start": 1245, - "end": 1249, + "start": 1247, + "end": 1251, "loc": { "start": { "line": 52, @@ -2867,8 +2867,8 @@ }, { "type": "ObjectProperty", - "start": 1255, - "end": 1280, + "start": 1257, + "end": 1282, "loc": { "start": { "line": 53, @@ -2884,8 +2884,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1255, - "end": 1264, + "start": 1257, + "end": 1266, "loc": { "start": { "line": 53, @@ -2901,8 +2901,8 @@ }, "value": { "type": "MemberExpression", - "start": 1266, - "end": 1280, + "start": 1268, + "end": 1282, "loc": { "start": { "line": 53, @@ -2915,8 +2915,8 @@ }, "object": { "type": "Identifier", - "start": 1266, - "end": 1275, + "start": 1268, + "end": 1277, "loc": { "start": { "line": 53, @@ -2932,8 +2932,8 @@ }, "property": { "type": "Identifier", - "start": 1276, - "end": 1280, + "start": 1278, + "end": 1282, "loc": { "start": { "line": 53, @@ -2958,8 +2958,8 @@ { "type": "CommentBlock", "value": "*\n * The validater for user config\n * See https://github.com/facebook/prop-types\n * @param {Object} [userConfig] User's config\n * @description Only console.warn\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @return {null}\n ", - "start": 1290, - "end": 1560, + "start": 1292, + "end": 1562, "loc": { "start": { "line": 56, @@ -3003,8 +3003,8 @@ { "type": "CommentBlock", "value": "*\n * The validater for user config\n * See https://github.com/facebook/prop-types\n * @param {Object} [userConfig] User's config\n * @description Only console.warn\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @return {null}\n ", - "start": 1290, - "end": 1560, + "start": 1292, + "end": 1562, "loc": { "start": { "line": 56, @@ -3020,8 +3020,8 @@ }, { "type": "FunctionDeclaration", - "start": 1562, - "end": 1685, + "start": 1564, + "end": 1687, "loc": { "start": { "line": 65, @@ -3034,8 +3034,8 @@ }, "id": { "type": "Identifier", - "start": 1571, - "end": 1586, + "start": 1573, + "end": 1588, "loc": { "start": { "line": 65, @@ -3055,8 +3055,8 @@ "params": [ { "type": "Identifier", - "start": 1587, - "end": 1597, + "start": 1589, + "end": 1599, "loc": { "start": { "line": 65, @@ -3073,8 +3073,8 @@ ], "body": { "type": "BlockStatement", - "start": 1598, - "end": 1685, + "start": 1600, + "end": 1687, "loc": { "start": { "line": 65, @@ -3088,8 +3088,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 1602, - "end": 1683, + "start": 1604, + "end": 1685, "loc": { "start": { "line": 66, @@ -3102,8 +3102,8 @@ }, "expression": { "type": "CallExpression", - "start": 1602, - "end": 1682, + "start": 1604, + "end": 1684, "loc": { "start": { "line": 66, @@ -3116,8 +3116,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1602, - "end": 1626, + "start": 1604, + "end": 1628, "loc": { "start": { "line": 66, @@ -3130,8 +3130,8 @@ }, "object": { "type": "Identifier", - "start": 1602, - "end": 1611, + "start": 1604, + "end": 1613, "loc": { "start": { "line": 66, @@ -3147,8 +3147,8 @@ }, "property": { "type": "Identifier", - "start": 1612, - "end": 1626, + "start": 1614, + "end": 1628, "loc": { "start": { "line": 66, @@ -3167,8 +3167,8 @@ "arguments": [ { "type": "Identifier", - "start": 1627, - "end": 1642, + "start": 1629, + "end": 1644, "loc": { "start": { "line": 66, @@ -3184,8 +3184,8 @@ }, { "type": "Identifier", - "start": 1644, - "end": 1654, + "start": 1646, + "end": 1656, "loc": { "start": { "line": 66, @@ -3201,8 +3201,8 @@ }, { "type": "StringLiteral", - "start": 1656, - "end": 1664, + "start": 1658, + "end": 1666, "loc": { "start": { "line": 66, @@ -3221,8 +3221,8 @@ }, { "type": "StringLiteral", - "start": 1666, - "end": 1681, + "start": 1668, + "end": 1683, "loc": { "start": { "line": 66, @@ -3248,8 +3248,8 @@ }, { "type": "IfStatement", - "start": 1687, - "end": 1759, + "start": 1689, + "end": 1761, "loc": { "start": { "line": 69, @@ -3262,8 +3262,8 @@ }, "test": { "type": "BinaryExpression", - "start": 1691, - "end": 1729, + "start": 1693, + "end": 1731, "loc": { "start": { "line": 69, @@ -3276,8 +3276,8 @@ }, "left": { "type": "MemberExpression", - "start": 1691, - "end": 1711, + "start": 1693, + "end": 1713, "loc": { "start": { "line": 69, @@ -3290,8 +3290,8 @@ }, "object": { "type": "MemberExpression", - "start": 1691, - "end": 1702, + "start": 1693, + "end": 1704, "loc": { "start": { "line": 69, @@ -3304,8 +3304,8 @@ }, "object": { "type": "Identifier", - "start": 1691, - "end": 1698, + "start": 1693, + "end": 1700, "loc": { "start": { "line": 69, @@ -3321,8 +3321,8 @@ }, "property": { "type": "Identifier", - "start": 1699, - "end": 1702, + "start": 1701, + "end": 1704, "loc": { "start": { "line": 69, @@ -3340,8 +3340,8 @@ }, "property": { "type": "Identifier", - "start": 1703, - "end": 1711, + "start": 1705, + "end": 1713, "loc": { "start": { "line": 69, @@ -3360,8 +3360,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 1716, - "end": 1729, + "start": 1718, + "end": 1731, "loc": { "start": { "line": 69, @@ -3381,8 +3381,8 @@ }, "consequent": { "type": "ExpressionStatement", - "start": 1731, - "end": 1759, + "start": 1733, + "end": 1761, "loc": { "start": { "line": 69, @@ -3395,8 +3395,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1731, - "end": 1758, + "start": 1733, + "end": 1760, "loc": { "start": { "line": 69, @@ -3410,8 +3410,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1731, - "end": 1740, + "start": 1733, + "end": 1742, "loc": { "start": { "line": 69, @@ -3424,8 +3424,8 @@ }, "object": { "type": "Identifier", - "start": 1731, - "end": 1737, + "start": 1733, + "end": 1739, "loc": { "start": { "line": 69, @@ -3441,8 +3441,8 @@ }, "property": { "type": "Identifier", - "start": 1738, - "end": 1740, + "start": 1740, + "end": 1742, "loc": { "start": { "line": 69, @@ -3460,8 +3460,8 @@ }, "right": { "type": "Identifier", - "start": 1743, - "end": 1758, + "start": 1745, + "end": 1760, "loc": { "start": { "line": 69, @@ -3481,8 +3481,8 @@ }, { "type": "ExpressionStatement", - "start": 1761, - "end": 1817, + "start": 1763, + "end": 1819, "loc": { "start": { "line": 71, @@ -3495,8 +3495,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1761, - "end": 1817, + "start": 1763, + "end": 1819, "loc": { "start": { "line": 71, @@ -3510,8 +3510,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 1761, - "end": 1775, + "start": 1763, + "end": 1777, "loc": { "start": { "line": 71, @@ -3524,8 +3524,8 @@ }, "object": { "type": "Identifier", - "start": 1761, - "end": 1767, + "start": 1763, + "end": 1769, "loc": { "start": { "line": 71, @@ -3541,8 +3541,8 @@ }, "property": { "type": "Identifier", - "start": 1768, - "end": 1775, + "start": 1770, + "end": 1777, "loc": { "start": { "line": 71, @@ -3560,8 +3560,8 @@ }, "right": { "type": "ObjectExpression", - "start": 1778, - "end": 1817, + "start": 1780, + "end": 1819, "loc": { "start": { "line": 71, @@ -3575,8 +3575,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 1782, - "end": 1814, + "start": 1784, + "end": 1816, "loc": { "start": { "line": 72, @@ -3592,8 +3592,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 1782, - "end": 1797, + "start": 1784, + "end": 1799, "loc": { "start": { "line": 72, @@ -3609,8 +3609,8 @@ }, "value": { "type": "Identifier", - "start": 1799, - "end": 1814, + "start": 1801, + "end": 1816, "loc": { "start": { "line": 72, @@ -3755,8 +3755,8 @@ { "type": "CommentBlock", "value": "*\n * The validater for user config\n * See https://github.com/facebook/prop-types\n * @param {Object} [userConfig] User's config\n * @description Only console.warn\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @return {null}\n ", - "start": 1290, - "end": 1560, + "start": 1292, + "end": 1562, "loc": { "start": { "line": 56, @@ -5259,9 +5259,9 @@ "postfix": false, "binop": null }, - "value": "antialias", + "value": "superSample", "start": 565, - "end": 574, + "end": 576, "loc": { "start": { "line": 27, @@ -5269,7 +5269,7 @@ }, "end": { "line": 27, - "column": 13 + "column": 15 } } }, @@ -5286,16 +5286,16 @@ "binop": null, "updateContext": null }, - "start": 574, - "end": 575, + "start": 576, + "end": 577, "loc": { "start": { "line": 27, - "column": 13 + "column": 15 }, "end": { "line": 27, - "column": 14 + "column": 16 } } }, @@ -5312,16 +5312,16 @@ "binop": null }, "value": "PropTypes", - "start": 576, - "end": 585, + "start": 578, + "end": 587, "loc": { "start": { "line": 27, - "column": 15 + "column": 17 }, "end": { "line": 27, - "column": 24 + "column": 26 } } }, @@ -5338,16 +5338,16 @@ "binop": null, "updateContext": null }, - "start": 585, - "end": 586, + "start": 587, + "end": 588, "loc": { "start": { "line": 27, - "column": 24 + "column": 26 }, "end": { "line": 27, - "column": 25 + "column": 27 } } }, @@ -5364,16 +5364,16 @@ "binop": null }, "value": "number", - "start": 586, - "end": 592, + "start": 588, + "end": 594, "loc": { "start": { "line": 27, - "column": 25 + "column": 27 }, "end": { "line": 27, - "column": 31 + "column": 33 } } }, @@ -5390,16 +5390,16 @@ "binop": null, "updateContext": null }, - "start": 592, - "end": 593, + "start": 594, + "end": 595, "loc": { "start": { "line": 27, - "column": 31 + "column": 33 }, "end": { "line": 27, - "column": 32 + "column": 34 } } }, @@ -5416,8 +5416,8 @@ "binop": null }, "value": "width", - "start": 598, - "end": 603, + "start": 600, + "end": 605, "loc": { "start": { "line": 28, @@ -5442,8 +5442,8 @@ "binop": null, "updateContext": null }, - "start": 603, - "end": 604, + "start": 605, + "end": 606, "loc": { "start": { "line": 28, @@ -5468,8 +5468,8 @@ "binop": null }, "value": "PropTypes", - "start": 605, - "end": 614, + "start": 607, + "end": 616, "loc": { "start": { "line": 28, @@ -5494,8 +5494,8 @@ "binop": null, "updateContext": null }, - "start": 614, - "end": 615, + "start": 616, + "end": 617, "loc": { "start": { "line": 28, @@ -5520,8 +5520,8 @@ "binop": null }, "value": "number", - "start": 615, - "end": 621, + "start": 617, + "end": 623, "loc": { "start": { "line": 28, @@ -5546,8 +5546,8 @@ "binop": null, "updateContext": null }, - "start": 621, - "end": 622, + "start": 623, + "end": 624, "loc": { "start": { "line": 28, @@ -5572,8 +5572,8 @@ "binop": null }, "value": "height", - "start": 627, - "end": 633, + "start": 629, + "end": 635, "loc": { "start": { "line": 29, @@ -5598,8 +5598,8 @@ "binop": null, "updateContext": null }, - "start": 633, - "end": 634, + "start": 635, + "end": 636, "loc": { "start": { "line": 29, @@ -5624,8 +5624,8 @@ "binop": null }, "value": "PropTypes", - "start": 635, - "end": 644, + "start": 637, + "end": 646, "loc": { "start": { "line": 29, @@ -5650,8 +5650,8 @@ "binop": null, "updateContext": null }, - "start": 644, - "end": 645, + "start": 646, + "end": 647, "loc": { "start": { "line": 29, @@ -5676,8 +5676,8 @@ "binop": null }, "value": "number", - "start": 645, - "end": 651, + "start": 647, + "end": 653, "loc": { "start": { "line": 29, @@ -5702,8 +5702,8 @@ "binop": null, "updateContext": null }, - "start": 651, - "end": 652, + "start": 653, + "end": 654, "loc": { "start": { "line": 29, @@ -5728,8 +5728,8 @@ "binop": null }, "value": "scale", - "start": 657, - "end": 662, + "start": 659, + "end": 664, "loc": { "start": { "line": 30, @@ -5754,8 +5754,8 @@ "binop": null, "updateContext": null }, - "start": 662, - "end": 663, + "start": 664, + "end": 665, "loc": { "start": { "line": 30, @@ -5780,8 +5780,8 @@ "binop": null }, "value": "PropTypes", - "start": 664, - "end": 673, + "start": 666, + "end": 675, "loc": { "start": { "line": 30, @@ -5806,8 +5806,8 @@ "binop": null, "updateContext": null }, - "start": 673, - "end": 674, + "start": 675, + "end": 676, "loc": { "start": { "line": 30, @@ -5832,8 +5832,8 @@ "binop": null }, "value": "number", - "start": 674, - "end": 680, + "start": 676, + "end": 682, "loc": { "start": { "line": 30, @@ -5858,8 +5858,8 @@ "binop": null, "updateContext": null }, - "start": 680, - "end": 681, + "start": 682, + "end": 683, "loc": { "start": { "line": 30, @@ -5884,8 +5884,8 @@ "binop": null }, "value": "position", - "start": 686, - "end": 694, + "start": 688, + "end": 696, "loc": { "start": { "line": 31, @@ -5910,8 +5910,8 @@ "binop": null, "updateContext": null }, - "start": 694, - "end": 695, + "start": 696, + "end": 697, "loc": { "start": { "line": 31, @@ -5936,8 +5936,8 @@ "binop": null }, "value": "PropTypes", - "start": 696, - "end": 705, + "start": 698, + "end": 707, "loc": { "start": { "line": 31, @@ -5962,8 +5962,8 @@ "binop": null, "updateContext": null }, - "start": 705, - "end": 706, + "start": 707, + "end": 708, "loc": { "start": { "line": 31, @@ -5988,8 +5988,8 @@ "binop": null }, "value": "oneOf", - "start": 706, - "end": 711, + "start": 708, + "end": 713, "loc": { "start": { "line": 31, @@ -6013,8 +6013,8 @@ "postfix": false, "binop": null }, - "start": 711, - "end": 712, + "start": 713, + "end": 714, "loc": { "start": { "line": 31, @@ -6039,8 +6039,8 @@ "binop": null, "updateContext": null }, - "start": 712, - "end": 713, + "start": 714, + "end": 715, "loc": { "start": { "line": 31, @@ -6066,8 +6066,8 @@ "updateContext": null }, "value": "left", - "start": 713, - "end": 719, + "start": 715, + "end": 721, "loc": { "start": { "line": 31, @@ -6092,8 +6092,8 @@ "binop": null, "updateContext": null }, - "start": 719, - "end": 720, + "start": 721, + "end": 722, "loc": { "start": { "line": 31, @@ -6119,8 +6119,8 @@ "updateContext": null }, "value": "right", - "start": 721, - "end": 728, + "start": 723, + "end": 730, "loc": { "start": { "line": 31, @@ -6145,8 +6145,8 @@ "binop": null, "updateContext": null }, - "start": 728, - "end": 729, + "start": 730, + "end": 731, "loc": { "start": { "line": 31, @@ -6170,8 +6170,8 @@ "postfix": false, "binop": null }, - "start": 729, - "end": 730, + "start": 731, + "end": 732, "loc": { "start": { "line": 31, @@ -6196,8 +6196,8 @@ "binop": null, "updateContext": null }, - "start": 730, - "end": 731, + "start": 732, + "end": 733, "loc": { "start": { "line": 31, @@ -6222,8 +6222,8 @@ "binop": null }, "value": "hOffset", - "start": 736, - "end": 743, + "start": 738, + "end": 745, "loc": { "start": { "line": 32, @@ -6248,8 +6248,8 @@ "binop": null, "updateContext": null }, - "start": 743, - "end": 744, + "start": 745, + "end": 746, "loc": { "start": { "line": 32, @@ -6274,8 +6274,8 @@ "binop": null }, "value": "PropTypes", - "start": 745, - "end": 754, + "start": 747, + "end": 756, "loc": { "start": { "line": 32, @@ -6300,8 +6300,8 @@ "binop": null, "updateContext": null }, - "start": 754, - "end": 755, + "start": 756, + "end": 757, "loc": { "start": { "line": 32, @@ -6326,8 +6326,8 @@ "binop": null }, "value": "number", - "start": 755, - "end": 761, + "start": 757, + "end": 763, "loc": { "start": { "line": 32, @@ -6352,8 +6352,8 @@ "binop": null, "updateContext": null }, - "start": 761, - "end": 762, + "start": 763, + "end": 764, "loc": { "start": { "line": 32, @@ -6378,8 +6378,8 @@ "binop": null }, "value": "vOffset", - "start": 767, - "end": 774, + "start": 769, + "end": 776, "loc": { "start": { "line": 33, @@ -6404,8 +6404,8 @@ "binop": null, "updateContext": null }, - "start": 774, - "end": 775, + "start": 776, + "end": 777, "loc": { "start": { "line": 33, @@ -6430,8 +6430,8 @@ "binop": null }, "value": "PropTypes", - "start": 776, - "end": 785, + "start": 778, + "end": 787, "loc": { "start": { "line": 33, @@ -6456,8 +6456,8 @@ "binop": null, "updateContext": null }, - "start": 785, - "end": 786, + "start": 787, + "end": 788, "loc": { "start": { "line": 33, @@ -6482,8 +6482,8 @@ "binop": null }, "value": "number", - "start": 786, - "end": 792, + "start": 788, + "end": 794, "loc": { "start": { "line": 33, @@ -6508,8 +6508,8 @@ "binop": null, "updateContext": null }, - "start": 792, - "end": 793, + "start": 794, + "end": 795, "loc": { "start": { "line": 33, @@ -6533,8 +6533,8 @@ "postfix": false, "binop": null }, - "start": 796, - "end": 797, + "start": 798, + "end": 799, "loc": { "start": { "line": 34, @@ -6558,8 +6558,8 @@ "postfix": false, "binop": null }, - "start": 797, - "end": 798, + "start": 799, + "end": 800, "loc": { "start": { "line": 34, @@ -6584,8 +6584,8 @@ "binop": null, "updateContext": null }, - "start": 798, - "end": 799, + "start": 800, + "end": 801, "loc": { "start": { "line": 34, @@ -6610,8 +6610,8 @@ "binop": null }, "value": "mobile", - "start": 802, - "end": 808, + "start": 804, + "end": 810, "loc": { "start": { "line": 35, @@ -6636,8 +6636,8 @@ "binop": null, "updateContext": null }, - "start": 808, - "end": 809, + "start": 810, + "end": 811, "loc": { "start": { "line": 35, @@ -6662,8 +6662,8 @@ "binop": null }, "value": "PropTypes", - "start": 810, - "end": 819, + "start": 812, + "end": 821, "loc": { "start": { "line": 35, @@ -6688,8 +6688,8 @@ "binop": null, "updateContext": null }, - "start": 819, - "end": 820, + "start": 821, + "end": 822, "loc": { "start": { "line": 35, @@ -6714,8 +6714,8 @@ "binop": null }, "value": "shape", - "start": 820, - "end": 825, + "start": 822, + "end": 827, "loc": { "start": { "line": 35, @@ -6739,8 +6739,8 @@ "postfix": false, "binop": null }, - "start": 825, - "end": 826, + "start": 827, + "end": 828, "loc": { "start": { "line": 35, @@ -6764,8 +6764,8 @@ "postfix": false, "binop": null }, - "start": 826, - "end": 827, + "start": 828, + "end": 829, "loc": { "start": { "line": 35, @@ -6790,8 +6790,8 @@ "binop": null }, "value": "show", - "start": 832, - "end": 836, + "start": 834, + "end": 838, "loc": { "start": { "line": 36, @@ -6816,8 +6816,8 @@ "binop": null, "updateContext": null }, - "start": 836, - "end": 837, + "start": 838, + "end": 839, "loc": { "start": { "line": 36, @@ -6842,8 +6842,8 @@ "binop": null }, "value": "PropTypes", - "start": 838, - "end": 847, + "start": 840, + "end": 849, "loc": { "start": { "line": 36, @@ -6868,8 +6868,8 @@ "binop": null, "updateContext": null }, - "start": 847, - "end": 848, + "start": 849, + "end": 850, "loc": { "start": { "line": 36, @@ -6894,8 +6894,8 @@ "binop": null }, "value": "bool", - "start": 848, - "end": 852, + "start": 850, + "end": 854, "loc": { "start": { "line": 36, @@ -6920,8 +6920,8 @@ "binop": null, "updateContext": null }, - "start": 852, - "end": 853, + "start": 854, + "end": 855, "loc": { "start": { "line": 36, @@ -6946,8 +6946,8 @@ "binop": null }, "value": "scale", - "start": 858, - "end": 863, + "start": 860, + "end": 865, "loc": { "start": { "line": 37, @@ -6972,8 +6972,8 @@ "binop": null, "updateContext": null }, - "start": 863, - "end": 864, + "start": 865, + "end": 866, "loc": { "start": { "line": 37, @@ -6998,8 +6998,8 @@ "binop": null }, "value": "PropTypes", - "start": 865, - "end": 874, + "start": 867, + "end": 876, "loc": { "start": { "line": 37, @@ -7024,8 +7024,8 @@ "binop": null, "updateContext": null }, - "start": 874, - "end": 875, + "start": 876, + "end": 877, "loc": { "start": { "line": 37, @@ -7050,8 +7050,8 @@ "binop": null }, "value": "number", - "start": 875, - "end": 881, + "start": 877, + "end": 883, "loc": { "start": { "line": 37, @@ -7076,8 +7076,8 @@ "binop": null, "updateContext": null }, - "start": 881, - "end": 882, + "start": 883, + "end": 884, "loc": { "start": { "line": 37, @@ -7102,8 +7102,8 @@ "binop": null }, "value": "motion", - "start": 887, - "end": 893, + "start": 889, + "end": 895, "loc": { "start": { "line": 38, @@ -7128,8 +7128,8 @@ "binop": null, "updateContext": null }, - "start": 893, - "end": 894, + "start": 895, + "end": 896, "loc": { "start": { "line": 38, @@ -7154,8 +7154,8 @@ "binop": null }, "value": "PropTypes", - "start": 895, - "end": 904, + "start": 897, + "end": 906, "loc": { "start": { "line": 38, @@ -7180,8 +7180,8 @@ "binop": null, "updateContext": null }, - "start": 904, - "end": 905, + "start": 906, + "end": 907, "loc": { "start": { "line": 38, @@ -7206,8 +7206,8 @@ "binop": null }, "value": "bool", - "start": 905, - "end": 909, + "start": 907, + "end": 911, "loc": { "start": { "line": 38, @@ -7232,8 +7232,8 @@ "binop": null, "updateContext": null }, - "start": 909, - "end": 910, + "start": 911, + "end": 912, "loc": { "start": { "line": 38, @@ -7257,8 +7257,8 @@ "postfix": false, "binop": null }, - "start": 913, - "end": 914, + "start": 915, + "end": 916, "loc": { "start": { "line": 39, @@ -7282,8 +7282,8 @@ "postfix": false, "binop": null }, - "start": 914, - "end": 915, + "start": 916, + "end": 917, "loc": { "start": { "line": 39, @@ -7308,8 +7308,8 @@ "binop": null, "updateContext": null }, - "start": 915, - "end": 916, + "start": 917, + "end": 918, "loc": { "start": { "line": 39, @@ -7334,8 +7334,8 @@ "binop": null }, "value": "name", - "start": 919, - "end": 923, + "start": 921, + "end": 925, "loc": { "start": { "line": 40, @@ -7360,8 +7360,8 @@ "binop": null, "updateContext": null }, - "start": 923, - "end": 924, + "start": 925, + "end": 926, "loc": { "start": { "line": 40, @@ -7386,8 +7386,8 @@ "binop": null }, "value": "PropTypes", - "start": 925, - "end": 934, + "start": 927, + "end": 936, "loc": { "start": { "line": 40, @@ -7412,8 +7412,8 @@ "binop": null, "updateContext": null }, - "start": 934, - "end": 935, + "start": 936, + "end": 937, "loc": { "start": { "line": 40, @@ -7438,8 +7438,8 @@ "binop": null }, "value": "shape", - "start": 935, - "end": 940, + "start": 937, + "end": 942, "loc": { "start": { "line": 40, @@ -7463,8 +7463,8 @@ "postfix": false, "binop": null }, - "start": 940, - "end": 941, + "start": 942, + "end": 943, "loc": { "start": { "line": 40, @@ -7488,8 +7488,8 @@ "postfix": false, "binop": null }, - "start": 941, - "end": 942, + "start": 943, + "end": 944, "loc": { "start": { "line": 40, @@ -7514,8 +7514,8 @@ "binop": null }, "value": "canvas", - "start": 947, - "end": 953, + "start": 949, + "end": 955, "loc": { "start": { "line": 41, @@ -7540,8 +7540,8 @@ "binop": null, "updateContext": null }, - "start": 953, - "end": 954, + "start": 955, + "end": 956, "loc": { "start": { "line": 41, @@ -7566,8 +7566,8 @@ "binop": null }, "value": "PropTypes", - "start": 955, - "end": 964, + "start": 957, + "end": 966, "loc": { "start": { "line": 41, @@ -7592,8 +7592,8 @@ "binop": null, "updateContext": null }, - "start": 964, - "end": 965, + "start": 966, + "end": 967, "loc": { "start": { "line": 41, @@ -7618,8 +7618,8 @@ "binop": null }, "value": "string", - "start": 965, - "end": 971, + "start": 967, + "end": 973, "loc": { "start": { "line": 41, @@ -7644,8 +7644,8 @@ "binop": null, "updateContext": null }, - "start": 971, - "end": 972, + "start": 973, + "end": 974, "loc": { "start": { "line": 41, @@ -7670,8 +7670,8 @@ "binop": null }, "value": "div", - "start": 977, - "end": 980, + "start": 979, + "end": 982, "loc": { "start": { "line": 42, @@ -7696,8 +7696,8 @@ "binop": null, "updateContext": null }, - "start": 980, - "end": 981, + "start": 982, + "end": 983, "loc": { "start": { "line": 42, @@ -7722,8 +7722,8 @@ "binop": null }, "value": "PropTypes", - "start": 982, - "end": 991, + "start": 984, + "end": 993, "loc": { "start": { "line": 42, @@ -7748,8 +7748,8 @@ "binop": null, "updateContext": null }, - "start": 991, - "end": 992, + "start": 993, + "end": 994, "loc": { "start": { "line": 42, @@ -7774,8 +7774,8 @@ "binop": null }, "value": "string", - "start": 992, - "end": 998, + "start": 994, + "end": 1000, "loc": { "start": { "line": 42, @@ -7800,8 +7800,8 @@ "binop": null, "updateContext": null }, - "start": 998, - "end": 999, + "start": 1000, + "end": 1001, "loc": { "start": { "line": 42, @@ -7825,8 +7825,8 @@ "postfix": false, "binop": null }, - "start": 1002, - "end": 1003, + "start": 1004, + "end": 1005, "loc": { "start": { "line": 43, @@ -7850,8 +7850,8 @@ "postfix": false, "binop": null }, - "start": 1003, - "end": 1004, + "start": 1005, + "end": 1006, "loc": { "start": { "line": 43, @@ -7876,8 +7876,8 @@ "binop": null, "updateContext": null }, - "start": 1004, - "end": 1005, + "start": 1006, + "end": 1007, "loc": { "start": { "line": 43, @@ -7902,8 +7902,8 @@ "binop": null }, "value": "react", - "start": 1008, - "end": 1013, + "start": 1010, + "end": 1015, "loc": { "start": { "line": 44, @@ -7928,8 +7928,8 @@ "binop": null, "updateContext": null }, - "start": 1013, - "end": 1014, + "start": 1015, + "end": 1016, "loc": { "start": { "line": 44, @@ -7954,8 +7954,8 @@ "binop": null }, "value": "PropTypes", - "start": 1015, - "end": 1024, + "start": 1017, + "end": 1026, "loc": { "start": { "line": 44, @@ -7980,8 +7980,8 @@ "binop": null, "updateContext": null }, - "start": 1024, - "end": 1025, + "start": 1026, + "end": 1027, "loc": { "start": { "line": 44, @@ -8006,8 +8006,8 @@ "binop": null }, "value": "shape", - "start": 1025, - "end": 1030, + "start": 1027, + "end": 1032, "loc": { "start": { "line": 44, @@ -8031,8 +8031,8 @@ "postfix": false, "binop": null }, - "start": 1030, - "end": 1031, + "start": 1032, + "end": 1033, "loc": { "start": { "line": 44, @@ -8056,8 +8056,8 @@ "postfix": false, "binop": null }, - "start": 1031, - "end": 1032, + "start": 1033, + "end": 1034, "loc": { "start": { "line": 44, @@ -8082,8 +8082,8 @@ "binop": null }, "value": "opacityDefault", - "start": 1037, - "end": 1051, + "start": 1039, + "end": 1053, "loc": { "start": { "line": 45, @@ -8108,8 +8108,8 @@ "binop": null, "updateContext": null }, - "start": 1051, - "end": 1052, + "start": 1053, + "end": 1054, "loc": { "start": { "line": 45, @@ -8134,8 +8134,8 @@ "binop": null }, "value": "PropTypes", - "start": 1053, - "end": 1062, + "start": 1055, + "end": 1064, "loc": { "start": { "line": 45, @@ -8160,8 +8160,8 @@ "binop": null, "updateContext": null }, - "start": 1062, - "end": 1063, + "start": 1064, + "end": 1065, "loc": { "start": { "line": 45, @@ -8186,8 +8186,8 @@ "binop": null }, "value": "number", - "start": 1063, - "end": 1069, + "start": 1065, + "end": 1071, "loc": { "start": { "line": 45, @@ -8212,8 +8212,8 @@ "binop": null, "updateContext": null }, - "start": 1069, - "end": 1070, + "start": 1071, + "end": 1072, "loc": { "start": { "line": 45, @@ -8238,8 +8238,8 @@ "binop": null }, "value": "opacityOnHover", - "start": 1075, - "end": 1089, + "start": 1077, + "end": 1091, "loc": { "start": { "line": 46, @@ -8264,8 +8264,8 @@ "binop": null, "updateContext": null }, - "start": 1089, - "end": 1090, + "start": 1091, + "end": 1092, "loc": { "start": { "line": 46, @@ -8290,8 +8290,8 @@ "binop": null }, "value": "PropTypes", - "start": 1091, - "end": 1100, + "start": 1093, + "end": 1102, "loc": { "start": { "line": 46, @@ -8316,8 +8316,8 @@ "binop": null, "updateContext": null }, - "start": 1100, - "end": 1101, + "start": 1102, + "end": 1103, "loc": { "start": { "line": 46, @@ -8342,8 +8342,8 @@ "binop": null }, "value": "number", - "start": 1101, - "end": 1107, + "start": 1103, + "end": 1109, "loc": { "start": { "line": 46, @@ -8368,8 +8368,8 @@ "binop": null, "updateContext": null }, - "start": 1107, - "end": 1108, + "start": 1109, + "end": 1110, "loc": { "start": { "line": 46, @@ -8394,8 +8394,8 @@ "binop": null }, "value": "myFunc", - "start": 1113, - "end": 1119, + "start": 1115, + "end": 1121, "loc": { "start": { "line": 47, @@ -8420,8 +8420,8 @@ "binop": null, "updateContext": null }, - "start": 1119, - "end": 1120, + "start": 1121, + "end": 1122, "loc": { "start": { "line": 47, @@ -8446,8 +8446,8 @@ "binop": null }, "value": "PropTypes", - "start": 1121, - "end": 1130, + "start": 1123, + "end": 1132, "loc": { "start": { "line": 47, @@ -8472,8 +8472,8 @@ "binop": null, "updateContext": null }, - "start": 1130, - "end": 1131, + "start": 1132, + "end": 1133, "loc": { "start": { "line": 47, @@ -8498,8 +8498,8 @@ "binop": null }, "value": "func", - "start": 1131, - "end": 1135, + "start": 1133, + "end": 1137, "loc": { "start": { "line": 47, @@ -8524,8 +8524,8 @@ "binop": null, "updateContext": null }, - "start": 1135, - "end": 1136, + "start": 1137, + "end": 1138, "loc": { "start": { "line": 47, @@ -8549,8 +8549,8 @@ "postfix": false, "binop": null }, - "start": 1139, - "end": 1140, + "start": 1141, + "end": 1142, "loc": { "start": { "line": 48, @@ -8574,8 +8574,8 @@ "postfix": false, "binop": null }, - "start": 1140, - "end": 1141, + "start": 1142, + "end": 1143, "loc": { "start": { "line": 48, @@ -8600,8 +8600,8 @@ "binop": null, "updateContext": null }, - "start": 1141, - "end": 1142, + "start": 1143, + "end": 1144, "loc": { "start": { "line": 48, @@ -8626,8 +8626,8 @@ "binop": null }, "value": "dev", - "start": 1145, - "end": 1148, + "start": 1147, + "end": 1150, "loc": { "start": { "line": 49, @@ -8652,8 +8652,8 @@ "binop": null, "updateContext": null }, - "start": 1148, - "end": 1149, + "start": 1150, + "end": 1151, "loc": { "start": { "line": 49, @@ -8678,8 +8678,8 @@ "binop": null }, "value": "PropTypes", - "start": 1150, - "end": 1159, + "start": 1152, + "end": 1161, "loc": { "start": { "line": 49, @@ -8704,8 +8704,8 @@ "binop": null, "updateContext": null }, - "start": 1159, - "end": 1160, + "start": 1161, + "end": 1162, "loc": { "start": { "line": 49, @@ -8730,8 +8730,8 @@ "binop": null }, "value": "shape", - "start": 1160, - "end": 1165, + "start": 1162, + "end": 1167, "loc": { "start": { "line": 49, @@ -8755,8 +8755,8 @@ "postfix": false, "binop": null }, - "start": 1165, - "end": 1166, + "start": 1167, + "end": 1168, "loc": { "start": { "line": 49, @@ -8780,8 +8780,8 @@ "postfix": false, "binop": null }, - "start": 1166, - "end": 1167, + "start": 1168, + "end": 1169, "loc": { "start": { "line": 49, @@ -8806,8 +8806,8 @@ "binop": null }, "value": "log", - "start": 1172, - "end": 1175, + "start": 1174, + "end": 1177, "loc": { "start": { "line": 50, @@ -8832,8 +8832,8 @@ "binop": null, "updateContext": null }, - "start": 1175, - "end": 1176, + "start": 1177, + "end": 1178, "loc": { "start": { "line": 50, @@ -8858,8 +8858,8 @@ "binop": null }, "value": "PropTypes", - "start": 1177, - "end": 1186, + "start": 1179, + "end": 1188, "loc": { "start": { "line": 50, @@ -8884,8 +8884,8 @@ "binop": null, "updateContext": null }, - "start": 1186, - "end": 1187, + "start": 1188, + "end": 1189, "loc": { "start": { "line": 50, @@ -8910,8 +8910,8 @@ "binop": null }, "value": "bool", - "start": 1187, - "end": 1191, + "start": 1189, + "end": 1193, "loc": { "start": { "line": 50, @@ -8936,8 +8936,8 @@ "binop": null, "updateContext": null }, - "start": 1191, - "end": 1192, + "start": 1193, + "end": 1194, "loc": { "start": { "line": 50, @@ -8962,8 +8962,8 @@ "binop": null }, "value": "border", - "start": 1197, - "end": 1203, + "start": 1199, + "end": 1205, "loc": { "start": { "line": 51, @@ -8988,8 +8988,8 @@ "binop": null, "updateContext": null }, - "start": 1203, - "end": 1204, + "start": 1205, + "end": 1206, "loc": { "start": { "line": 51, @@ -9014,8 +9014,8 @@ "binop": null }, "value": "PropTypes", - "start": 1205, - "end": 1214, + "start": 1207, + "end": 1216, "loc": { "start": { "line": 51, @@ -9040,8 +9040,8 @@ "binop": null, "updateContext": null }, - "start": 1214, - "end": 1215, + "start": 1216, + "end": 1217, "loc": { "start": { "line": 51, @@ -9066,8 +9066,8 @@ "binop": null }, "value": "bool", - "start": 1215, - "end": 1219, + "start": 1217, + "end": 1221, "loc": { "start": { "line": 51, @@ -9092,8 +9092,8 @@ "binop": null, "updateContext": null }, - "start": 1219, - "end": 1220, + "start": 1221, + "end": 1222, "loc": { "start": { "line": 51, @@ -9118,8 +9118,8 @@ "binop": null }, "value": "mouseLog", - "start": 1225, - "end": 1233, + "start": 1227, + "end": 1235, "loc": { "start": { "line": 52, @@ -9144,8 +9144,8 @@ "binop": null, "updateContext": null }, - "start": 1233, - "end": 1234, + "start": 1235, + "end": 1236, "loc": { "start": { "line": 52, @@ -9170,8 +9170,8 @@ "binop": null }, "value": "PropTypes", - "start": 1235, - "end": 1244, + "start": 1237, + "end": 1246, "loc": { "start": { "line": 52, @@ -9196,8 +9196,8 @@ "binop": null, "updateContext": null }, - "start": 1244, - "end": 1245, + "start": 1246, + "end": 1247, "loc": { "start": { "line": 52, @@ -9222,8 +9222,8 @@ "binop": null }, "value": "bool", - "start": 1245, - "end": 1249, + "start": 1247, + "end": 1251, "loc": { "start": { "line": 52, @@ -9248,8 +9248,8 @@ "binop": null, "updateContext": null }, - "start": 1249, - "end": 1250, + "start": 1251, + "end": 1252, "loc": { "start": { "line": 52, @@ -9274,8 +9274,8 @@ "binop": null }, "value": "mouseFunc", - "start": 1255, - "end": 1264, + "start": 1257, + "end": 1266, "loc": { "start": { "line": 53, @@ -9300,8 +9300,8 @@ "binop": null, "updateContext": null }, - "start": 1264, - "end": 1265, + "start": 1266, + "end": 1267, "loc": { "start": { "line": 53, @@ -9326,8 +9326,8 @@ "binop": null }, "value": "PropTypes", - "start": 1266, - "end": 1275, + "start": 1268, + "end": 1277, "loc": { "start": { "line": 53, @@ -9352,8 +9352,8 @@ "binop": null, "updateContext": null }, - "start": 1275, - "end": 1276, + "start": 1277, + "end": 1278, "loc": { "start": { "line": 53, @@ -9378,8 +9378,8 @@ "binop": null }, "value": "func", - "start": 1276, - "end": 1280, + "start": 1278, + "end": 1282, "loc": { "start": { "line": 53, @@ -9404,8 +9404,8 @@ "binop": null, "updateContext": null }, - "start": 1280, - "end": 1281, + "start": 1282, + "end": 1283, "loc": { "start": { "line": 53, @@ -9429,8 +9429,8 @@ "postfix": false, "binop": null }, - "start": 1284, - "end": 1285, + "start": 1286, + "end": 1287, "loc": { "start": { "line": 54, @@ -9454,8 +9454,8 @@ "postfix": false, "binop": null }, - "start": 1285, - "end": 1286, + "start": 1287, + "end": 1288, "loc": { "start": { "line": 54, @@ -9480,8 +9480,8 @@ "binop": null, "updateContext": null }, - "start": 1286, - "end": 1287, + "start": 1288, + "end": 1289, "loc": { "start": { "line": 54, @@ -9505,8 +9505,8 @@ "postfix": false, "binop": null }, - "start": 1288, - "end": 1289, + "start": 1290, + "end": 1291, "loc": { "start": { "line": 55, @@ -9521,8 +9521,8 @@ { "type": "CommentBlock", "value": "*\n * The validater for user config\n * See https://github.com/facebook/prop-types\n * @param {Object} [userConfig] User's config\n * @description Only console.warn\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @return {null}\n ", - "start": 1290, - "end": 1560, + "start": 1292, + "end": 1562, "loc": { "start": { "line": 56, @@ -9548,8 +9548,8 @@ "binop": null }, "value": "function", - "start": 1562, - "end": 1570, + "start": 1564, + "end": 1572, "loc": { "start": { "line": 65, @@ -9574,8 +9574,8 @@ "binop": null }, "value": "configValidater", - "start": 1571, - "end": 1586, + "start": 1573, + "end": 1588, "loc": { "start": { "line": 65, @@ -9599,8 +9599,8 @@ "postfix": false, "binop": null }, - "start": 1586, - "end": 1587, + "start": 1588, + "end": 1589, "loc": { "start": { "line": 65, @@ -9625,8 +9625,8 @@ "binop": null }, "value": "userConfig", - "start": 1587, - "end": 1597, + "start": 1589, + "end": 1599, "loc": { "start": { "line": 65, @@ -9650,8 +9650,8 @@ "postfix": false, "binop": null }, - "start": 1597, - "end": 1598, + "start": 1599, + "end": 1600, "loc": { "start": { "line": 65, @@ -9675,8 +9675,8 @@ "postfix": false, "binop": null }, - "start": 1598, - "end": 1599, + "start": 1600, + "end": 1601, "loc": { "start": { "line": 65, @@ -9701,8 +9701,8 @@ "binop": null }, "value": "PropTypes", - "start": 1602, - "end": 1611, + "start": 1604, + "end": 1613, "loc": { "start": { "line": 66, @@ -9727,8 +9727,8 @@ "binop": null, "updateContext": null }, - "start": 1611, - "end": 1612, + "start": 1613, + "end": 1614, "loc": { "start": { "line": 66, @@ -9753,8 +9753,8 @@ "binop": null }, "value": "checkPropTypes", - "start": 1612, - "end": 1626, + "start": 1614, + "end": 1628, "loc": { "start": { "line": 66, @@ -9778,8 +9778,8 @@ "postfix": false, "binop": null }, - "start": 1626, - "end": 1627, + "start": 1628, + "end": 1629, "loc": { "start": { "line": 66, @@ -9804,8 +9804,8 @@ "binop": null }, "value": "configPropTypes", - "start": 1627, - "end": 1642, + "start": 1629, + "end": 1644, "loc": { "start": { "line": 66, @@ -9830,8 +9830,8 @@ "binop": null, "updateContext": null }, - "start": 1642, - "end": 1643, + "start": 1644, + "end": 1645, "loc": { "start": { "line": 66, @@ -9856,8 +9856,8 @@ "binop": null }, "value": "userConfig", - "start": 1644, - "end": 1654, + "start": 1646, + "end": 1656, "loc": { "start": { "line": 66, @@ -9882,8 +9882,8 @@ "binop": null, "updateContext": null }, - "start": 1654, - "end": 1655, + "start": 1656, + "end": 1657, "loc": { "start": { "line": 66, @@ -9909,8 +9909,8 @@ "updateContext": null }, "value": "config", - "start": 1656, - "end": 1664, + "start": 1658, + "end": 1666, "loc": { "start": { "line": 66, @@ -9935,8 +9935,8 @@ "binop": null, "updateContext": null }, - "start": 1664, - "end": 1665, + "start": 1666, + "end": 1667, "loc": { "start": { "line": 66, @@ -9962,8 +9962,8 @@ "updateContext": null }, "value": "Live2D-widget", - "start": 1666, - "end": 1681, + "start": 1668, + "end": 1683, "loc": { "start": { "line": 66, @@ -9987,8 +9987,8 @@ "postfix": false, "binop": null }, - "start": 1681, - "end": 1682, + "start": 1683, + "end": 1684, "loc": { "start": { "line": 66, @@ -10013,8 +10013,8 @@ "binop": null, "updateContext": null }, - "start": 1682, - "end": 1683, + "start": 1684, + "end": 1685, "loc": { "start": { "line": 66, @@ -10038,8 +10038,8 @@ "postfix": false, "binop": null }, - "start": 1684, - "end": 1685, + "start": 1686, + "end": 1687, "loc": { "start": { "line": 67, @@ -10066,8 +10066,8 @@ "updateContext": null }, "value": "if", - "start": 1687, - "end": 1689, + "start": 1689, + "end": 1691, "loc": { "start": { "line": 69, @@ -10091,8 +10091,8 @@ "postfix": false, "binop": null }, - "start": 1690, - "end": 1691, + "start": 1692, + "end": 1693, "loc": { "start": { "line": 69, @@ -10117,8 +10117,8 @@ "binop": null }, "value": "process", - "start": 1691, - "end": 1698, + "start": 1693, + "end": 1700, "loc": { "start": { "line": 69, @@ -10143,8 +10143,8 @@ "binop": null, "updateContext": null }, - "start": 1698, - "end": 1699, + "start": 1700, + "end": 1701, "loc": { "start": { "line": 69, @@ -10169,8 +10169,8 @@ "binop": null }, "value": "env", - "start": 1699, - "end": 1702, + "start": 1701, + "end": 1704, "loc": { "start": { "line": 69, @@ -10195,8 +10195,8 @@ "binop": null, "updateContext": null }, - "start": 1702, - "end": 1703, + "start": 1704, + "end": 1705, "loc": { "start": { "line": 69, @@ -10221,8 +10221,8 @@ "binop": null }, "value": "NODE_ENV", - "start": 1703, - "end": 1711, + "start": 1705, + "end": 1713, "loc": { "start": { "line": 69, @@ -10248,8 +10248,8 @@ "updateContext": null }, "value": "===", - "start": 1712, - "end": 1715, + "start": 1714, + "end": 1717, "loc": { "start": { "line": 69, @@ -10275,8 +10275,8 @@ "updateContext": null }, "value": "development", - "start": 1716, - "end": 1729, + "start": 1718, + "end": 1731, "loc": { "start": { "line": 69, @@ -10300,8 +10300,8 @@ "postfix": false, "binop": null }, - "start": 1729, - "end": 1730, + "start": 1731, + "end": 1732, "loc": { "start": { "line": 69, @@ -10326,8 +10326,8 @@ "binop": null }, "value": "window", - "start": 1731, - "end": 1737, + "start": 1733, + "end": 1739, "loc": { "start": { "line": 69, @@ -10352,8 +10352,8 @@ "binop": null, "updateContext": null }, - "start": 1737, - "end": 1738, + "start": 1739, + "end": 1740, "loc": { "start": { "line": 69, @@ -10378,8 +10378,8 @@ "binop": null }, "value": "cV", - "start": 1738, - "end": 1740, + "start": 1740, + "end": 1742, "loc": { "start": { "line": 69, @@ -10405,8 +10405,8 @@ "updateContext": null }, "value": "=", - "start": 1741, - "end": 1742, + "start": 1743, + "end": 1744, "loc": { "start": { "line": 69, @@ -10431,8 +10431,8 @@ "binop": null }, "value": "configValidater", - "start": 1743, - "end": 1758, + "start": 1745, + "end": 1760, "loc": { "start": { "line": 69, @@ -10457,8 +10457,8 @@ "binop": null, "updateContext": null }, - "start": 1758, - "end": 1759, + "start": 1760, + "end": 1761, "loc": { "start": { "line": 69, @@ -10483,8 +10483,8 @@ "binop": null }, "value": "module", - "start": 1761, - "end": 1767, + "start": 1763, + "end": 1769, "loc": { "start": { "line": 71, @@ -10509,8 +10509,8 @@ "binop": null, "updateContext": null }, - "start": 1767, - "end": 1768, + "start": 1769, + "end": 1770, "loc": { "start": { "line": 71, @@ -10535,8 +10535,8 @@ "binop": null }, "value": "exports", - "start": 1768, - "end": 1775, + "start": 1770, + "end": 1777, "loc": { "start": { "line": 71, @@ -10562,8 +10562,8 @@ "updateContext": null }, "value": "=", - "start": 1776, - "end": 1777, + "start": 1778, + "end": 1779, "loc": { "start": { "line": 71, @@ -10587,8 +10587,8 @@ "postfix": false, "binop": null }, - "start": 1778, - "end": 1779, + "start": 1780, + "end": 1781, "loc": { "start": { "line": 71, @@ -10613,8 +10613,8 @@ "binop": null }, "value": "configValidater", - "start": 1782, - "end": 1797, + "start": 1784, + "end": 1799, "loc": { "start": { "line": 72, @@ -10639,8 +10639,8 @@ "binop": null, "updateContext": null }, - "start": 1797, - "end": 1798, + "start": 1799, + "end": 1800, "loc": { "start": { "line": 72, @@ -10665,8 +10665,8 @@ "binop": null }, "value": "configValidater", - "start": 1799, - "end": 1814, + "start": 1801, + "end": 1816, "loc": { "start": { "line": 72, @@ -10691,8 +10691,8 @@ "binop": null, "updateContext": null }, - "start": 1814, - "end": 1815, + "start": 1816, + "end": 1817, "loc": { "start": { "line": 72, @@ -10716,8 +10716,8 @@ "postfix": false, "binop": null }, - "start": 1816, - "end": 1817, + "start": 1818, + "end": 1819, "loc": { "start": { "line": 73, @@ -10742,8 +10742,8 @@ "binop": null, "updateContext": null }, - "start": 1818, - "end": 1818, + "start": 1820, + "end": 1820, "loc": { "start": { "line": 74, diff --git a/ghpages/docs/ast/source/elementMgr.js.json b/ghpages/docs/ast/source/elementMgr.js.json index 8f9210e..670c620 100644 --- a/ghpages/docs/ast/source/elementMgr.js.json +++ b/ghpages/docs/ast/source/elementMgr.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 2604, + "end": 2608, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 2604, + "end": 2608, "loc": { "start": { "line": 1, @@ -352,7 +352,7 @@ { "type": "Identifier", "start": 424, - "end": 1780, + "end": 1784, "loc": { "start": { "line": 28, @@ -388,7 +388,7 @@ "body": { "type": "BlockStatement", "start": 448, - "end": 1780, + "end": 1784, "loc": { "start": { "line": 28, @@ -1538,7 +1538,7 @@ { "type": "ExpressionStatement", "start": 795, - "end": 880, + "end": 882, "loc": { "start": { "line": 40, @@ -1546,13 +1546,13 @@ }, "end": { "line": 40, - "column": 89 + "column": 91 } }, "expression": { "type": "CallExpression", "start": 795, - "end": 879, + "end": 881, "loc": { "start": { "line": 40, @@ -1560,7 +1560,7 @@ }, "end": { "line": 40, - "column": 88 + "column": 90 } }, "callee": { @@ -1637,7 +1637,7 @@ { "type": "BinaryExpression", "start": 831, - "end": 878, + "end": 880, "loc": { "start": { "line": 40, @@ -1645,7 +1645,7 @@ }, "end": { "line": 40, - "column": 87 + "column": 89 } }, "left": { @@ -1735,7 +1735,7 @@ "right": { "type": "MemberExpression", "start": 854, - "end": 878, + "end": 880, "loc": { "start": { "line": 40, @@ -1743,7 +1743,7 @@ }, "end": { "line": 40, - "column": 87 + "column": 89 } }, "object": { @@ -1799,7 +1799,7 @@ "property": { "type": "Identifier", "start": 869, - "end": 878, + "end": 880, "loc": { "start": { "line": 40, @@ -1807,11 +1807,11 @@ }, "end": { "line": 40, - "column": 87 + "column": 89 }, - "identifierName": "antialias" + "identifierName": "superSample" }, - "name": "antialias" + "name": "superSample" }, "computed": false } @@ -1821,8 +1821,8 @@ }, { "type": "ExpressionStatement", - "start": 885, - "end": 972, + "start": 887, + "end": 976, "loc": { "start": { "line": 41, @@ -1830,13 +1830,13 @@ }, "end": { "line": 41, - "column": 91 + "column": 93 } }, "expression": { "type": "CallExpression", - "start": 885, - "end": 971, + "start": 887, + "end": 975, "loc": { "start": { "line": 41, @@ -1844,13 +1844,13 @@ }, "end": { "line": 41, - "column": 90 + "column": 92 } }, "callee": { "type": "MemberExpression", - "start": 885, - "end": 911, + "start": 887, + "end": 913, "loc": { "start": { "line": 41, @@ -1863,8 +1863,8 @@ }, "object": { "type": "Identifier", - "start": 885, - "end": 898, + "start": 887, + "end": 900, "loc": { "start": { "line": 41, @@ -1880,8 +1880,8 @@ }, "property": { "type": "Identifier", - "start": 899, - "end": 911, + "start": 901, + "end": 913, "loc": { "start": { "line": 41, @@ -1900,8 +1900,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 912, - "end": 920, + "start": 914, + "end": 922, "loc": { "start": { "line": 41, @@ -1920,8 +1920,8 @@ }, { "type": "BinaryExpression", - "start": 922, - "end": 970, + "start": 924, + "end": 974, "loc": { "start": { "line": 41, @@ -1929,13 +1929,13 @@ }, "end": { "line": 41, - "column": 89 + "column": 91 } }, "left": { "type": "MemberExpression", - "start": 922, - "end": 943, + "start": 924, + "end": 945, "loc": { "start": { "line": 41, @@ -1948,8 +1948,8 @@ }, "object": { "type": "MemberExpression", - "start": 922, - "end": 936, + "start": 924, + "end": 938, "loc": { "start": { "line": 41, @@ -1962,8 +1962,8 @@ }, "object": { "type": "Identifier", - "start": 922, - "end": 928, + "start": 924, + "end": 930, "loc": { "start": { "line": 41, @@ -1979,8 +1979,8 @@ }, "property": { "type": "Identifier", - "start": 929, - "end": 936, + "start": 931, + "end": 938, "loc": { "start": { "line": 41, @@ -1998,8 +1998,8 @@ }, "property": { "type": "Identifier", - "start": 937, - "end": 943, + "start": 939, + "end": 945, "loc": { "start": { "line": 41, @@ -2018,8 +2018,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 946, - "end": 970, + "start": 948, + "end": 974, "loc": { "start": { "line": 41, @@ -2027,13 +2027,13 @@ }, "end": { "line": 41, - "column": 89 + "column": 91 } }, "object": { "type": "MemberExpression", - "start": 946, - "end": 960, + "start": 948, + "end": 962, "loc": { "start": { "line": 41, @@ -2046,8 +2046,8 @@ }, "object": { "type": "Identifier", - "start": 946, - "end": 952, + "start": 948, + "end": 954, "loc": { "start": { "line": 41, @@ -2063,8 +2063,8 @@ }, "property": { "type": "Identifier", - "start": 953, - "end": 960, + "start": 955, + "end": 962, "loc": { "start": { "line": 41, @@ -2082,8 +2082,8 @@ }, "property": { "type": "Identifier", - "start": 961, - "end": 970, + "start": 963, + "end": 974, "loc": { "start": { "line": 41, @@ -2091,11 +2091,11 @@ }, "end": { "line": 41, - "column": 89 + "column": 91 }, - "identifierName": "antialias" + "identifierName": "superSample" }, - "name": "antialias" + "name": "superSample" }, "computed": false } @@ -2105,8 +2105,8 @@ }, { "type": "ExpressionStatement", - "start": 977, - "end": 1030, + "start": 981, + "end": 1034, "loc": { "start": { "line": 42, @@ -2119,8 +2119,8 @@ }, "expression": { "type": "CallExpression", - "start": 977, - "end": 1029, + "start": 981, + "end": 1033, "loc": { "start": { "line": 42, @@ -2133,8 +2133,8 @@ }, "callee": { "type": "MemberExpression", - "start": 977, - "end": 1008, + "start": 981, + "end": 1012, "loc": { "start": { "line": 42, @@ -2147,8 +2147,8 @@ }, "object": { "type": "MemberExpression", - "start": 977, - "end": 996, + "start": 981, + "end": 1000, "loc": { "start": { "line": 42, @@ -2161,8 +2161,8 @@ }, "object": { "type": "Identifier", - "start": 977, - "end": 990, + "start": 981, + "end": 994, "loc": { "start": { "line": 42, @@ -2178,8 +2178,8 @@ }, "property": { "type": "Identifier", - "start": 991, - "end": 996, + "start": 995, + "end": 1000, "loc": { "start": { "line": 42, @@ -2197,8 +2197,8 @@ }, "property": { "type": "Identifier", - "start": 997, - "end": 1008, + "start": 1001, + "end": 1012, "loc": { "start": { "line": 42, @@ -2217,8 +2217,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1009, - "end": 1019, + "start": 1013, + "end": 1023, "loc": { "start": { "line": 42, @@ -2237,8 +2237,8 @@ }, { "type": "StringLiteral", - "start": 1021, - "end": 1028, + "start": 1025, + "end": 1032, "loc": { "start": { "line": 42, @@ -2260,8 +2260,8 @@ }, { "type": "ExpressionStatement", - "start": 1035, - "end": 1098, + "start": 1039, + "end": 1102, "loc": { "start": { "line": 43, @@ -2274,8 +2274,8 @@ }, "expression": { "type": "CallExpression", - "start": 1035, - "end": 1097, + "start": 1039, + "end": 1101, "loc": { "start": { "line": 43, @@ -2288,8 +2288,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1035, - "end": 1066, + "start": 1039, + "end": 1070, "loc": { "start": { "line": 43, @@ -2302,8 +2302,8 @@ }, "object": { "type": "MemberExpression", - "start": 1035, - "end": 1054, + "start": 1039, + "end": 1058, "loc": { "start": { "line": 43, @@ -2316,8 +2316,8 @@ }, "object": { "type": "Identifier", - "start": 1035, - "end": 1048, + "start": 1039, + "end": 1052, "loc": { "start": { "line": 43, @@ -2333,8 +2333,8 @@ }, "property": { "type": "Identifier", - "start": 1049, - "end": 1054, + "start": 1053, + "end": 1058, "loc": { "start": { "line": 43, @@ -2352,8 +2352,8 @@ }, "property": { "type": "Identifier", - "start": 1055, - "end": 1066, + "start": 1059, + "end": 1070, "loc": { "start": { "line": 43, @@ -2372,8 +2372,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1067, - "end": 1074, + "start": 1071, + "end": 1078, "loc": { "start": { "line": 43, @@ -2392,8 +2392,8 @@ }, { "type": "MemberExpression", - "start": 1076, - "end": 1096, + "start": 1080, + "end": 1100, "loc": { "start": { "line": 43, @@ -2406,8 +2406,8 @@ }, "object": { "type": "MemberExpression", - "start": 1076, - "end": 1090, + "start": 1080, + "end": 1094, "loc": { "start": { "line": 43, @@ -2420,8 +2420,8 @@ }, "object": { "type": "Identifier", - "start": 1076, - "end": 1082, + "start": 1080, + "end": 1086, "loc": { "start": { "line": 43, @@ -2437,8 +2437,8 @@ }, "property": { "type": "Identifier", - "start": 1083, - "end": 1090, + "start": 1087, + "end": 1094, "loc": { "start": { "line": 43, @@ -2456,8 +2456,8 @@ }, "property": { "type": "Identifier", - "start": 1091, - "end": 1096, + "start": 1095, + "end": 1100, "loc": { "start": { "line": 43, @@ -2478,8 +2478,8 @@ }, { "type": "ExpressionStatement", - "start": 1103, - "end": 1168, + "start": 1107, + "end": 1172, "loc": { "start": { "line": 44, @@ -2492,8 +2492,8 @@ }, "expression": { "type": "CallExpression", - "start": 1103, - "end": 1167, + "start": 1107, + "end": 1171, "loc": { "start": { "line": 44, @@ -2506,8 +2506,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1103, - "end": 1134, + "start": 1107, + "end": 1138, "loc": { "start": { "line": 44, @@ -2520,8 +2520,8 @@ }, "object": { "type": "MemberExpression", - "start": 1103, - "end": 1122, + "start": 1107, + "end": 1126, "loc": { "start": { "line": 44, @@ -2534,8 +2534,8 @@ }, "object": { "type": "Identifier", - "start": 1103, - "end": 1116, + "start": 1107, + "end": 1120, "loc": { "start": { "line": 44, @@ -2551,8 +2551,8 @@ }, "property": { "type": "Identifier", - "start": 1117, - "end": 1122, + "start": 1121, + "end": 1126, "loc": { "start": { "line": 44, @@ -2570,8 +2570,8 @@ }, "property": { "type": "Identifier", - "start": 1123, - "end": 1134, + "start": 1127, + "end": 1138, "loc": { "start": { "line": 44, @@ -2590,8 +2590,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1135, - "end": 1143, + "start": 1139, + "end": 1147, "loc": { "start": { "line": 44, @@ -2610,8 +2610,8 @@ }, { "type": "MemberExpression", - "start": 1145, - "end": 1166, + "start": 1149, + "end": 1170, "loc": { "start": { "line": 44, @@ -2624,8 +2624,8 @@ }, "object": { "type": "MemberExpression", - "start": 1145, - "end": 1159, + "start": 1149, + "end": 1163, "loc": { "start": { "line": 44, @@ -2638,8 +2638,8 @@ }, "object": { "type": "Identifier", - "start": 1145, - "end": 1151, + "start": 1149, + "end": 1155, "loc": { "start": { "line": 44, @@ -2655,8 +2655,8 @@ }, "property": { "type": "Identifier", - "start": 1152, - "end": 1159, + "start": 1156, + "end": 1163, "loc": { "start": { "line": 44, @@ -2674,8 +2674,8 @@ }, "property": { "type": "Identifier", - "start": 1160, - "end": 1166, + "start": 1164, + "end": 1170, "loc": { "start": { "line": 44, @@ -2696,8 +2696,8 @@ }, { "type": "ExpressionStatement", - "start": 1173, - "end": 1245, + "start": 1177, + "end": 1249, "loc": { "start": { "line": 45, @@ -2710,8 +2710,8 @@ }, "expression": { "type": "CallExpression", - "start": 1173, - "end": 1244, + "start": 1177, + "end": 1248, "loc": { "start": { "line": 45, @@ -2724,8 +2724,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1173, - "end": 1204, + "start": 1177, + "end": 1208, "loc": { "start": { "line": 45, @@ -2738,8 +2738,8 @@ }, "object": { "type": "MemberExpression", - "start": 1173, - "end": 1192, + "start": 1177, + "end": 1196, "loc": { "start": { "line": 45, @@ -2752,8 +2752,8 @@ }, "object": { "type": "Identifier", - "start": 1173, - "end": 1186, + "start": 1177, + "end": 1190, "loc": { "start": { "line": 45, @@ -2769,8 +2769,8 @@ }, "property": { "type": "Identifier", - "start": 1187, - "end": 1192, + "start": 1191, + "end": 1196, "loc": { "start": { "line": 45, @@ -2788,8 +2788,8 @@ }, "property": { "type": "Identifier", - "start": 1193, - "end": 1204, + "start": 1197, + "end": 1208, "loc": { "start": { "line": 45, @@ -2808,8 +2808,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1205, - "end": 1214, + "start": 1209, + "end": 1218, "loc": { "start": { "line": 45, @@ -2828,8 +2828,8 @@ }, { "type": "MemberExpression", - "start": 1216, - "end": 1243, + "start": 1220, + "end": 1247, "loc": { "start": { "line": 45, @@ -2842,8 +2842,8 @@ }, "object": { "type": "MemberExpression", - "start": 1216, - "end": 1228, + "start": 1220, + "end": 1232, "loc": { "start": { "line": 45, @@ -2856,8 +2856,8 @@ }, "object": { "type": "Identifier", - "start": 1216, - "end": 1222, + "start": 1220, + "end": 1226, "loc": { "start": { "line": 45, @@ -2873,8 +2873,8 @@ }, "property": { "type": "Identifier", - "start": 1223, - "end": 1228, + "start": 1227, + "end": 1232, "loc": { "start": { "line": 45, @@ -2892,8 +2892,8 @@ }, "property": { "type": "Identifier", - "start": 1229, - "end": 1243, + "start": 1233, + "end": 1247, "loc": { "start": { "line": 45, @@ -2914,8 +2914,8 @@ }, { "type": "ExpressionStatement", - "start": 1250, - "end": 1338, + "start": 1254, + "end": 1342, "loc": { "start": { "line": 46, @@ -2928,8 +2928,8 @@ }, "expression": { "type": "CallExpression", - "start": 1250, - "end": 1337, + "start": 1254, + "end": 1341, "loc": { "start": { "line": 46, @@ -2942,8 +2942,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1250, - "end": 1281, + "start": 1254, + "end": 1285, "loc": { "start": { "line": 46, @@ -2956,8 +2956,8 @@ }, "object": { "type": "MemberExpression", - "start": 1250, - "end": 1269, + "start": 1254, + "end": 1273, "loc": { "start": { "line": 46, @@ -2970,8 +2970,8 @@ }, "object": { "type": "Identifier", - "start": 1250, - "end": 1263, + "start": 1254, + "end": 1267, "loc": { "start": { "line": 46, @@ -2987,8 +2987,8 @@ }, "property": { "type": "Identifier", - "start": 1264, - "end": 1269, + "start": 1268, + "end": 1273, "loc": { "start": { "line": 46, @@ -3006,8 +3006,8 @@ }, "property": { "type": "Identifier", - "start": 1270, - "end": 1281, + "start": 1274, + "end": 1285, "loc": { "start": { "line": 46, @@ -3026,8 +3026,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1282, - "end": 1305, + "start": 1286, + "end": 1309, "loc": { "start": { "line": 46, @@ -3040,8 +3040,8 @@ }, "object": { "type": "MemberExpression", - "start": 1282, - "end": 1296, + "start": 1286, + "end": 1300, "loc": { "start": { "line": 46, @@ -3054,8 +3054,8 @@ }, "object": { "type": "Identifier", - "start": 1282, - "end": 1288, + "start": 1286, + "end": 1292, "loc": { "start": { "line": 46, @@ -3071,8 +3071,8 @@ }, "property": { "type": "Identifier", - "start": 1289, - "end": 1296, + "start": 1293, + "end": 1300, "loc": { "start": { "line": 46, @@ -3090,8 +3090,8 @@ }, "property": { "type": "Identifier", - "start": 1297, - "end": 1305, + "start": 1301, + "end": 1309, "loc": { "start": { "line": 46, @@ -3109,8 +3109,8 @@ }, { "type": "BinaryExpression", - "start": 1307, - "end": 1336, + "start": 1311, + "end": 1340, "loc": { "start": { "line": 46, @@ -3123,8 +3123,8 @@ }, "left": { "type": "MemberExpression", - "start": 1307, - "end": 1329, + "start": 1311, + "end": 1333, "loc": { "start": { "line": 46, @@ -3137,8 +3137,8 @@ }, "object": { "type": "MemberExpression", - "start": 1307, - "end": 1321, + "start": 1311, + "end": 1325, "loc": { "start": { "line": 46, @@ -3151,8 +3151,8 @@ }, "object": { "type": "Identifier", - "start": 1307, - "end": 1313, + "start": 1311, + "end": 1317, "loc": { "start": { "line": 46, @@ -3168,8 +3168,8 @@ }, "property": { "type": "Identifier", - "start": 1314, - "end": 1321, + "start": 1318, + "end": 1325, "loc": { "start": { "line": 46, @@ -3187,8 +3187,8 @@ }, "property": { "type": "Identifier", - "start": 1322, - "end": 1329, + "start": 1326, + "end": 1333, "loc": { "start": { "line": 46, @@ -3207,8 +3207,8 @@ "operator": "+", "right": { "type": "StringLiteral", - "start": 1332, - "end": 1336, + "start": 1336, + "end": 1340, "loc": { "start": { "line": 46, @@ -3231,8 +3231,8 @@ }, { "type": "ExpressionStatement", - "start": 1343, - "end": 1416, + "start": 1347, + "end": 1420, "loc": { "start": { "line": 47, @@ -3245,8 +3245,8 @@ }, "expression": { "type": "CallExpression", - "start": 1343, - "end": 1415, + "start": 1347, + "end": 1419, "loc": { "start": { "line": 47, @@ -3259,8 +3259,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1343, - "end": 1374, + "start": 1347, + "end": 1378, "loc": { "start": { "line": 47, @@ -3273,8 +3273,8 @@ }, "object": { "type": "MemberExpression", - "start": 1343, - "end": 1362, + "start": 1347, + "end": 1366, "loc": { "start": { "line": 47, @@ -3287,8 +3287,8 @@ }, "object": { "type": "Identifier", - "start": 1343, - "end": 1356, + "start": 1347, + "end": 1360, "loc": { "start": { "line": 47, @@ -3304,8 +3304,8 @@ }, "property": { "type": "Identifier", - "start": 1357, - "end": 1362, + "start": 1361, + "end": 1366, "loc": { "start": { "line": 47, @@ -3323,8 +3323,8 @@ }, "property": { "type": "Identifier", - "start": 1363, - "end": 1374, + "start": 1367, + "end": 1378, "loc": { "start": { "line": 47, @@ -3343,8 +3343,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1375, - "end": 1383, + "start": 1379, + "end": 1387, "loc": { "start": { "line": 47, @@ -3363,8 +3363,8 @@ }, { "type": "BinaryExpression", - "start": 1385, - "end": 1414, + "start": 1389, + "end": 1418, "loc": { "start": { "line": 47, @@ -3377,8 +3377,8 @@ }, "left": { "type": "MemberExpression", - "start": 1385, - "end": 1407, + "start": 1389, + "end": 1411, "loc": { "start": { "line": 47, @@ -3391,8 +3391,8 @@ }, "object": { "type": "MemberExpression", - "start": 1385, - "end": 1399, + "start": 1389, + "end": 1403, "loc": { "start": { "line": 47, @@ -3405,8 +3405,8 @@ }, "object": { "type": "Identifier", - "start": 1385, - "end": 1391, + "start": 1389, + "end": 1395, "loc": { "start": { "line": 47, @@ -3422,8 +3422,8 @@ }, "property": { "type": "Identifier", - "start": 1392, - "end": 1399, + "start": 1396, + "end": 1403, "loc": { "start": { "line": 47, @@ -3441,8 +3441,8 @@ }, "property": { "type": "Identifier", - "start": 1400, - "end": 1407, + "start": 1404, + "end": 1411, "loc": { "start": { "line": 47, @@ -3461,8 +3461,8 @@ "operator": "+", "right": { "type": "StringLiteral", - "start": 1410, - "end": 1414, + "start": 1414, + "end": 1418, "loc": { "start": { "line": 47, @@ -3485,8 +3485,8 @@ }, { "type": "ExpressionStatement", - "start": 1421, - "end": 1471, + "start": 1425, + "end": 1475, "loc": { "start": { "line": 48, @@ -3499,8 +3499,8 @@ }, "expression": { "type": "CallExpression", - "start": 1421, - "end": 1470, + "start": 1425, + "end": 1474, "loc": { "start": { "line": 48, @@ -3513,8 +3513,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1421, - "end": 1452, + "start": 1425, + "end": 1456, "loc": { "start": { "line": 48, @@ -3527,8 +3527,8 @@ }, "object": { "type": "MemberExpression", - "start": 1421, - "end": 1440, + "start": 1425, + "end": 1444, "loc": { "start": { "line": 48, @@ -3541,8 +3541,8 @@ }, "object": { "type": "Identifier", - "start": 1421, - "end": 1434, + "start": 1425, + "end": 1438, "loc": { "start": { "line": 48, @@ -3558,8 +3558,8 @@ }, "property": { "type": "Identifier", - "start": 1435, - "end": 1440, + "start": 1439, + "end": 1444, "loc": { "start": { "line": 48, @@ -3577,8 +3577,8 @@ }, "property": { "type": "Identifier", - "start": 1441, - "end": 1452, + "start": 1445, + "end": 1456, "loc": { "start": { "line": 48, @@ -3597,8 +3597,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1453, - "end": 1462, + "start": 1457, + "end": 1466, "loc": { "start": { "line": 48, @@ -3617,8 +3617,8 @@ }, { "type": "NumericLiteral", - "start": 1464, - "end": 1469, + "start": 1468, + "end": 1473, "loc": { "start": { "line": 48, @@ -3640,8 +3640,8 @@ }, { "type": "ExpressionStatement", - "start": 1476, - "end": 1534, + "start": 1480, + "end": 1538, "loc": { "start": { "line": 49, @@ -3654,8 +3654,8 @@ }, "expression": { "type": "CallExpression", - "start": 1476, - "end": 1533, + "start": 1480, + "end": 1537, "loc": { "start": { "line": 49, @@ -3668,8 +3668,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1476, - "end": 1507, + "start": 1480, + "end": 1511, "loc": { "start": { "line": 49, @@ -3682,8 +3682,8 @@ }, "object": { "type": "MemberExpression", - "start": 1476, - "end": 1495, + "start": 1480, + "end": 1499, "loc": { "start": { "line": 49, @@ -3696,8 +3696,8 @@ }, "object": { "type": "Identifier", - "start": 1476, - "end": 1489, + "start": 1480, + "end": 1493, "loc": { "start": { "line": 49, @@ -3713,8 +3713,8 @@ }, "property": { "type": "Identifier", - "start": 1490, - "end": 1495, + "start": 1494, + "end": 1499, "loc": { "start": { "line": 49, @@ -3732,8 +3732,8 @@ }, "property": { "type": "Identifier", - "start": 1496, - "end": 1507, + "start": 1500, + "end": 1511, "loc": { "start": { "line": 49, @@ -3752,8 +3752,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1508, - "end": 1524, + "start": 1512, + "end": 1528, "loc": { "start": { "line": 49, @@ -3772,8 +3772,8 @@ }, { "type": "StringLiteral", - "start": 1526, - "end": 1532, + "start": 1530, + "end": 1536, "loc": { "start": { "line": 49, @@ -3795,8 +3795,8 @@ }, { "type": "IfStatement", - "start": 1539, - "end": 1622, + "start": 1543, + "end": 1626, "loc": { "start": { "line": 50, @@ -3809,8 +3809,8 @@ }, "test": { "type": "MemberExpression", - "start": 1542, - "end": 1559, + "start": 1546, + "end": 1563, "loc": { "start": { "line": 50, @@ -3823,8 +3823,8 @@ }, "object": { "type": "MemberExpression", - "start": 1542, - "end": 1552, + "start": 1546, + "end": 1556, "loc": { "start": { "line": 50, @@ -3837,8 +3837,8 @@ }, "object": { "type": "Identifier", - "start": 1542, - "end": 1548, + "start": 1546, + "end": 1552, "loc": { "start": { "line": 50, @@ -3854,8 +3854,8 @@ }, "property": { "type": "Identifier", - "start": 1549, - "end": 1552, + "start": 1553, + "end": 1556, "loc": { "start": { "line": 50, @@ -3873,8 +3873,8 @@ }, "property": { "type": "Identifier", - "start": 1553, - "end": 1559, + "start": 1557, + "end": 1563, "loc": { "start": { "line": 50, @@ -3892,8 +3892,8 @@ }, "consequent": { "type": "ExpressionStatement", - "start": 1561, - "end": 1622, + "start": 1565, + "end": 1626, "loc": { "start": { "line": 50, @@ -3906,8 +3906,8 @@ }, "expression": { "type": "CallExpression", - "start": 1561, - "end": 1621, + "start": 1565, + "end": 1625, "loc": { "start": { "line": 50, @@ -3920,8 +3920,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1561, - "end": 1592, + "start": 1565, + "end": 1596, "loc": { "start": { "line": 50, @@ -3934,8 +3934,8 @@ }, "object": { "type": "MemberExpression", - "start": 1561, - "end": 1580, + "start": 1565, + "end": 1584, "loc": { "start": { "line": 50, @@ -3948,8 +3948,8 @@ }, "object": { "type": "Identifier", - "start": 1561, - "end": 1574, + "start": 1565, + "end": 1578, "loc": { "start": { "line": 50, @@ -3965,8 +3965,8 @@ }, "property": { "type": "Identifier", - "start": 1575, - "end": 1580, + "start": 1579, + "end": 1584, "loc": { "start": { "line": 50, @@ -3984,8 +3984,8 @@ }, "property": { "type": "Identifier", - "start": 1581, - "end": 1592, + "start": 1585, + "end": 1596, "loc": { "start": { "line": 50, @@ -4004,8 +4004,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1593, - "end": 1601, + "start": 1597, + "end": 1605, "loc": { "start": { "line": 50, @@ -4024,8 +4024,8 @@ }, { "type": "StringLiteral", - "start": 1603, - "end": 1620, + "start": 1607, + "end": 1624, "loc": { "start": { "line": 50, @@ -4049,8 +4049,8 @@ }, { "type": "ExpressionStatement", - "start": 1627, - "end": 1662, + "start": 1631, + "end": 1666, "loc": { "start": { "line": 51, @@ -4063,8 +4063,8 @@ }, "expression": { "type": "CallExpression", - "start": 1627, - "end": 1661, + "start": 1631, + "end": 1665, "loc": { "start": { "line": 51, @@ -4077,8 +4077,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1627, - "end": 1646, + "start": 1631, + "end": 1650, "loc": { "start": { "line": 51, @@ -4091,8 +4091,8 @@ }, "object": { "type": "Identifier", - "start": 1627, - "end": 1634, + "start": 1631, + "end": 1638, "loc": { "start": { "line": 51, @@ -4108,8 +4108,8 @@ }, "property": { "type": "Identifier", - "start": 1635, - "end": 1646, + "start": 1639, + "end": 1650, "loc": { "start": { "line": 51, @@ -4128,8 +4128,8 @@ "arguments": [ { "type": "Identifier", - "start": 1647, - "end": 1660, + "start": 1651, + "end": 1664, "loc": { "start": { "line": 51, @@ -4148,8 +4148,8 @@ }, { "type": "ExpressionStatement", - "start": 1666, - "end": 1701, + "start": 1670, + "end": 1705, "loc": { "start": { "line": 53, @@ -4162,8 +4162,8 @@ }, "expression": { "type": "CallExpression", - "start": 1666, - "end": 1700, + "start": 1670, + "end": 1704, "loc": { "start": { "line": 53, @@ -4176,8 +4176,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1666, - "end": 1691, + "start": 1670, + "end": 1695, "loc": { "start": { "line": 53, @@ -4190,8 +4190,8 @@ }, "object": { "type": "MemberExpression", - "start": 1666, - "end": 1679, + "start": 1670, + "end": 1683, "loc": { "start": { "line": 53, @@ -4204,8 +4204,8 @@ }, "object": { "type": "Identifier", - "start": 1666, - "end": 1674, + "start": 1670, + "end": 1678, "loc": { "start": { "line": 53, @@ -4221,8 +4221,8 @@ }, "property": { "type": "Identifier", - "start": 1675, - "end": 1679, + "start": 1679, + "end": 1683, "loc": { "start": { "line": 53, @@ -4240,8 +4240,8 @@ }, "property": { "type": "Identifier", - "start": 1680, - "end": 1691, + "start": 1684, + "end": 1695, "loc": { "start": { "line": 53, @@ -4260,8 +4260,8 @@ "arguments": [ { "type": "Identifier", - "start": 1692, - "end": 1699, + "start": 1696, + "end": 1703, "loc": { "start": { "line": 53, @@ -4280,8 +4280,8 @@ }, { "type": "ExpressionStatement", - "start": 1704, - "end": 1761, + "start": 1708, + "end": 1765, "loc": { "start": { "line": 54, @@ -4294,8 +4294,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1704, - "end": 1760, + "start": 1708, + "end": 1764, "loc": { "start": { "line": 54, @@ -4309,8 +4309,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1704, - "end": 1714, + "start": 1708, + "end": 1718, "loc": { "start": { "line": 54, @@ -4326,8 +4326,8 @@ }, "right": { "type": "CallExpression", - "start": 1717, - "end": 1760, + "start": 1721, + "end": 1764, "loc": { "start": { "line": 54, @@ -4340,8 +4340,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1717, - "end": 1740, + "start": 1721, + "end": 1744, "loc": { "start": { "line": 54, @@ -4354,8 +4354,8 @@ }, "object": { "type": "Identifier", - "start": 1717, - "end": 1725, + "start": 1721, + "end": 1729, "loc": { "start": { "line": 54, @@ -4371,8 +4371,8 @@ }, "property": { "type": "Identifier", - "start": 1726, - "end": 1740, + "start": 1730, + "end": 1744, "loc": { "start": { "line": 54, @@ -4391,8 +4391,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1741, - "end": 1759, + "start": 1745, + "end": 1763, "loc": { "start": { "line": 54, @@ -4405,8 +4405,8 @@ }, "object": { "type": "MemberExpression", - "start": 1741, - "end": 1752, + "start": 1745, + "end": 1756, "loc": { "start": { "line": 54, @@ -4419,8 +4419,8 @@ }, "object": { "type": "Identifier", - "start": 1741, - "end": 1747, + "start": 1745, + "end": 1751, "loc": { "start": { "line": 54, @@ -4436,8 +4436,8 @@ }, "property": { "type": "Identifier", - "start": 1748, - "end": 1752, + "start": 1752, + "end": 1756, "loc": { "start": { "line": 54, @@ -4455,8 +4455,8 @@ }, "property": { "type": "Identifier", - "start": 1753, - "end": 1759, + "start": 1757, + "end": 1763, "loc": { "start": { "line": 54, @@ -4478,8 +4478,8 @@ }, { "type": "ExpressionStatement", - "start": 1765, - "end": 1777, + "start": 1769, + "end": 1781, "loc": { "start": { "line": 56, @@ -4492,8 +4492,8 @@ }, "expression": { "type": "CallExpression", - "start": 1765, - "end": 1776, + "start": 1769, + "end": 1780, "loc": { "start": { "line": 56, @@ -4506,8 +4506,8 @@ }, "callee": { "type": "Identifier", - "start": 1765, - "end": 1774, + "start": 1769, + "end": 1778, "loc": { "start": { "line": 56, @@ -4534,8 +4534,8 @@ }, { "type": "FunctionDeclaration", - "start": 1868, - "end": 2546, + "start": 1872, + "end": 2550, "loc": { "start": { "line": 65, @@ -4548,8 +4548,8 @@ }, "id": { "type": "Identifier", - "start": 1877, - "end": 1886, + "start": 1881, + "end": 1890, "loc": { "start": { "line": 65, @@ -4570,8 +4570,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 1888, - "end": 2546, + "start": 1892, + "end": 2550, "loc": { "start": { "line": 65, @@ -4585,8 +4585,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 1893, - "end": 1996, + "start": 1897, + "end": 2000, "loc": { "start": { "line": 67, @@ -4600,8 +4600,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 1897, - "end": 1995, + "start": 1901, + "end": 1999, "loc": { "start": { "line": 67, @@ -4614,8 +4614,8 @@ }, "id": { "type": "Identifier", - "start": 1897, - "end": 1902, + "start": 1901, + "end": 1906, "loc": { "start": { "line": 67, @@ -4631,8 +4631,8 @@ }, "init": { "type": "ArrayExpression", - "start": 1905, - "end": 1995, + "start": 1909, + "end": 1999, "loc": { "start": { "line": 67, @@ -4646,8 +4646,8 @@ "elements": [ { "type": "StringLiteral", - "start": 1906, - "end": 1914, + "start": 1910, + "end": 1918, "loc": { "start": { "line": 67, @@ -4666,8 +4666,8 @@ }, { "type": "StringLiteral", - "start": 1916, - "end": 1923, + "start": 1920, + "end": 1927, "loc": { "start": { "line": 67, @@ -4686,8 +4686,8 @@ }, { "type": "StringLiteral", - "start": 1925, - "end": 1946, + "start": 1929, + "end": 1950, "loc": { "start": { "line": 67, @@ -4706,8 +4706,8 @@ }, { "type": "StringLiteral", - "start": 1948, - "end": 1968, + "start": 1952, + "end": 1972, "loc": { "start": { "line": 67, @@ -4726,8 +4726,8 @@ }, { "type": "StringLiteral", - "start": 1970, - "end": 1981, + "start": 1974, + "end": 1985, "loc": { "start": { "line": 67, @@ -4746,8 +4746,8 @@ }, { "type": "StringLiteral", - "start": 1983, - "end": 1994, + "start": 1987, + "end": 1998, "loc": { "start": { "line": 67, @@ -4772,8 +4772,8 @@ }, { "type": "ForStatement", - "start": 1999, - "end": 2282, + "start": 2003, + "end": 2286, "loc": { "start": { "line": 68, @@ -4786,8 +4786,8 @@ }, "init": { "type": "VariableDeclaration", - "start": 2003, - "end": 2012, + "start": 2007, + "end": 2016, "loc": { "start": { "line": 68, @@ -4801,8 +4801,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2007, - "end": 2012, + "start": 2011, + "end": 2016, "loc": { "start": { "line": 68, @@ -4815,8 +4815,8 @@ }, "id": { "type": "Identifier", - "start": 2007, - "end": 2008, + "start": 2011, + "end": 2012, "loc": { "start": { "line": 68, @@ -4832,8 +4832,8 @@ }, "init": { "type": "NumericLiteral", - "start": 2011, - "end": 2012, + "start": 2015, + "end": 2016, "loc": { "start": { "line": 68, @@ -4856,8 +4856,8 @@ }, "test": { "type": "BinaryExpression", - "start": 2014, - "end": 2030, + "start": 2018, + "end": 2034, "loc": { "start": { "line": 68, @@ -4870,8 +4870,8 @@ }, "left": { "type": "Identifier", - "start": 2014, - "end": 2015, + "start": 2018, + "end": 2019, "loc": { "start": { "line": 68, @@ -4888,8 +4888,8 @@ "operator": "<", "right": { "type": "MemberExpression", - "start": 2018, - "end": 2030, + "start": 2022, + "end": 2034, "loc": { "start": { "line": 68, @@ -4902,8 +4902,8 @@ }, "object": { "type": "Identifier", - "start": 2018, - "end": 2023, + "start": 2022, + "end": 2027, "loc": { "start": { "line": 68, @@ -4919,8 +4919,8 @@ }, "property": { "type": "Identifier", - "start": 2024, - "end": 2030, + "start": 2028, + "end": 2034, "loc": { "start": { "line": 68, @@ -4939,8 +4939,8 @@ }, "update": { "type": "UpdateExpression", - "start": 2032, - "end": 2035, + "start": 2036, + "end": 2039, "loc": { "start": { "line": 68, @@ -4955,8 +4955,8 @@ "prefix": false, "argument": { "type": "Identifier", - "start": 2032, - "end": 2033, + "start": 2036, + "end": 2037, "loc": { "start": { "line": 68, @@ -4973,8 +4973,8 @@ }, "body": { "type": "BlockStatement", - "start": 2036, - "end": 2282, + "start": 2040, + "end": 2286, "loc": { "start": { "line": 68, @@ -4988,8 +4988,8 @@ "body": [ { "type": "TryStatement", - "start": 2042, - "end": 2278, + "start": 2046, + "end": 2282, "loc": { "start": { "line": 69, @@ -5002,8 +5002,8 @@ }, "block": { "type": "BlockStatement", - "start": 2045, - "end": 2268, + "start": 2049, + "end": 2272, "loc": { "start": { "line": 69, @@ -5017,8 +5017,8 @@ "body": [ { "type": "VariableDeclaration", - "start": 2053, - "end": 2231, + "start": 2057, + "end": 2235, "loc": { "start": { "line": 70, @@ -5032,8 +5032,8 @@ "declarations": [ { "type": "VariableDeclarator", - "start": 2057, - "end": 2230, + "start": 2061, + "end": 2234, "loc": { "start": { "line": 70, @@ -5046,8 +5046,8 @@ }, "id": { "type": "Identifier", - "start": 2057, - "end": 2060, + "start": 2061, + "end": 2064, "loc": { "start": { "line": 70, @@ -5063,8 +5063,8 @@ }, "init": { "type": "CallExpression", - "start": 2063, - "end": 2230, + "start": 2067, + "end": 2234, "loc": { "start": { "line": 70, @@ -5077,8 +5077,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2063, - "end": 2084, + "start": 2067, + "end": 2088, "loc": { "start": { "line": 70, @@ -5091,8 +5091,8 @@ }, "object": { "type": "Identifier", - "start": 2063, - "end": 2073, + "start": 2067, + "end": 2077, "loc": { "start": { "line": 70, @@ -5108,8 +5108,8 @@ }, "property": { "type": "Identifier", - "start": 2074, - "end": 2084, + "start": 2078, + "end": 2088, "loc": { "start": { "line": 70, @@ -5128,8 +5128,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 2085, - "end": 2093, + "start": 2089, + "end": 2097, "loc": { "start": { "line": 70, @@ -5142,8 +5142,8 @@ }, "object": { "type": "Identifier", - "start": 2085, - "end": 2090, + "start": 2089, + "end": 2094, "loc": { "start": { "line": 70, @@ -5159,8 +5159,8 @@ }, "property": { "type": "Identifier", - "start": 2091, - "end": 2092, + "start": 2095, + "end": 2096, "loc": { "start": { "line": 70, @@ -5178,8 +5178,8 @@ }, { "type": "ObjectExpression", - "start": 2095, - "end": 2229, + "start": 2099, + "end": 2233, "loc": { "start": { "line": 70, @@ -5193,8 +5193,8 @@ "properties": [ { "type": "ObjectProperty", - "start": 2105, - "end": 2116, + "start": 2109, + "end": 2120, "loc": { "start": { "line": 71, @@ -5210,8 +5210,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2105, - "end": 2110, + "start": 2109, + "end": 2114, "loc": { "start": { "line": 71, @@ -5227,8 +5227,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 2112, - "end": 2116, + "start": 2116, + "end": 2120, "loc": { "start": { "line": 71, @@ -5244,8 +5244,8 @@ }, { "type": "ObjectProperty", - "start": 2126, - "end": 2141, + "start": 2130, + "end": 2145, "loc": { "start": { "line": 72, @@ -5261,8 +5261,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2126, - "end": 2135, + "start": 2130, + "end": 2139, "loc": { "start": { "line": 72, @@ -5278,8 +5278,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 2137, - "end": 2141, + "start": 2141, + "end": 2145, "loc": { "start": { "line": 72, @@ -5295,8 +5295,8 @@ }, { "type": "ObjectProperty", - "start": 2151, - "end": 2175, + "start": 2155, + "end": 2179, "loc": { "start": { "line": 73, @@ -5312,8 +5312,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2151, - "end": 2169, + "start": 2155, + "end": 2173, "loc": { "start": { "line": 73, @@ -5329,8 +5329,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 2171, - "end": 2175, + "start": 2175, + "end": 2179, "loc": { "start": { "line": 73, @@ -5346,8 +5346,8 @@ }, { "type": "ObjectProperty", - "start": 2185, - "end": 2220, + "start": 2189, + "end": 2224, "loc": { "start": { "line": 74, @@ -5363,8 +5363,8 @@ "computed": false, "key": { "type": "Identifier", - "start": 2185, - "end": 2213, + "start": 2189, + "end": 2217, "loc": { "start": { "line": 74, @@ -5380,8 +5380,8 @@ }, "value": { "type": "BooleanLiteral", - "start": 2215, - "end": 2220, + "start": 2219, + "end": 2224, "loc": { "start": { "line": 74, @@ -5405,8 +5405,8 @@ }, { "type": "IfStatement", - "start": 2238, - "end": 2262, + "start": 2242, + "end": 2266, "loc": { "start": { "line": 76, @@ -5419,8 +5419,8 @@ }, "test": { "type": "Identifier", - "start": 2241, - "end": 2244, + "start": 2245, + "end": 2248, "loc": { "start": { "line": 76, @@ -5436,8 +5436,8 @@ }, "consequent": { "type": "ExpressionStatement", - "start": 2246, - "end": 2262, + "start": 2250, + "end": 2266, "loc": { "start": { "line": 76, @@ -5450,8 +5450,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 2246, - "end": 2261, + "start": 2250, + "end": 2265, "loc": { "start": { "line": 76, @@ -5465,8 +5465,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 2246, - "end": 2255, + "start": 2250, + "end": 2259, "loc": { "start": { "line": 76, @@ -5482,8 +5482,8 @@ }, "right": { "type": "Identifier", - "start": 2258, - "end": 2261, + "start": 2262, + "end": 2265, "loc": { "start": { "line": 76, @@ -5506,8 +5506,8 @@ }, "handler": { "type": "CatchClause", - "start": 2268, - "end": 2278, + "start": 2272, + "end": 2282, "loc": { "start": { "line": 77, @@ -5520,8 +5520,8 @@ }, "param": { "type": "Identifier", - "start": 2274, - "end": 2275, + "start": 2278, + "end": 2279, "loc": { "start": { "line": 77, @@ -5537,8 +5537,8 @@ }, "body": { "type": "BlockStatement", - "start": 2276, - "end": 2278, + "start": 2280, + "end": 2282, "loc": { "start": { "line": 77, @@ -5562,8 +5562,8 @@ }, { "type": "IfStatement", - "start": 2285, - "end": 2544, + "start": 2289, + "end": 2548, "loc": { "start": { "line": 79, @@ -5576,8 +5576,8 @@ }, "test": { "type": "UnaryExpression", - "start": 2288, - "end": 2298, + "start": 2292, + "end": 2302, "loc": { "start": { "line": 79, @@ -5592,8 +5592,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 2289, - "end": 2298, + "start": 2293, + "end": 2302, "loc": { "start": { "line": 79, @@ -5613,8 +5613,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2299, - "end": 2544, + "start": 2303, + "end": 2548, "loc": { "start": { "line": 79, @@ -5628,8 +5628,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2305, - "end": 2370, + "start": 2309, + "end": 2374, "loc": { "start": { "line": 80, @@ -5642,8 +5642,8 @@ }, "expression": { "type": "CallExpression", - "start": 2305, - "end": 2369, + "start": 2309, + "end": 2373, "loc": { "start": { "line": 80, @@ -5656,8 +5656,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2305, - "end": 2318, + "start": 2309, + "end": 2322, "loc": { "start": { "line": 80, @@ -5670,8 +5670,8 @@ }, "object": { "type": "Identifier", - "start": 2305, - "end": 2312, + "start": 2309, + "end": 2316, "loc": { "start": { "line": 80, @@ -5687,8 +5687,8 @@ }, "property": { "type": "Identifier", - "start": 2313, - "end": 2318, + "start": 2317, + "end": 2322, "loc": { "start": { "line": 80, @@ -5707,8 +5707,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2319, - "end": 2368, + "start": 2323, + "end": 2372, "loc": { "start": { "line": 80, @@ -5730,8 +5730,8 @@ }, { "type": "IfStatement", - "start": 2375, - "end": 2528, + "start": 2379, + "end": 2532, "loc": { "start": { "line": 81, @@ -5744,8 +5744,8 @@ }, "test": { "type": "UnaryExpression", - "start": 2378, - "end": 2407, + "start": 2382, + "end": 2411, "loc": { "start": { "line": 81, @@ -5760,8 +5760,8 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 2379, - "end": 2407, + "start": 2383, + "end": 2411, "loc": { "start": { "line": 81, @@ -5774,8 +5774,8 @@ }, "object": { "type": "Identifier", - "start": 2379, - "end": 2385, + "start": 2383, + "end": 2389, "loc": { "start": { "line": 81, @@ -5791,8 +5791,8 @@ }, "property": { "type": "Identifier", - "start": 2386, - "end": 2407, + "start": 2390, + "end": 2411, "loc": { "start": { "line": 81, @@ -5814,8 +5814,8 @@ }, "consequent": { "type": "BlockStatement", - "start": 2408, - "end": 2528, + "start": 2412, + "end": 2532, "loc": { "start": { "line": 81, @@ -5829,8 +5829,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 2416, - "end": 2522, + "start": 2420, + "end": 2526, "loc": { "start": { "line": 82, @@ -5843,8 +5843,8 @@ }, "expression": { "type": "CallExpression", - "start": 2416, - "end": 2521, + "start": 2420, + "end": 2525, "loc": { "start": { "line": 82, @@ -5857,8 +5857,8 @@ }, "callee": { "type": "MemberExpression", - "start": 2416, - "end": 2429, + "start": 2420, + "end": 2433, "loc": { "start": { "line": 82, @@ -5871,8 +5871,8 @@ }, "object": { "type": "Identifier", - "start": 2416, - "end": 2423, + "start": 2420, + "end": 2427, "loc": { "start": { "line": 82, @@ -5888,8 +5888,8 @@ }, "property": { "type": "Identifier", - "start": 2424, - "end": 2429, + "start": 2428, + "end": 2433, "loc": { "start": { "line": 82, @@ -5908,8 +5908,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 2430, - "end": 2520, + "start": 2434, + "end": 2524, "loc": { "start": { "line": 82, @@ -5936,8 +5936,8 @@ }, { "type": "ReturnStatement", - "start": 2533, - "end": 2540, + "start": 2537, + "end": 2544, "loc": { "start": { "line": 84, @@ -5962,8 +5962,8 @@ { "type": "CommentBlock", "value": "*\n * Find and set the current WebGL element to the container\n * @return {null}\n ", - "start": 1782, - "end": 1866, + "start": 1786, + "end": 1870, "loc": { "start": { "line": 60, @@ -5979,8 +5979,8 @@ }, { "type": "EmptyStatement", - "start": 2546, - "end": 2547, + "start": 2550, + "end": 2551, "loc": { "start": { "line": 86, @@ -5994,8 +5994,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 2550, - "end": 2603, + "start": 2554, + "end": 2607, "loc": { "start": { "line": 89, @@ -6010,8 +6010,8 @@ "specifiers": [ { "type": "ExportSpecifier", - "start": 2560, - "end": 2573, + "start": 2564, + "end": 2577, "loc": { "start": { "line": 90, @@ -6024,8 +6024,8 @@ }, "local": { "type": "Identifier", - "start": 2560, - "end": 2573, + "start": 2564, + "end": 2577, "loc": { "start": { "line": 90, @@ -6041,8 +6041,8 @@ }, "exported": { "type": "Identifier", - "start": 2560, - "end": 2573, + "start": 2564, + "end": 2577, "loc": { "start": { "line": 90, @@ -6059,8 +6059,8 @@ }, { "type": "ExportSpecifier", - "start": 2577, - "end": 2586, + "start": 2581, + "end": 2590, "loc": { "start": { "line": 91, @@ -6073,8 +6073,8 @@ }, "local": { "type": "Identifier", - "start": 2577, - "end": 2586, + "start": 2581, + "end": 2590, "loc": { "start": { "line": 91, @@ -6090,8 +6090,8 @@ }, "exported": { "type": "Identifier", - "start": 2577, - "end": 2586, + "start": 2581, + "end": 2590, "loc": { "start": { "line": 91, @@ -6108,8 +6108,8 @@ }, { "type": "ExportSpecifier", - "start": 2590, - "end": 2600, + "start": 2594, + "end": 2604, "loc": { "start": { "line": 92, @@ -6122,8 +6122,8 @@ }, "local": { "type": "Identifier", - "start": 2590, - "end": 2600, + "start": 2594, + "end": 2604, "loc": { "start": { "line": 92, @@ -6139,8 +6139,8 @@ }, "exported": { "type": "Identifier", - "start": 2590, - "end": 2600, + "start": 2594, + "end": 2604, "loc": { "start": { "line": 92, @@ -6160,8 +6160,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 2550, - "end": 2603, + "start": 2554, + "end": 2607, "loc": { "start": { "line": 89, @@ -6175,7 +6175,7 @@ "declaration": { "type": "FunctionDeclaration", "start": 424, - "end": 1780, + "end": 1784, "loc": { "start": { "line": 28, @@ -6211,7 +6211,7 @@ "body": { "type": "BlockStatement", "start": 448, - "end": 1780, + "end": 1784, "loc": { "start": { "line": 28, @@ -7361,7 +7361,7 @@ { "type": "ExpressionStatement", "start": 795, - "end": 880, + "end": 882, "loc": { "start": { "line": 40, @@ -7369,13 +7369,13 @@ }, "end": { "line": 40, - "column": 89 + "column": 91 } }, "expression": { "type": "CallExpression", "start": 795, - "end": 879, + "end": 881, "loc": { "start": { "line": 40, @@ -7383,7 +7383,7 @@ }, "end": { "line": 40, - "column": 88 + "column": 90 } }, "callee": { @@ -7460,7 +7460,7 @@ { "type": "BinaryExpression", "start": 831, - "end": 878, + "end": 880, "loc": { "start": { "line": 40, @@ -7468,7 +7468,7 @@ }, "end": { "line": 40, - "column": 87 + "column": 89 } }, "left": { @@ -7558,7 +7558,7 @@ "right": { "type": "MemberExpression", "start": 854, - "end": 878, + "end": 880, "loc": { "start": { "line": 40, @@ -7566,7 +7566,7 @@ }, "end": { "line": 40, - "column": 87 + "column": 89 } }, "object": { @@ -7622,7 +7622,7 @@ "property": { "type": "Identifier", "start": 869, - "end": 878, + "end": 880, "loc": { "start": { "line": 40, @@ -7630,11 +7630,11 @@ }, "end": { "line": 40, - "column": 87 + "column": 89 }, - "identifierName": "antialias" + "identifierName": "superSample" }, - "name": "antialias" + "name": "superSample" }, "computed": false } @@ -7644,8 +7644,8 @@ }, { "type": "ExpressionStatement", - "start": 885, - "end": 972, + "start": 887, + "end": 976, "loc": { "start": { "line": 41, @@ -7653,13 +7653,13 @@ }, "end": { "line": 41, - "column": 91 + "column": 93 } }, "expression": { "type": "CallExpression", - "start": 885, - "end": 971, + "start": 887, + "end": 975, "loc": { "start": { "line": 41, @@ -7667,13 +7667,13 @@ }, "end": { "line": 41, - "column": 90 + "column": 92 } }, "callee": { "type": "MemberExpression", - "start": 885, - "end": 911, + "start": 887, + "end": 913, "loc": { "start": { "line": 41, @@ -7686,8 +7686,8 @@ }, "object": { "type": "Identifier", - "start": 885, - "end": 898, + "start": 887, + "end": 900, "loc": { "start": { "line": 41, @@ -7703,8 +7703,8 @@ }, "property": { "type": "Identifier", - "start": 899, - "end": 911, + "start": 901, + "end": 913, "loc": { "start": { "line": 41, @@ -7723,8 +7723,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 912, - "end": 920, + "start": 914, + "end": 922, "loc": { "start": { "line": 41, @@ -7743,8 +7743,8 @@ }, { "type": "BinaryExpression", - "start": 922, - "end": 970, + "start": 924, + "end": 974, "loc": { "start": { "line": 41, @@ -7752,13 +7752,13 @@ }, "end": { "line": 41, - "column": 89 + "column": 91 } }, "left": { "type": "MemberExpression", - "start": 922, - "end": 943, + "start": 924, + "end": 945, "loc": { "start": { "line": 41, @@ -7771,8 +7771,8 @@ }, "object": { "type": "MemberExpression", - "start": 922, - "end": 936, + "start": 924, + "end": 938, "loc": { "start": { "line": 41, @@ -7785,8 +7785,8 @@ }, "object": { "type": "Identifier", - "start": 922, - "end": 928, + "start": 924, + "end": 930, "loc": { "start": { "line": 41, @@ -7802,8 +7802,8 @@ }, "property": { "type": "Identifier", - "start": 929, - "end": 936, + "start": 931, + "end": 938, "loc": { "start": { "line": 41, @@ -7821,8 +7821,8 @@ }, "property": { "type": "Identifier", - "start": 937, - "end": 943, + "start": 939, + "end": 945, "loc": { "start": { "line": 41, @@ -7841,8 +7841,8 @@ "operator": "*", "right": { "type": "MemberExpression", - "start": 946, - "end": 970, + "start": 948, + "end": 974, "loc": { "start": { "line": 41, @@ -7850,13 +7850,13 @@ }, "end": { "line": 41, - "column": 89 + "column": 91 } }, "object": { "type": "MemberExpression", - "start": 946, - "end": 960, + "start": 948, + "end": 962, "loc": { "start": { "line": 41, @@ -7869,8 +7869,8 @@ }, "object": { "type": "Identifier", - "start": 946, - "end": 952, + "start": 948, + "end": 954, "loc": { "start": { "line": 41, @@ -7886,8 +7886,8 @@ }, "property": { "type": "Identifier", - "start": 953, - "end": 960, + "start": 955, + "end": 962, "loc": { "start": { "line": 41, @@ -7905,8 +7905,8 @@ }, "property": { "type": "Identifier", - "start": 961, - "end": 970, + "start": 963, + "end": 974, "loc": { "start": { "line": 41, @@ -7914,11 +7914,11 @@ }, "end": { "line": 41, - "column": 89 + "column": 91 }, - "identifierName": "antialias" + "identifierName": "superSample" }, - "name": "antialias" + "name": "superSample" }, "computed": false } @@ -7928,8 +7928,8 @@ }, { "type": "ExpressionStatement", - "start": 977, - "end": 1030, + "start": 981, + "end": 1034, "loc": { "start": { "line": 42, @@ -7942,8 +7942,8 @@ }, "expression": { "type": "CallExpression", - "start": 977, - "end": 1029, + "start": 981, + "end": 1033, "loc": { "start": { "line": 42, @@ -7956,8 +7956,8 @@ }, "callee": { "type": "MemberExpression", - "start": 977, - "end": 1008, + "start": 981, + "end": 1012, "loc": { "start": { "line": 42, @@ -7970,8 +7970,8 @@ }, "object": { "type": "MemberExpression", - "start": 977, - "end": 996, + "start": 981, + "end": 1000, "loc": { "start": { "line": 42, @@ -7984,8 +7984,8 @@ }, "object": { "type": "Identifier", - "start": 977, - "end": 990, + "start": 981, + "end": 994, "loc": { "start": { "line": 42, @@ -8001,8 +8001,8 @@ }, "property": { "type": "Identifier", - "start": 991, - "end": 996, + "start": 995, + "end": 1000, "loc": { "start": { "line": 42, @@ -8020,8 +8020,8 @@ }, "property": { "type": "Identifier", - "start": 997, - "end": 1008, + "start": 1001, + "end": 1012, "loc": { "start": { "line": 42, @@ -8040,8 +8040,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1009, - "end": 1019, + "start": 1013, + "end": 1023, "loc": { "start": { "line": 42, @@ -8060,8 +8060,8 @@ }, { "type": "StringLiteral", - "start": 1021, - "end": 1028, + "start": 1025, + "end": 1032, "loc": { "start": { "line": 42, @@ -8083,8 +8083,8 @@ }, { "type": "ExpressionStatement", - "start": 1035, - "end": 1098, + "start": 1039, + "end": 1102, "loc": { "start": { "line": 43, @@ -8097,8 +8097,8 @@ }, "expression": { "type": "CallExpression", - "start": 1035, - "end": 1097, + "start": 1039, + "end": 1101, "loc": { "start": { "line": 43, @@ -8111,8 +8111,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1035, - "end": 1066, + "start": 1039, + "end": 1070, "loc": { "start": { "line": 43, @@ -8125,8 +8125,8 @@ }, "object": { "type": "MemberExpression", - "start": 1035, - "end": 1054, + "start": 1039, + "end": 1058, "loc": { "start": { "line": 43, @@ -8139,8 +8139,8 @@ }, "object": { "type": "Identifier", - "start": 1035, - "end": 1048, + "start": 1039, + "end": 1052, "loc": { "start": { "line": 43, @@ -8156,8 +8156,8 @@ }, "property": { "type": "Identifier", - "start": 1049, - "end": 1054, + "start": 1053, + "end": 1058, "loc": { "start": { "line": 43, @@ -8175,8 +8175,8 @@ }, "property": { "type": "Identifier", - "start": 1055, - "end": 1066, + "start": 1059, + "end": 1070, "loc": { "start": { "line": 43, @@ -8195,8 +8195,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1067, - "end": 1074, + "start": 1071, + "end": 1078, "loc": { "start": { "line": 43, @@ -8215,8 +8215,8 @@ }, { "type": "MemberExpression", - "start": 1076, - "end": 1096, + "start": 1080, + "end": 1100, "loc": { "start": { "line": 43, @@ -8229,8 +8229,8 @@ }, "object": { "type": "MemberExpression", - "start": 1076, - "end": 1090, + "start": 1080, + "end": 1094, "loc": { "start": { "line": 43, @@ -8243,8 +8243,8 @@ }, "object": { "type": "Identifier", - "start": 1076, - "end": 1082, + "start": 1080, + "end": 1086, "loc": { "start": { "line": 43, @@ -8260,8 +8260,8 @@ }, "property": { "type": "Identifier", - "start": 1083, - "end": 1090, + "start": 1087, + "end": 1094, "loc": { "start": { "line": 43, @@ -8279,8 +8279,8 @@ }, "property": { "type": "Identifier", - "start": 1091, - "end": 1096, + "start": 1095, + "end": 1100, "loc": { "start": { "line": 43, @@ -8301,8 +8301,8 @@ }, { "type": "ExpressionStatement", - "start": 1103, - "end": 1168, + "start": 1107, + "end": 1172, "loc": { "start": { "line": 44, @@ -8315,8 +8315,8 @@ }, "expression": { "type": "CallExpression", - "start": 1103, - "end": 1167, + "start": 1107, + "end": 1171, "loc": { "start": { "line": 44, @@ -8329,8 +8329,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1103, - "end": 1134, + "start": 1107, + "end": 1138, "loc": { "start": { "line": 44, @@ -8343,8 +8343,8 @@ }, "object": { "type": "MemberExpression", - "start": 1103, - "end": 1122, + "start": 1107, + "end": 1126, "loc": { "start": { "line": 44, @@ -8357,8 +8357,8 @@ }, "object": { "type": "Identifier", - "start": 1103, - "end": 1116, + "start": 1107, + "end": 1120, "loc": { "start": { "line": 44, @@ -8374,8 +8374,8 @@ }, "property": { "type": "Identifier", - "start": 1117, - "end": 1122, + "start": 1121, + "end": 1126, "loc": { "start": { "line": 44, @@ -8393,8 +8393,8 @@ }, "property": { "type": "Identifier", - "start": 1123, - "end": 1134, + "start": 1127, + "end": 1138, "loc": { "start": { "line": 44, @@ -8413,8 +8413,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1135, - "end": 1143, + "start": 1139, + "end": 1147, "loc": { "start": { "line": 44, @@ -8433,8 +8433,8 @@ }, { "type": "MemberExpression", - "start": 1145, - "end": 1166, + "start": 1149, + "end": 1170, "loc": { "start": { "line": 44, @@ -8447,8 +8447,8 @@ }, "object": { "type": "MemberExpression", - "start": 1145, - "end": 1159, + "start": 1149, + "end": 1163, "loc": { "start": { "line": 44, @@ -8461,8 +8461,8 @@ }, "object": { "type": "Identifier", - "start": 1145, - "end": 1151, + "start": 1149, + "end": 1155, "loc": { "start": { "line": 44, @@ -8478,8 +8478,8 @@ }, "property": { "type": "Identifier", - "start": 1152, - "end": 1159, + "start": 1156, + "end": 1163, "loc": { "start": { "line": 44, @@ -8497,8 +8497,8 @@ }, "property": { "type": "Identifier", - "start": 1160, - "end": 1166, + "start": 1164, + "end": 1170, "loc": { "start": { "line": 44, @@ -8519,8 +8519,8 @@ }, { "type": "ExpressionStatement", - "start": 1173, - "end": 1245, + "start": 1177, + "end": 1249, "loc": { "start": { "line": 45, @@ -8533,8 +8533,8 @@ }, "expression": { "type": "CallExpression", - "start": 1173, - "end": 1244, + "start": 1177, + "end": 1248, "loc": { "start": { "line": 45, @@ -8547,8 +8547,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1173, - "end": 1204, + "start": 1177, + "end": 1208, "loc": { "start": { "line": 45, @@ -8561,8 +8561,8 @@ }, "object": { "type": "MemberExpression", - "start": 1173, - "end": 1192, + "start": 1177, + "end": 1196, "loc": { "start": { "line": 45, @@ -8575,8 +8575,8 @@ }, "object": { "type": "Identifier", - "start": 1173, - "end": 1186, + "start": 1177, + "end": 1190, "loc": { "start": { "line": 45, @@ -8592,8 +8592,8 @@ }, "property": { "type": "Identifier", - "start": 1187, - "end": 1192, + "start": 1191, + "end": 1196, "loc": { "start": { "line": 45, @@ -8611,8 +8611,8 @@ }, "property": { "type": "Identifier", - "start": 1193, - "end": 1204, + "start": 1197, + "end": 1208, "loc": { "start": { "line": 45, @@ -8631,8 +8631,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1205, - "end": 1214, + "start": 1209, + "end": 1218, "loc": { "start": { "line": 45, @@ -8651,8 +8651,8 @@ }, { "type": "MemberExpression", - "start": 1216, - "end": 1243, + "start": 1220, + "end": 1247, "loc": { "start": { "line": 45, @@ -8665,8 +8665,8 @@ }, "object": { "type": "MemberExpression", - "start": 1216, - "end": 1228, + "start": 1220, + "end": 1232, "loc": { "start": { "line": 45, @@ -8679,8 +8679,8 @@ }, "object": { "type": "Identifier", - "start": 1216, - "end": 1222, + "start": 1220, + "end": 1226, "loc": { "start": { "line": 45, @@ -8696,8 +8696,8 @@ }, "property": { "type": "Identifier", - "start": 1223, - "end": 1228, + "start": 1227, + "end": 1232, "loc": { "start": { "line": 45, @@ -8715,8 +8715,8 @@ }, "property": { "type": "Identifier", - "start": 1229, - "end": 1243, + "start": 1233, + "end": 1247, "loc": { "start": { "line": 45, @@ -8737,8 +8737,8 @@ }, { "type": "ExpressionStatement", - "start": 1250, - "end": 1338, + "start": 1254, + "end": 1342, "loc": { "start": { "line": 46, @@ -8751,8 +8751,8 @@ }, "expression": { "type": "CallExpression", - "start": 1250, - "end": 1337, + "start": 1254, + "end": 1341, "loc": { "start": { "line": 46, @@ -8765,8 +8765,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1250, - "end": 1281, + "start": 1254, + "end": 1285, "loc": { "start": { "line": 46, @@ -8779,8 +8779,8 @@ }, "object": { "type": "MemberExpression", - "start": 1250, - "end": 1269, + "start": 1254, + "end": 1273, "loc": { "start": { "line": 46, @@ -8793,8 +8793,8 @@ }, "object": { "type": "Identifier", - "start": 1250, - "end": 1263, + "start": 1254, + "end": 1267, "loc": { "start": { "line": 46, @@ -8810,8 +8810,8 @@ }, "property": { "type": "Identifier", - "start": 1264, - "end": 1269, + "start": 1268, + "end": 1273, "loc": { "start": { "line": 46, @@ -8829,8 +8829,8 @@ }, "property": { "type": "Identifier", - "start": 1270, - "end": 1281, + "start": 1274, + "end": 1285, "loc": { "start": { "line": 46, @@ -8849,8 +8849,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1282, - "end": 1305, + "start": 1286, + "end": 1309, "loc": { "start": { "line": 46, @@ -8863,8 +8863,8 @@ }, "object": { "type": "MemberExpression", - "start": 1282, - "end": 1296, + "start": 1286, + "end": 1300, "loc": { "start": { "line": 46, @@ -8877,8 +8877,8 @@ }, "object": { "type": "Identifier", - "start": 1282, - "end": 1288, + "start": 1286, + "end": 1292, "loc": { "start": { "line": 46, @@ -8894,8 +8894,8 @@ }, "property": { "type": "Identifier", - "start": 1289, - "end": 1296, + "start": 1293, + "end": 1300, "loc": { "start": { "line": 46, @@ -8913,8 +8913,8 @@ }, "property": { "type": "Identifier", - "start": 1297, - "end": 1305, + "start": 1301, + "end": 1309, "loc": { "start": { "line": 46, @@ -8932,8 +8932,8 @@ }, { "type": "BinaryExpression", - "start": 1307, - "end": 1336, + "start": 1311, + "end": 1340, "loc": { "start": { "line": 46, @@ -8946,8 +8946,8 @@ }, "left": { "type": "MemberExpression", - "start": 1307, - "end": 1329, + "start": 1311, + "end": 1333, "loc": { "start": { "line": 46, @@ -8960,8 +8960,8 @@ }, "object": { "type": "MemberExpression", - "start": 1307, - "end": 1321, + "start": 1311, + "end": 1325, "loc": { "start": { "line": 46, @@ -8974,8 +8974,8 @@ }, "object": { "type": "Identifier", - "start": 1307, - "end": 1313, + "start": 1311, + "end": 1317, "loc": { "start": { "line": 46, @@ -8991,8 +8991,8 @@ }, "property": { "type": "Identifier", - "start": 1314, - "end": 1321, + "start": 1318, + "end": 1325, "loc": { "start": { "line": 46, @@ -9010,8 +9010,8 @@ }, "property": { "type": "Identifier", - "start": 1322, - "end": 1329, + "start": 1326, + "end": 1333, "loc": { "start": { "line": 46, @@ -9030,8 +9030,8 @@ "operator": "+", "right": { "type": "StringLiteral", - "start": 1332, - "end": 1336, + "start": 1336, + "end": 1340, "loc": { "start": { "line": 46, @@ -9054,8 +9054,8 @@ }, { "type": "ExpressionStatement", - "start": 1343, - "end": 1416, + "start": 1347, + "end": 1420, "loc": { "start": { "line": 47, @@ -9068,8 +9068,8 @@ }, "expression": { "type": "CallExpression", - "start": 1343, - "end": 1415, + "start": 1347, + "end": 1419, "loc": { "start": { "line": 47, @@ -9082,8 +9082,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1343, - "end": 1374, + "start": 1347, + "end": 1378, "loc": { "start": { "line": 47, @@ -9096,8 +9096,8 @@ }, "object": { "type": "MemberExpression", - "start": 1343, - "end": 1362, + "start": 1347, + "end": 1366, "loc": { "start": { "line": 47, @@ -9110,8 +9110,8 @@ }, "object": { "type": "Identifier", - "start": 1343, - "end": 1356, + "start": 1347, + "end": 1360, "loc": { "start": { "line": 47, @@ -9127,8 +9127,8 @@ }, "property": { "type": "Identifier", - "start": 1357, - "end": 1362, + "start": 1361, + "end": 1366, "loc": { "start": { "line": 47, @@ -9146,8 +9146,8 @@ }, "property": { "type": "Identifier", - "start": 1363, - "end": 1374, + "start": 1367, + "end": 1378, "loc": { "start": { "line": 47, @@ -9166,8 +9166,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1375, - "end": 1383, + "start": 1379, + "end": 1387, "loc": { "start": { "line": 47, @@ -9186,8 +9186,8 @@ }, { "type": "BinaryExpression", - "start": 1385, - "end": 1414, + "start": 1389, + "end": 1418, "loc": { "start": { "line": 47, @@ -9200,8 +9200,8 @@ }, "left": { "type": "MemberExpression", - "start": 1385, - "end": 1407, + "start": 1389, + "end": 1411, "loc": { "start": { "line": 47, @@ -9214,8 +9214,8 @@ }, "object": { "type": "MemberExpression", - "start": 1385, - "end": 1399, + "start": 1389, + "end": 1403, "loc": { "start": { "line": 47, @@ -9228,8 +9228,8 @@ }, "object": { "type": "Identifier", - "start": 1385, - "end": 1391, + "start": 1389, + "end": 1395, "loc": { "start": { "line": 47, @@ -9245,8 +9245,8 @@ }, "property": { "type": "Identifier", - "start": 1392, - "end": 1399, + "start": 1396, + "end": 1403, "loc": { "start": { "line": 47, @@ -9264,8 +9264,8 @@ }, "property": { "type": "Identifier", - "start": 1400, - "end": 1407, + "start": 1404, + "end": 1411, "loc": { "start": { "line": 47, @@ -9284,8 +9284,8 @@ "operator": "+", "right": { "type": "StringLiteral", - "start": 1410, - "end": 1414, + "start": 1414, + "end": 1418, "loc": { "start": { "line": 47, @@ -9308,8 +9308,8 @@ }, { "type": "ExpressionStatement", - "start": 1421, - "end": 1471, + "start": 1425, + "end": 1475, "loc": { "start": { "line": 48, @@ -9322,8 +9322,8 @@ }, "expression": { "type": "CallExpression", - "start": 1421, - "end": 1470, + "start": 1425, + "end": 1474, "loc": { "start": { "line": 48, @@ -9336,8 +9336,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1421, - "end": 1452, + "start": 1425, + "end": 1456, "loc": { "start": { "line": 48, @@ -9350,8 +9350,8 @@ }, "object": { "type": "MemberExpression", - "start": 1421, - "end": 1440, + "start": 1425, + "end": 1444, "loc": { "start": { "line": 48, @@ -9364,8 +9364,8 @@ }, "object": { "type": "Identifier", - "start": 1421, - "end": 1434, + "start": 1425, + "end": 1438, "loc": { "start": { "line": 48, @@ -9381,8 +9381,8 @@ }, "property": { "type": "Identifier", - "start": 1435, - "end": 1440, + "start": 1439, + "end": 1444, "loc": { "start": { "line": 48, @@ -9400,8 +9400,8 @@ }, "property": { "type": "Identifier", - "start": 1441, - "end": 1452, + "start": 1445, + "end": 1456, "loc": { "start": { "line": 48, @@ -9420,8 +9420,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1453, - "end": 1462, + "start": 1457, + "end": 1466, "loc": { "start": { "line": 48, @@ -9440,8 +9440,8 @@ }, { "type": "NumericLiteral", - "start": 1464, - "end": 1469, + "start": 1468, + "end": 1473, "loc": { "start": { "line": 48, @@ -9463,8 +9463,8 @@ }, { "type": "ExpressionStatement", - "start": 1476, - "end": 1534, + "start": 1480, + "end": 1538, "loc": { "start": { "line": 49, @@ -9477,8 +9477,8 @@ }, "expression": { "type": "CallExpression", - "start": 1476, - "end": 1533, + "start": 1480, + "end": 1537, "loc": { "start": { "line": 49, @@ -9491,8 +9491,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1476, - "end": 1507, + "start": 1480, + "end": 1511, "loc": { "start": { "line": 49, @@ -9505,8 +9505,8 @@ }, "object": { "type": "MemberExpression", - "start": 1476, - "end": 1495, + "start": 1480, + "end": 1499, "loc": { "start": { "line": 49, @@ -9519,8 +9519,8 @@ }, "object": { "type": "Identifier", - "start": 1476, - "end": 1489, + "start": 1480, + "end": 1493, "loc": { "start": { "line": 49, @@ -9536,8 +9536,8 @@ }, "property": { "type": "Identifier", - "start": 1490, - "end": 1495, + "start": 1494, + "end": 1499, "loc": { "start": { "line": 49, @@ -9555,8 +9555,8 @@ }, "property": { "type": "Identifier", - "start": 1496, - "end": 1507, + "start": 1500, + "end": 1511, "loc": { "start": { "line": 49, @@ -9575,8 +9575,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1508, - "end": 1524, + "start": 1512, + "end": 1528, "loc": { "start": { "line": 49, @@ -9595,8 +9595,8 @@ }, { "type": "StringLiteral", - "start": 1526, - "end": 1532, + "start": 1530, + "end": 1536, "loc": { "start": { "line": 49, @@ -9618,8 +9618,8 @@ }, { "type": "IfStatement", - "start": 1539, - "end": 1622, + "start": 1543, + "end": 1626, "loc": { "start": { "line": 50, @@ -9632,8 +9632,8 @@ }, "test": { "type": "MemberExpression", - "start": 1542, - "end": 1559, + "start": 1546, + "end": 1563, "loc": { "start": { "line": 50, @@ -9646,8 +9646,8 @@ }, "object": { "type": "MemberExpression", - "start": 1542, - "end": 1552, + "start": 1546, + "end": 1556, "loc": { "start": { "line": 50, @@ -9660,8 +9660,8 @@ }, "object": { "type": "Identifier", - "start": 1542, - "end": 1548, + "start": 1546, + "end": 1552, "loc": { "start": { "line": 50, @@ -9677,8 +9677,8 @@ }, "property": { "type": "Identifier", - "start": 1549, - "end": 1552, + "start": 1553, + "end": 1556, "loc": { "start": { "line": 50, @@ -9696,8 +9696,8 @@ }, "property": { "type": "Identifier", - "start": 1553, - "end": 1559, + "start": 1557, + "end": 1563, "loc": { "start": { "line": 50, @@ -9715,8 +9715,8 @@ }, "consequent": { "type": "ExpressionStatement", - "start": 1561, - "end": 1622, + "start": 1565, + "end": 1626, "loc": { "start": { "line": 50, @@ -9729,8 +9729,8 @@ }, "expression": { "type": "CallExpression", - "start": 1561, - "end": 1621, + "start": 1565, + "end": 1625, "loc": { "start": { "line": 50, @@ -9743,8 +9743,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1561, - "end": 1592, + "start": 1565, + "end": 1596, "loc": { "start": { "line": 50, @@ -9757,8 +9757,8 @@ }, "object": { "type": "MemberExpression", - "start": 1561, - "end": 1580, + "start": 1565, + "end": 1584, "loc": { "start": { "line": 50, @@ -9771,8 +9771,8 @@ }, "object": { "type": "Identifier", - "start": 1561, - "end": 1574, + "start": 1565, + "end": 1578, "loc": { "start": { "line": 50, @@ -9788,8 +9788,8 @@ }, "property": { "type": "Identifier", - "start": 1575, - "end": 1580, + "start": 1579, + "end": 1584, "loc": { "start": { "line": 50, @@ -9807,8 +9807,8 @@ }, "property": { "type": "Identifier", - "start": 1581, - "end": 1592, + "start": 1585, + "end": 1596, "loc": { "start": { "line": 50, @@ -9827,8 +9827,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 1593, - "end": 1601, + "start": 1597, + "end": 1605, "loc": { "start": { "line": 50, @@ -9847,8 +9847,8 @@ }, { "type": "StringLiteral", - "start": 1603, - "end": 1620, + "start": 1607, + "end": 1624, "loc": { "start": { "line": 50, @@ -9872,8 +9872,8 @@ }, { "type": "ExpressionStatement", - "start": 1627, - "end": 1662, + "start": 1631, + "end": 1666, "loc": { "start": { "line": 51, @@ -9886,8 +9886,8 @@ }, "expression": { "type": "CallExpression", - "start": 1627, - "end": 1661, + "start": 1631, + "end": 1665, "loc": { "start": { "line": 51, @@ -9900,8 +9900,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1627, - "end": 1646, + "start": 1631, + "end": 1650, "loc": { "start": { "line": 51, @@ -9914,8 +9914,8 @@ }, "object": { "type": "Identifier", - "start": 1627, - "end": 1634, + "start": 1631, + "end": 1638, "loc": { "start": { "line": 51, @@ -9931,8 +9931,8 @@ }, "property": { "type": "Identifier", - "start": 1635, - "end": 1646, + "start": 1639, + "end": 1650, "loc": { "start": { "line": 51, @@ -9951,8 +9951,8 @@ "arguments": [ { "type": "Identifier", - "start": 1647, - "end": 1660, + "start": 1651, + "end": 1664, "loc": { "start": { "line": 51, @@ -9971,8 +9971,8 @@ }, { "type": "ExpressionStatement", - "start": 1666, - "end": 1701, + "start": 1670, + "end": 1705, "loc": { "start": { "line": 53, @@ -9985,8 +9985,8 @@ }, "expression": { "type": "CallExpression", - "start": 1666, - "end": 1700, + "start": 1670, + "end": 1704, "loc": { "start": { "line": 53, @@ -9999,8 +9999,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1666, - "end": 1691, + "start": 1670, + "end": 1695, "loc": { "start": { "line": 53, @@ -10013,8 +10013,8 @@ }, "object": { "type": "MemberExpression", - "start": 1666, - "end": 1679, + "start": 1670, + "end": 1683, "loc": { "start": { "line": 53, @@ -10027,8 +10027,8 @@ }, "object": { "type": "Identifier", - "start": 1666, - "end": 1674, + "start": 1670, + "end": 1678, "loc": { "start": { "line": 53, @@ -10044,8 +10044,8 @@ }, "property": { "type": "Identifier", - "start": 1675, - "end": 1679, + "start": 1679, + "end": 1683, "loc": { "start": { "line": 53, @@ -10063,8 +10063,8 @@ }, "property": { "type": "Identifier", - "start": 1680, - "end": 1691, + "start": 1684, + "end": 1695, "loc": { "start": { "line": 53, @@ -10083,8 +10083,8 @@ "arguments": [ { "type": "Identifier", - "start": 1692, - "end": 1699, + "start": 1696, + "end": 1703, "loc": { "start": { "line": 53, @@ -10103,8 +10103,8 @@ }, { "type": "ExpressionStatement", - "start": 1704, - "end": 1761, + "start": 1708, + "end": 1765, "loc": { "start": { "line": 54, @@ -10117,8 +10117,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 1704, - "end": 1760, + "start": 1708, + "end": 1764, "loc": { "start": { "line": 54, @@ -10132,8 +10132,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 1704, - "end": 1714, + "start": 1708, + "end": 1718, "loc": { "start": { "line": 54, @@ -10149,8 +10149,8 @@ }, "right": { "type": "CallExpression", - "start": 1717, - "end": 1760, + "start": 1721, + "end": 1764, "loc": { "start": { "line": 54, @@ -10163,8 +10163,8 @@ }, "callee": { "type": "MemberExpression", - "start": 1717, - "end": 1740, + "start": 1721, + "end": 1744, "loc": { "start": { "line": 54, @@ -10177,8 +10177,8 @@ }, "object": { "type": "Identifier", - "start": 1717, - "end": 1725, + "start": 1721, + "end": 1729, "loc": { "start": { "line": 54, @@ -10194,8 +10194,8 @@ }, "property": { "type": "Identifier", - "start": 1726, - "end": 1740, + "start": 1730, + "end": 1744, "loc": { "start": { "line": 54, @@ -10214,8 +10214,8 @@ "arguments": [ { "type": "MemberExpression", - "start": 1741, - "end": 1759, + "start": 1745, + "end": 1763, "loc": { "start": { "line": 54, @@ -10228,8 +10228,8 @@ }, "object": { "type": "MemberExpression", - "start": 1741, - "end": 1752, + "start": 1745, + "end": 1756, "loc": { "start": { "line": 54, @@ -10242,8 +10242,8 @@ }, "object": { "type": "Identifier", - "start": 1741, - "end": 1747, + "start": 1745, + "end": 1751, "loc": { "start": { "line": 54, @@ -10259,8 +10259,8 @@ }, "property": { "type": "Identifier", - "start": 1748, - "end": 1752, + "start": 1752, + "end": 1756, "loc": { "start": { "line": 54, @@ -10278,8 +10278,8 @@ }, "property": { "type": "Identifier", - "start": 1753, - "end": 1759, + "start": 1757, + "end": 1763, "loc": { "start": { "line": 54, @@ -10301,8 +10301,8 @@ }, { "type": "ExpressionStatement", - "start": 1765, - "end": 1777, + "start": 1769, + "end": 1781, "loc": { "start": { "line": 56, @@ -10315,8 +10315,8 @@ }, "expression": { "type": "CallExpression", - "start": 1765, - "end": 1776, + "start": 1769, + "end": 1780, "loc": { "start": { "line": 56, @@ -10329,8 +10329,8 @@ }, "callee": { "type": "Identifier", - "start": 1765, - "end": 1774, + "start": 1769, + "end": 1778, "loc": { "start": { "line": 56, @@ -10373,8 +10373,8 @@ { "type": "CommentBlock", "value": "*\n * Find and set the current WebGL element to the container\n * @return {null}\n ", - "start": 1782, - "end": 1866, + "start": 1786, + "end": 1870, "loc": { "start": { "line": 60, @@ -10394,8 +10394,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 2550, - "end": 2603, + "start": 2554, + "end": 2607, "loc": { "start": { "line": 89, @@ -10517,8 +10517,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 2550, - "end": 2603, + "start": 2554, + "end": 2607, "loc": { "start": { "line": 89, @@ -10693,8 +10693,8 @@ { "type": "CommentBlock", "value": "*\n * Find and set the current WebGL element to the container\n * @return {null}\n ", - "start": 1782, - "end": 1866, + "start": 1786, + "end": 1870, "loc": { "start": { "line": 60, @@ -13917,9 +13917,9 @@ "postfix": false, "binop": null }, - "value": "antialias", + "value": "superSample", "start": 869, - "end": 878, + "end": 880, "loc": { "start": { "line": 40, @@ -13927,7 +13927,7 @@ }, "end": { "line": 40, - "column": 87 + "column": 89 } } }, @@ -13943,16 +13943,16 @@ "postfix": false, "binop": null }, - "start": 878, - "end": 879, + "start": 880, + "end": 881, "loc": { "start": { "line": 40, - "column": 87 + "column": 89 }, "end": { "line": 40, - "column": 88 + "column": 90 } } }, @@ -13969,16 +13969,16 @@ "binop": null, "updateContext": null }, - "start": 879, - "end": 880, + "start": 881, + "end": 882, "loc": { "start": { "line": 40, - "column": 88 + "column": 90 }, "end": { "line": 40, - "column": 89 + "column": 91 } } }, @@ -13995,8 +13995,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 885, - "end": 898, + "start": 887, + "end": 900, "loc": { "start": { "line": 41, @@ -14021,8 +14021,8 @@ "binop": null, "updateContext": null }, - "start": 898, - "end": 899, + "start": 900, + "end": 901, "loc": { "start": { "line": 41, @@ -14047,8 +14047,8 @@ "binop": null }, "value": "setAttribute", - "start": 899, - "end": 911, + "start": 901, + "end": 913, "loc": { "start": { "line": 41, @@ -14072,8 +14072,8 @@ "postfix": false, "binop": null }, - "start": 911, - "end": 912, + "start": 913, + "end": 914, "loc": { "start": { "line": 41, @@ -14099,8 +14099,8 @@ "updateContext": null }, "value": "height", - "start": 912, - "end": 920, + "start": 914, + "end": 922, "loc": { "start": { "line": 41, @@ -14125,8 +14125,8 @@ "binop": null, "updateContext": null }, - "start": 920, - "end": 921, + "start": 922, + "end": 923, "loc": { "start": { "line": 41, @@ -14151,8 +14151,8 @@ "binop": null }, "value": "config", - "start": 922, - "end": 928, + "start": 924, + "end": 930, "loc": { "start": { "line": 41, @@ -14177,8 +14177,8 @@ "binop": null, "updateContext": null }, - "start": 928, - "end": 929, + "start": 930, + "end": 931, "loc": { "start": { "line": 41, @@ -14203,8 +14203,8 @@ "binop": null }, "value": "display", - "start": 929, - "end": 936, + "start": 931, + "end": 938, "loc": { "start": { "line": 41, @@ -14229,8 +14229,8 @@ "binop": null, "updateContext": null }, - "start": 936, - "end": 937, + "start": 938, + "end": 939, "loc": { "start": { "line": 41, @@ -14255,8 +14255,8 @@ "binop": null }, "value": "height", - "start": 937, - "end": 943, + "start": 939, + "end": 945, "loc": { "start": { "line": 41, @@ -14282,8 +14282,8 @@ "updateContext": null }, "value": "*", - "start": 944, - "end": 945, + "start": 946, + "end": 947, "loc": { "start": { "line": 41, @@ -14308,8 +14308,8 @@ "binop": null }, "value": "config", - "start": 946, - "end": 952, + "start": 948, + "end": 954, "loc": { "start": { "line": 41, @@ -14334,8 +14334,8 @@ "binop": null, "updateContext": null }, - "start": 952, - "end": 953, + "start": 954, + "end": 955, "loc": { "start": { "line": 41, @@ -14360,8 +14360,8 @@ "binop": null }, "value": "display", - "start": 953, - "end": 960, + "start": 955, + "end": 962, "loc": { "start": { "line": 41, @@ -14386,8 +14386,8 @@ "binop": null, "updateContext": null }, - "start": 960, - "end": 961, + "start": 962, + "end": 963, "loc": { "start": { "line": 41, @@ -14411,9 +14411,9 @@ "postfix": false, "binop": null }, - "value": "antialias", - "start": 961, - "end": 970, + "value": "superSample", + "start": 963, + "end": 974, "loc": { "start": { "line": 41, @@ -14421,7 +14421,7 @@ }, "end": { "line": 41, - "column": 89 + "column": 91 } } }, @@ -14437,16 +14437,16 @@ "postfix": false, "binop": null }, - "start": 970, - "end": 971, + "start": 974, + "end": 975, "loc": { "start": { "line": 41, - "column": 89 + "column": 91 }, "end": { "line": 41, - "column": 90 + "column": 92 } } }, @@ -14463,16 +14463,16 @@ "binop": null, "updateContext": null }, - "start": 971, - "end": 972, + "start": 975, + "end": 976, "loc": { "start": { "line": 41, - "column": 90 + "column": 92 }, "end": { "line": 41, - "column": 91 + "column": 93 } } }, @@ -14489,8 +14489,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 977, - "end": 990, + "start": 981, + "end": 994, "loc": { "start": { "line": 42, @@ -14515,8 +14515,8 @@ "binop": null, "updateContext": null }, - "start": 990, - "end": 991, + "start": 994, + "end": 995, "loc": { "start": { "line": 42, @@ -14541,8 +14541,8 @@ "binop": null }, "value": "style", - "start": 991, - "end": 996, + "start": 995, + "end": 1000, "loc": { "start": { "line": 42, @@ -14567,8 +14567,8 @@ "binop": null, "updateContext": null }, - "start": 996, - "end": 997, + "start": 1000, + "end": 1001, "loc": { "start": { "line": 42, @@ -14593,8 +14593,8 @@ "binop": null }, "value": "setProperty", - "start": 997, - "end": 1008, + "start": 1001, + "end": 1012, "loc": { "start": { "line": 42, @@ -14618,8 +14618,8 @@ "postfix": false, "binop": null }, - "start": 1008, - "end": 1009, + "start": 1012, + "end": 1013, "loc": { "start": { "line": 42, @@ -14645,8 +14645,8 @@ "updateContext": null }, "value": "position", - "start": 1009, - "end": 1019, + "start": 1013, + "end": 1023, "loc": { "start": { "line": 42, @@ -14671,8 +14671,8 @@ "binop": null, "updateContext": null }, - "start": 1019, - "end": 1020, + "start": 1023, + "end": 1024, "loc": { "start": { "line": 42, @@ -14698,8 +14698,8 @@ "updateContext": null }, "value": "fixed", - "start": 1021, - "end": 1028, + "start": 1025, + "end": 1032, "loc": { "start": { "line": 42, @@ -14723,8 +14723,8 @@ "postfix": false, "binop": null }, - "start": 1028, - "end": 1029, + "start": 1032, + "end": 1033, "loc": { "start": { "line": 42, @@ -14749,8 +14749,8 @@ "binop": null, "updateContext": null }, - "start": 1029, - "end": 1030, + "start": 1033, + "end": 1034, "loc": { "start": { "line": 42, @@ -14775,8 +14775,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1035, - "end": 1048, + "start": 1039, + "end": 1052, "loc": { "start": { "line": 43, @@ -14801,8 +14801,8 @@ "binop": null, "updateContext": null }, - "start": 1048, - "end": 1049, + "start": 1052, + "end": 1053, "loc": { "start": { "line": 43, @@ -14827,8 +14827,8 @@ "binop": null }, "value": "style", - "start": 1049, - "end": 1054, + "start": 1053, + "end": 1058, "loc": { "start": { "line": 43, @@ -14853,8 +14853,8 @@ "binop": null, "updateContext": null }, - "start": 1054, - "end": 1055, + "start": 1058, + "end": 1059, "loc": { "start": { "line": 43, @@ -14879,8 +14879,8 @@ "binop": null }, "value": "setProperty", - "start": 1055, - "end": 1066, + "start": 1059, + "end": 1070, "loc": { "start": { "line": 43, @@ -14904,8 +14904,8 @@ "postfix": false, "binop": null }, - "start": 1066, - "end": 1067, + "start": 1070, + "end": 1071, "loc": { "start": { "line": 43, @@ -14931,8 +14931,8 @@ "updateContext": null }, "value": "width", - "start": 1067, - "end": 1074, + "start": 1071, + "end": 1078, "loc": { "start": { "line": 43, @@ -14957,8 +14957,8 @@ "binop": null, "updateContext": null }, - "start": 1074, - "end": 1075, + "start": 1078, + "end": 1079, "loc": { "start": { "line": 43, @@ -14983,8 +14983,8 @@ "binop": null }, "value": "config", - "start": 1076, - "end": 1082, + "start": 1080, + "end": 1086, "loc": { "start": { "line": 43, @@ -15009,8 +15009,8 @@ "binop": null, "updateContext": null }, - "start": 1082, - "end": 1083, + "start": 1086, + "end": 1087, "loc": { "start": { "line": 43, @@ -15035,8 +15035,8 @@ "binop": null }, "value": "display", - "start": 1083, - "end": 1090, + "start": 1087, + "end": 1094, "loc": { "start": { "line": 43, @@ -15061,8 +15061,8 @@ "binop": null, "updateContext": null }, - "start": 1090, - "end": 1091, + "start": 1094, + "end": 1095, "loc": { "start": { "line": 43, @@ -15087,8 +15087,8 @@ "binop": null }, "value": "width", - "start": 1091, - "end": 1096, + "start": 1095, + "end": 1100, "loc": { "start": { "line": 43, @@ -15112,8 +15112,8 @@ "postfix": false, "binop": null }, - "start": 1096, - "end": 1097, + "start": 1100, + "end": 1101, "loc": { "start": { "line": 43, @@ -15138,8 +15138,8 @@ "binop": null, "updateContext": null }, - "start": 1097, - "end": 1098, + "start": 1101, + "end": 1102, "loc": { "start": { "line": 43, @@ -15164,8 +15164,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1103, - "end": 1116, + "start": 1107, + "end": 1120, "loc": { "start": { "line": 44, @@ -15190,8 +15190,8 @@ "binop": null, "updateContext": null }, - "start": 1116, - "end": 1117, + "start": 1120, + "end": 1121, "loc": { "start": { "line": 44, @@ -15216,8 +15216,8 @@ "binop": null }, "value": "style", - "start": 1117, - "end": 1122, + "start": 1121, + "end": 1126, "loc": { "start": { "line": 44, @@ -15242,8 +15242,8 @@ "binop": null, "updateContext": null }, - "start": 1122, - "end": 1123, + "start": 1126, + "end": 1127, "loc": { "start": { "line": 44, @@ -15268,8 +15268,8 @@ "binop": null }, "value": "setProperty", - "start": 1123, - "end": 1134, + "start": 1127, + "end": 1138, "loc": { "start": { "line": 44, @@ -15293,8 +15293,8 @@ "postfix": false, "binop": null }, - "start": 1134, - "end": 1135, + "start": 1138, + "end": 1139, "loc": { "start": { "line": 44, @@ -15320,8 +15320,8 @@ "updateContext": null }, "value": "height", - "start": 1135, - "end": 1143, + "start": 1139, + "end": 1147, "loc": { "start": { "line": 44, @@ -15346,8 +15346,8 @@ "binop": null, "updateContext": null }, - "start": 1143, - "end": 1144, + "start": 1147, + "end": 1148, "loc": { "start": { "line": 44, @@ -15372,8 +15372,8 @@ "binop": null }, "value": "config", - "start": 1145, - "end": 1151, + "start": 1149, + "end": 1155, "loc": { "start": { "line": 44, @@ -15398,8 +15398,8 @@ "binop": null, "updateContext": null }, - "start": 1151, - "end": 1152, + "start": 1155, + "end": 1156, "loc": { "start": { "line": 44, @@ -15424,8 +15424,8 @@ "binop": null }, "value": "display", - "start": 1152, - "end": 1159, + "start": 1156, + "end": 1163, "loc": { "start": { "line": 44, @@ -15450,8 +15450,8 @@ "binop": null, "updateContext": null }, - "start": 1159, - "end": 1160, + "start": 1163, + "end": 1164, "loc": { "start": { "line": 44, @@ -15476,8 +15476,8 @@ "binop": null }, "value": "height", - "start": 1160, - "end": 1166, + "start": 1164, + "end": 1170, "loc": { "start": { "line": 44, @@ -15501,8 +15501,8 @@ "postfix": false, "binop": null }, - "start": 1166, - "end": 1167, + "start": 1170, + "end": 1171, "loc": { "start": { "line": 44, @@ -15527,8 +15527,8 @@ "binop": null, "updateContext": null }, - "start": 1167, - "end": 1168, + "start": 1171, + "end": 1172, "loc": { "start": { "line": 44, @@ -15553,8 +15553,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1173, - "end": 1186, + "start": 1177, + "end": 1190, "loc": { "start": { "line": 45, @@ -15579,8 +15579,8 @@ "binop": null, "updateContext": null }, - "start": 1186, - "end": 1187, + "start": 1190, + "end": 1191, "loc": { "start": { "line": 45, @@ -15605,8 +15605,8 @@ "binop": null }, "value": "style", - "start": 1187, - "end": 1192, + "start": 1191, + "end": 1196, "loc": { "start": { "line": 45, @@ -15631,8 +15631,8 @@ "binop": null, "updateContext": null }, - "start": 1192, - "end": 1193, + "start": 1196, + "end": 1197, "loc": { "start": { "line": 45, @@ -15657,8 +15657,8 @@ "binop": null }, "value": "setProperty", - "start": 1193, - "end": 1204, + "start": 1197, + "end": 1208, "loc": { "start": { "line": 45, @@ -15682,8 +15682,8 @@ "postfix": false, "binop": null }, - "start": 1204, - "end": 1205, + "start": 1208, + "end": 1209, "loc": { "start": { "line": 45, @@ -15709,8 +15709,8 @@ "updateContext": null }, "value": "opacity", - "start": 1205, - "end": 1214, + "start": 1209, + "end": 1218, "loc": { "start": { "line": 45, @@ -15735,8 +15735,8 @@ "binop": null, "updateContext": null }, - "start": 1214, - "end": 1215, + "start": 1218, + "end": 1219, "loc": { "start": { "line": 45, @@ -15761,8 +15761,8 @@ "binop": null }, "value": "config", - "start": 1216, - "end": 1222, + "start": 1220, + "end": 1226, "loc": { "start": { "line": 45, @@ -15787,8 +15787,8 @@ "binop": null, "updateContext": null }, - "start": 1222, - "end": 1223, + "start": 1226, + "end": 1227, "loc": { "start": { "line": 45, @@ -15813,8 +15813,8 @@ "binop": null }, "value": "react", - "start": 1223, - "end": 1228, + "start": 1227, + "end": 1232, "loc": { "start": { "line": 45, @@ -15839,8 +15839,8 @@ "binop": null, "updateContext": null }, - "start": 1228, - "end": 1229, + "start": 1232, + "end": 1233, "loc": { "start": { "line": 45, @@ -15865,8 +15865,8 @@ "binop": null }, "value": "opacityDefault", - "start": 1229, - "end": 1243, + "start": 1233, + "end": 1247, "loc": { "start": { "line": 45, @@ -15890,8 +15890,8 @@ "postfix": false, "binop": null }, - "start": 1243, - "end": 1244, + "start": 1247, + "end": 1248, "loc": { "start": { "line": 45, @@ -15916,8 +15916,8 @@ "binop": null, "updateContext": null }, - "start": 1244, - "end": 1245, + "start": 1248, + "end": 1249, "loc": { "start": { "line": 45, @@ -15942,8 +15942,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1250, - "end": 1263, + "start": 1254, + "end": 1267, "loc": { "start": { "line": 46, @@ -15968,8 +15968,8 @@ "binop": null, "updateContext": null }, - "start": 1263, - "end": 1264, + "start": 1267, + "end": 1268, "loc": { "start": { "line": 46, @@ -15994,8 +15994,8 @@ "binop": null }, "value": "style", - "start": 1264, - "end": 1269, + "start": 1268, + "end": 1273, "loc": { "start": { "line": 46, @@ -16020,8 +16020,8 @@ "binop": null, "updateContext": null }, - "start": 1269, - "end": 1270, + "start": 1273, + "end": 1274, "loc": { "start": { "line": 46, @@ -16046,8 +16046,8 @@ "binop": null }, "value": "setProperty", - "start": 1270, - "end": 1281, + "start": 1274, + "end": 1285, "loc": { "start": { "line": 46, @@ -16071,8 +16071,8 @@ "postfix": false, "binop": null }, - "start": 1281, - "end": 1282, + "start": 1285, + "end": 1286, "loc": { "start": { "line": 46, @@ -16097,8 +16097,8 @@ "binop": null }, "value": "config", - "start": 1282, - "end": 1288, + "start": 1286, + "end": 1292, "loc": { "start": { "line": 46, @@ -16123,8 +16123,8 @@ "binop": null, "updateContext": null }, - "start": 1288, - "end": 1289, + "start": 1292, + "end": 1293, "loc": { "start": { "line": 46, @@ -16149,8 +16149,8 @@ "binop": null }, "value": "display", - "start": 1289, - "end": 1296, + "start": 1293, + "end": 1300, "loc": { "start": { "line": 46, @@ -16175,8 +16175,8 @@ "binop": null, "updateContext": null }, - "start": 1296, - "end": 1297, + "start": 1300, + "end": 1301, "loc": { "start": { "line": 46, @@ -16201,8 +16201,8 @@ "binop": null }, "value": "position", - "start": 1297, - "end": 1305, + "start": 1301, + "end": 1309, "loc": { "start": { "line": 46, @@ -16227,8 +16227,8 @@ "binop": null, "updateContext": null }, - "start": 1305, - "end": 1306, + "start": 1309, + "end": 1310, "loc": { "start": { "line": 46, @@ -16253,8 +16253,8 @@ "binop": null }, "value": "config", - "start": 1307, - "end": 1313, + "start": 1311, + "end": 1317, "loc": { "start": { "line": 46, @@ -16279,8 +16279,8 @@ "binop": null, "updateContext": null }, - "start": 1313, - "end": 1314, + "start": 1317, + "end": 1318, "loc": { "start": { "line": 46, @@ -16305,8 +16305,8 @@ "binop": null }, "value": "display", - "start": 1314, - "end": 1321, + "start": 1318, + "end": 1325, "loc": { "start": { "line": 46, @@ -16331,8 +16331,8 @@ "binop": null, "updateContext": null }, - "start": 1321, - "end": 1322, + "start": 1325, + "end": 1326, "loc": { "start": { "line": 46, @@ -16357,8 +16357,8 @@ "binop": null }, "value": "hOffset", - "start": 1322, - "end": 1329, + "start": 1326, + "end": 1333, "loc": { "start": { "line": 46, @@ -16384,8 +16384,8 @@ "updateContext": null }, "value": "+", - "start": 1330, - "end": 1331, + "start": 1334, + "end": 1335, "loc": { "start": { "line": 46, @@ -16411,8 +16411,8 @@ "updateContext": null }, "value": "px", - "start": 1332, - "end": 1336, + "start": 1336, + "end": 1340, "loc": { "start": { "line": 46, @@ -16436,8 +16436,8 @@ "postfix": false, "binop": null }, - "start": 1336, - "end": 1337, + "start": 1340, + "end": 1341, "loc": { "start": { "line": 46, @@ -16462,8 +16462,8 @@ "binop": null, "updateContext": null }, - "start": 1337, - "end": 1338, + "start": 1341, + "end": 1342, "loc": { "start": { "line": 46, @@ -16488,8 +16488,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1343, - "end": 1356, + "start": 1347, + "end": 1360, "loc": { "start": { "line": 47, @@ -16514,8 +16514,8 @@ "binop": null, "updateContext": null }, - "start": 1356, - "end": 1357, + "start": 1360, + "end": 1361, "loc": { "start": { "line": 47, @@ -16540,8 +16540,8 @@ "binop": null }, "value": "style", - "start": 1357, - "end": 1362, + "start": 1361, + "end": 1366, "loc": { "start": { "line": 47, @@ -16566,8 +16566,8 @@ "binop": null, "updateContext": null }, - "start": 1362, - "end": 1363, + "start": 1366, + "end": 1367, "loc": { "start": { "line": 47, @@ -16592,8 +16592,8 @@ "binop": null }, "value": "setProperty", - "start": 1363, - "end": 1374, + "start": 1367, + "end": 1378, "loc": { "start": { "line": 47, @@ -16617,8 +16617,8 @@ "postfix": false, "binop": null }, - "start": 1374, - "end": 1375, + "start": 1378, + "end": 1379, "loc": { "start": { "line": 47, @@ -16644,8 +16644,8 @@ "updateContext": null }, "value": "bottom", - "start": 1375, - "end": 1383, + "start": 1379, + "end": 1387, "loc": { "start": { "line": 47, @@ -16670,8 +16670,8 @@ "binop": null, "updateContext": null }, - "start": 1383, - "end": 1384, + "start": 1387, + "end": 1388, "loc": { "start": { "line": 47, @@ -16696,8 +16696,8 @@ "binop": null }, "value": "config", - "start": 1385, - "end": 1391, + "start": 1389, + "end": 1395, "loc": { "start": { "line": 47, @@ -16722,8 +16722,8 @@ "binop": null, "updateContext": null }, - "start": 1391, - "end": 1392, + "start": 1395, + "end": 1396, "loc": { "start": { "line": 47, @@ -16748,8 +16748,8 @@ "binop": null }, "value": "display", - "start": 1392, - "end": 1399, + "start": 1396, + "end": 1403, "loc": { "start": { "line": 47, @@ -16774,8 +16774,8 @@ "binop": null, "updateContext": null }, - "start": 1399, - "end": 1400, + "start": 1403, + "end": 1404, "loc": { "start": { "line": 47, @@ -16800,8 +16800,8 @@ "binop": null }, "value": "vOffset", - "start": 1400, - "end": 1407, + "start": 1404, + "end": 1411, "loc": { "start": { "line": 47, @@ -16827,8 +16827,8 @@ "updateContext": null }, "value": "+", - "start": 1408, - "end": 1409, + "start": 1412, + "end": 1413, "loc": { "start": { "line": 47, @@ -16854,8 +16854,8 @@ "updateContext": null }, "value": "px", - "start": 1410, - "end": 1414, + "start": 1414, + "end": 1418, "loc": { "start": { "line": 47, @@ -16879,8 +16879,8 @@ "postfix": false, "binop": null }, - "start": 1414, - "end": 1415, + "start": 1418, + "end": 1419, "loc": { "start": { "line": 47, @@ -16905,8 +16905,8 @@ "binop": null, "updateContext": null }, - "start": 1415, - "end": 1416, + "start": 1419, + "end": 1420, "loc": { "start": { "line": 47, @@ -16931,8 +16931,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1421, - "end": 1434, + "start": 1425, + "end": 1438, "loc": { "start": { "line": 48, @@ -16957,8 +16957,8 @@ "binop": null, "updateContext": null }, - "start": 1434, - "end": 1435, + "start": 1438, + "end": 1439, "loc": { "start": { "line": 48, @@ -16983,8 +16983,8 @@ "binop": null }, "value": "style", - "start": 1435, - "end": 1440, + "start": 1439, + "end": 1444, "loc": { "start": { "line": 48, @@ -17009,8 +17009,8 @@ "binop": null, "updateContext": null }, - "start": 1440, - "end": 1441, + "start": 1444, + "end": 1445, "loc": { "start": { "line": 48, @@ -17035,8 +17035,8 @@ "binop": null }, "value": "setProperty", - "start": 1441, - "end": 1452, + "start": 1445, + "end": 1456, "loc": { "start": { "line": 48, @@ -17060,8 +17060,8 @@ "postfix": false, "binop": null }, - "start": 1452, - "end": 1453, + "start": 1456, + "end": 1457, "loc": { "start": { "line": 48, @@ -17087,8 +17087,8 @@ "updateContext": null }, "value": "z-index", - "start": 1453, - "end": 1462, + "start": 1457, + "end": 1466, "loc": { "start": { "line": 48, @@ -17113,8 +17113,8 @@ "binop": null, "updateContext": null }, - "start": 1462, - "end": 1463, + "start": 1466, + "end": 1467, "loc": { "start": { "line": 48, @@ -17140,8 +17140,8 @@ "updateContext": null }, "value": 99999, - "start": 1464, - "end": 1469, + "start": 1468, + "end": 1473, "loc": { "start": { "line": 48, @@ -17165,8 +17165,8 @@ "postfix": false, "binop": null }, - "start": 1469, - "end": 1470, + "start": 1473, + "end": 1474, "loc": { "start": { "line": 48, @@ -17191,8 +17191,8 @@ "binop": null, "updateContext": null }, - "start": 1470, - "end": 1471, + "start": 1474, + "end": 1475, "loc": { "start": { "line": 48, @@ -17217,8 +17217,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1476, - "end": 1489, + "start": 1480, + "end": 1493, "loc": { "start": { "line": 49, @@ -17243,8 +17243,8 @@ "binop": null, "updateContext": null }, - "start": 1489, - "end": 1490, + "start": 1493, + "end": 1494, "loc": { "start": { "line": 49, @@ -17269,8 +17269,8 @@ "binop": null }, "value": "style", - "start": 1490, - "end": 1495, + "start": 1494, + "end": 1499, "loc": { "start": { "line": 49, @@ -17295,8 +17295,8 @@ "binop": null, "updateContext": null }, - "start": 1495, - "end": 1496, + "start": 1499, + "end": 1500, "loc": { "start": { "line": 49, @@ -17321,8 +17321,8 @@ "binop": null }, "value": "setProperty", - "start": 1496, - "end": 1507, + "start": 1500, + "end": 1511, "loc": { "start": { "line": 49, @@ -17346,8 +17346,8 @@ "postfix": false, "binop": null }, - "start": 1507, - "end": 1508, + "start": 1511, + "end": 1512, "loc": { "start": { "line": 49, @@ -17373,8 +17373,8 @@ "updateContext": null }, "value": "pointer-events", - "start": 1508, - "end": 1524, + "start": 1512, + "end": 1528, "loc": { "start": { "line": 49, @@ -17399,8 +17399,8 @@ "binop": null, "updateContext": null }, - "start": 1524, - "end": 1525, + "start": 1528, + "end": 1529, "loc": { "start": { "line": 49, @@ -17426,8 +17426,8 @@ "updateContext": null }, "value": "none", - "start": 1526, - "end": 1532, + "start": 1530, + "end": 1536, "loc": { "start": { "line": 49, @@ -17451,8 +17451,8 @@ "postfix": false, "binop": null }, - "start": 1532, - "end": 1533, + "start": 1536, + "end": 1537, "loc": { "start": { "line": 49, @@ -17477,8 +17477,8 @@ "binop": null, "updateContext": null }, - "start": 1533, - "end": 1534, + "start": 1537, + "end": 1538, "loc": { "start": { "line": 49, @@ -17505,8 +17505,8 @@ "updateContext": null }, "value": "if", - "start": 1539, - "end": 1541, + "start": 1543, + "end": 1545, "loc": { "start": { "line": 50, @@ -17530,8 +17530,8 @@ "postfix": false, "binop": null }, - "start": 1541, - "end": 1542, + "start": 1545, + "end": 1546, "loc": { "start": { "line": 50, @@ -17556,8 +17556,8 @@ "binop": null }, "value": "config", - "start": 1542, - "end": 1548, + "start": 1546, + "end": 1552, "loc": { "start": { "line": 50, @@ -17582,8 +17582,8 @@ "binop": null, "updateContext": null }, - "start": 1548, - "end": 1549, + "start": 1552, + "end": 1553, "loc": { "start": { "line": 50, @@ -17608,8 +17608,8 @@ "binop": null }, "value": "dev", - "start": 1549, - "end": 1552, + "start": 1553, + "end": 1556, "loc": { "start": { "line": 50, @@ -17634,8 +17634,8 @@ "binop": null, "updateContext": null }, - "start": 1552, - "end": 1553, + "start": 1556, + "end": 1557, "loc": { "start": { "line": 50, @@ -17660,8 +17660,8 @@ "binop": null }, "value": "border", - "start": 1553, - "end": 1559, + "start": 1557, + "end": 1563, "loc": { "start": { "line": 50, @@ -17685,8 +17685,8 @@ "postfix": false, "binop": null }, - "start": 1559, - "end": 1560, + "start": 1563, + "end": 1564, "loc": { "start": { "line": 50, @@ -17711,8 +17711,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1561, - "end": 1574, + "start": 1565, + "end": 1578, "loc": { "start": { "line": 50, @@ -17737,8 +17737,8 @@ "binop": null, "updateContext": null }, - "start": 1574, - "end": 1575, + "start": 1578, + "end": 1579, "loc": { "start": { "line": 50, @@ -17763,8 +17763,8 @@ "binop": null }, "value": "style", - "start": 1575, - "end": 1580, + "start": 1579, + "end": 1584, "loc": { "start": { "line": 50, @@ -17789,8 +17789,8 @@ "binop": null, "updateContext": null }, - "start": 1580, - "end": 1581, + "start": 1584, + "end": 1585, "loc": { "start": { "line": 50, @@ -17815,8 +17815,8 @@ "binop": null }, "value": "setProperty", - "start": 1581, - "end": 1592, + "start": 1585, + "end": 1596, "loc": { "start": { "line": 50, @@ -17840,8 +17840,8 @@ "postfix": false, "binop": null }, - "start": 1592, - "end": 1593, + "start": 1596, + "end": 1597, "loc": { "start": { "line": 50, @@ -17867,8 +17867,8 @@ "updateContext": null }, "value": "border", - "start": 1593, - "end": 1601, + "start": 1597, + "end": 1605, "loc": { "start": { "line": 50, @@ -17893,8 +17893,8 @@ "binop": null, "updateContext": null }, - "start": 1601, - "end": 1602, + "start": 1605, + "end": 1606, "loc": { "start": { "line": 50, @@ -17920,8 +17920,8 @@ "updateContext": null }, "value": "dashed 1px #CCC", - "start": 1603, - "end": 1620, + "start": 1607, + "end": 1624, "loc": { "start": { "line": 50, @@ -17945,8 +17945,8 @@ "postfix": false, "binop": null }, - "start": 1620, - "end": 1621, + "start": 1624, + "end": 1625, "loc": { "start": { "line": 50, @@ -17971,8 +17971,8 @@ "binop": null, "updateContext": null }, - "start": 1621, - "end": 1622, + "start": 1625, + "end": 1626, "loc": { "start": { "line": 50, @@ -17997,8 +17997,8 @@ "binop": null }, "value": "newElem", - "start": 1627, - "end": 1634, + "start": 1631, + "end": 1638, "loc": { "start": { "line": 51, @@ -18023,8 +18023,8 @@ "binop": null, "updateContext": null }, - "start": 1634, - "end": 1635, + "start": 1638, + "end": 1639, "loc": { "start": { "line": 51, @@ -18049,8 +18049,8 @@ "binop": null }, "value": "appendChild", - "start": 1635, - "end": 1646, + "start": 1639, + "end": 1650, "loc": { "start": { "line": 51, @@ -18074,8 +18074,8 @@ "postfix": false, "binop": null }, - "start": 1646, - "end": 1647, + "start": 1650, + "end": 1651, "loc": { "start": { "line": 51, @@ -18100,8 +18100,8 @@ "binop": null }, "value": "newCanvasElem", - "start": 1647, - "end": 1660, + "start": 1651, + "end": 1664, "loc": { "start": { "line": 51, @@ -18125,8 +18125,8 @@ "postfix": false, "binop": null }, - "start": 1660, - "end": 1661, + "start": 1664, + "end": 1665, "loc": { "start": { "line": 51, @@ -18151,8 +18151,8 @@ "binop": null, "updateContext": null }, - "start": 1661, - "end": 1662, + "start": 1665, + "end": 1666, "loc": { "start": { "line": 51, @@ -18177,8 +18177,8 @@ "binop": null }, "value": "document", - "start": 1666, - "end": 1674, + "start": 1670, + "end": 1678, "loc": { "start": { "line": 53, @@ -18203,8 +18203,8 @@ "binop": null, "updateContext": null }, - "start": 1674, - "end": 1675, + "start": 1678, + "end": 1679, "loc": { "start": { "line": 53, @@ -18229,8 +18229,8 @@ "binop": null }, "value": "body", - "start": 1675, - "end": 1679, + "start": 1679, + "end": 1683, "loc": { "start": { "line": 53, @@ -18255,8 +18255,8 @@ "binop": null, "updateContext": null }, - "start": 1679, - "end": 1680, + "start": 1683, + "end": 1684, "loc": { "start": { "line": 53, @@ -18281,8 +18281,8 @@ "binop": null }, "value": "appendChild", - "start": 1680, - "end": 1691, + "start": 1684, + "end": 1695, "loc": { "start": { "line": 53, @@ -18306,8 +18306,8 @@ "postfix": false, "binop": null }, - "start": 1691, - "end": 1692, + "start": 1695, + "end": 1696, "loc": { "start": { "line": 53, @@ -18332,8 +18332,8 @@ "binop": null }, "value": "newElem", - "start": 1692, - "end": 1699, + "start": 1696, + "end": 1703, "loc": { "start": { "line": 53, @@ -18357,8 +18357,8 @@ "postfix": false, "binop": null }, - "start": 1699, - "end": 1700, + "start": 1703, + "end": 1704, "loc": { "start": { "line": 53, @@ -18383,8 +18383,8 @@ "binop": null, "updateContext": null }, - "start": 1700, - "end": 1701, + "start": 1704, + "end": 1705, "loc": { "start": { "line": 53, @@ -18409,8 +18409,8 @@ "binop": null }, "value": "currCanvas", - "start": 1704, - "end": 1714, + "start": 1708, + "end": 1718, "loc": { "start": { "line": 54, @@ -18436,8 +18436,8 @@ "updateContext": null }, "value": "=", - "start": 1715, - "end": 1716, + "start": 1719, + "end": 1720, "loc": { "start": { "line": 54, @@ -18462,8 +18462,8 @@ "binop": null }, "value": "document", - "start": 1717, - "end": 1725, + "start": 1721, + "end": 1729, "loc": { "start": { "line": 54, @@ -18488,8 +18488,8 @@ "binop": null, "updateContext": null }, - "start": 1725, - "end": 1726, + "start": 1729, + "end": 1730, "loc": { "start": { "line": 54, @@ -18514,8 +18514,8 @@ "binop": null }, "value": "getElementById", - "start": 1726, - "end": 1740, + "start": 1730, + "end": 1744, "loc": { "start": { "line": 54, @@ -18539,8 +18539,8 @@ "postfix": false, "binop": null }, - "start": 1740, - "end": 1741, + "start": 1744, + "end": 1745, "loc": { "start": { "line": 54, @@ -18565,8 +18565,8 @@ "binop": null }, "value": "config", - "start": 1741, - "end": 1747, + "start": 1745, + "end": 1751, "loc": { "start": { "line": 54, @@ -18591,8 +18591,8 @@ "binop": null, "updateContext": null }, - "start": 1747, - "end": 1748, + "start": 1751, + "end": 1752, "loc": { "start": { "line": 54, @@ -18617,8 +18617,8 @@ "binop": null }, "value": "name", - "start": 1748, - "end": 1752, + "start": 1752, + "end": 1756, "loc": { "start": { "line": 54, @@ -18643,8 +18643,8 @@ "binop": null, "updateContext": null }, - "start": 1752, - "end": 1753, + "start": 1756, + "end": 1757, "loc": { "start": { "line": 54, @@ -18669,8 +18669,8 @@ "binop": null }, "value": "canvas", - "start": 1753, - "end": 1759, + "start": 1757, + "end": 1763, "loc": { "start": { "line": 54, @@ -18694,8 +18694,8 @@ "postfix": false, "binop": null }, - "start": 1759, - "end": 1760, + "start": 1763, + "end": 1764, "loc": { "start": { "line": 54, @@ -18720,8 +18720,8 @@ "binop": null, "updateContext": null }, - "start": 1760, - "end": 1761, + "start": 1764, + "end": 1765, "loc": { "start": { "line": 54, @@ -18746,8 +18746,8 @@ "binop": null }, "value": "initWebGL", - "start": 1765, - "end": 1774, + "start": 1769, + "end": 1778, "loc": { "start": { "line": 56, @@ -18771,8 +18771,8 @@ "postfix": false, "binop": null }, - "start": 1774, - "end": 1775, + "start": 1778, + "end": 1779, "loc": { "start": { "line": 56, @@ -18796,8 +18796,8 @@ "postfix": false, "binop": null }, - "start": 1775, - "end": 1776, + "start": 1779, + "end": 1780, "loc": { "start": { "line": 56, @@ -18822,8 +18822,8 @@ "binop": null, "updateContext": null }, - "start": 1776, - "end": 1777, + "start": 1780, + "end": 1781, "loc": { "start": { "line": 56, @@ -18847,8 +18847,8 @@ "postfix": false, "binop": null }, - "start": 1779, - "end": 1780, + "start": 1783, + "end": 1784, "loc": { "start": { "line": 58, @@ -18863,8 +18863,8 @@ { "type": "CommentBlock", "value": "*\n * Find and set the current WebGL element to the container\n * @return {null}\n ", - "start": 1782, - "end": 1866, + "start": 1786, + "end": 1870, "loc": { "start": { "line": 60, @@ -18890,8 +18890,8 @@ "binop": null }, "value": "function", - "start": 1868, - "end": 1876, + "start": 1872, + "end": 1880, "loc": { "start": { "line": 65, @@ -18916,8 +18916,8 @@ "binop": null }, "value": "initWebGL", - "start": 1877, - "end": 1886, + "start": 1881, + "end": 1890, "loc": { "start": { "line": 65, @@ -18941,8 +18941,8 @@ "postfix": false, "binop": null }, - "start": 1886, - "end": 1887, + "start": 1890, + "end": 1891, "loc": { "start": { "line": 65, @@ -18966,8 +18966,8 @@ "postfix": false, "binop": null }, - "start": 1887, - "end": 1888, + "start": 1891, + "end": 1892, "loc": { "start": { "line": 65, @@ -18991,8 +18991,8 @@ "postfix": false, "binop": null }, - "start": 1888, - "end": 1889, + "start": 1892, + "end": 1893, "loc": { "start": { "line": 65, @@ -19019,8 +19019,8 @@ "updateContext": null }, "value": "var", - "start": 1893, - "end": 1896, + "start": 1897, + "end": 1900, "loc": { "start": { "line": 67, @@ -19045,8 +19045,8 @@ "binop": null }, "value": "NAMES", - "start": 1897, - "end": 1902, + "start": 1901, + "end": 1906, "loc": { "start": { "line": 67, @@ -19072,8 +19072,8 @@ "updateContext": null }, "value": "=", - "start": 1903, - "end": 1904, + "start": 1907, + "end": 1908, "loc": { "start": { "line": 67, @@ -19098,8 +19098,8 @@ "binop": null, "updateContext": null }, - "start": 1905, - "end": 1906, + "start": 1909, + "end": 1910, "loc": { "start": { "line": 67, @@ -19125,8 +19125,8 @@ "updateContext": null }, "value": "webgl2", - "start": 1906, - "end": 1914, + "start": 1910, + "end": 1918, "loc": { "start": { "line": 67, @@ -19151,8 +19151,8 @@ "binop": null, "updateContext": null }, - "start": 1914, - "end": 1915, + "start": 1918, + "end": 1919, "loc": { "start": { "line": 67, @@ -19178,8 +19178,8 @@ "updateContext": null }, "value": "webgl", - "start": 1916, - "end": 1923, + "start": 1920, + "end": 1927, "loc": { "start": { "line": 67, @@ -19204,8 +19204,8 @@ "binop": null, "updateContext": null }, - "start": 1923, - "end": 1924, + "start": 1927, + "end": 1928, "loc": { "start": { "line": 67, @@ -19231,8 +19231,8 @@ "updateContext": null }, "value": "experimental-webgl2", - "start": 1925, - "end": 1946, + "start": 1929, + "end": 1950, "loc": { "start": { "line": 67, @@ -19257,8 +19257,8 @@ "binop": null, "updateContext": null }, - "start": 1946, - "end": 1947, + "start": 1950, + "end": 1951, "loc": { "start": { "line": 67, @@ -19284,8 +19284,8 @@ "updateContext": null }, "value": "experimental-webgl", - "start": 1948, - "end": 1968, + "start": 1952, + "end": 1972, "loc": { "start": { "line": 67, @@ -19310,8 +19310,8 @@ "binop": null, "updateContext": null }, - "start": 1968, - "end": 1969, + "start": 1972, + "end": 1973, "loc": { "start": { "line": 67, @@ -19337,8 +19337,8 @@ "updateContext": null }, "value": "webkit-3d", - "start": 1970, - "end": 1981, + "start": 1974, + "end": 1985, "loc": { "start": { "line": 67, @@ -19363,8 +19363,8 @@ "binop": null, "updateContext": null }, - "start": 1981, - "end": 1982, + "start": 1985, + "end": 1986, "loc": { "start": { "line": 67, @@ -19390,8 +19390,8 @@ "updateContext": null }, "value": "moz-webgl", - "start": 1983, - "end": 1994, + "start": 1987, + "end": 1998, "loc": { "start": { "line": 67, @@ -19416,8 +19416,8 @@ "binop": null, "updateContext": null }, - "start": 1994, - "end": 1995, + "start": 1998, + "end": 1999, "loc": { "start": { "line": 67, @@ -19442,8 +19442,8 @@ "binop": null, "updateContext": null }, - "start": 1995, - "end": 1996, + "start": 1999, + "end": 2000, "loc": { "start": { "line": 67, @@ -19470,8 +19470,8 @@ "updateContext": null }, "value": "for", - "start": 1999, - "end": 2002, + "start": 2003, + "end": 2006, "loc": { "start": { "line": 68, @@ -19495,8 +19495,8 @@ "postfix": false, "binop": null }, - "start": 2002, - "end": 2003, + "start": 2006, + "end": 2007, "loc": { "start": { "line": 68, @@ -19523,8 +19523,8 @@ "updateContext": null }, "value": "let", - "start": 2003, - "end": 2006, + "start": 2007, + "end": 2010, "loc": { "start": { "line": 68, @@ -19549,8 +19549,8 @@ "binop": null }, "value": "i", - "start": 2007, - "end": 2008, + "start": 2011, + "end": 2012, "loc": { "start": { "line": 68, @@ -19576,8 +19576,8 @@ "updateContext": null }, "value": "=", - "start": 2009, - "end": 2010, + "start": 2013, + "end": 2014, "loc": { "start": { "line": 68, @@ -19603,8 +19603,8 @@ "updateContext": null }, "value": 0, - "start": 2011, - "end": 2012, + "start": 2015, + "end": 2016, "loc": { "start": { "line": 68, @@ -19629,8 +19629,8 @@ "binop": null, "updateContext": null }, - "start": 2012, - "end": 2013, + "start": 2016, + "end": 2017, "loc": { "start": { "line": 68, @@ -19655,8 +19655,8 @@ "binop": null }, "value": "i", - "start": 2014, - "end": 2015, + "start": 2018, + "end": 2019, "loc": { "start": { "line": 68, @@ -19682,8 +19682,8 @@ "updateContext": null }, "value": "<", - "start": 2016, - "end": 2017, + "start": 2020, + "end": 2021, "loc": { "start": { "line": 68, @@ -19708,8 +19708,8 @@ "binop": null }, "value": "NAMES", - "start": 2018, - "end": 2023, + "start": 2022, + "end": 2027, "loc": { "start": { "line": 68, @@ -19734,8 +19734,8 @@ "binop": null, "updateContext": null }, - "start": 2023, - "end": 2024, + "start": 2027, + "end": 2028, "loc": { "start": { "line": 68, @@ -19760,8 +19760,8 @@ "binop": null }, "value": "length", - "start": 2024, - "end": 2030, + "start": 2028, + "end": 2034, "loc": { "start": { "line": 68, @@ -19786,8 +19786,8 @@ "binop": null, "updateContext": null }, - "start": 2030, - "end": 2031, + "start": 2034, + "end": 2035, "loc": { "start": { "line": 68, @@ -19812,8 +19812,8 @@ "binop": null }, "value": "i", - "start": 2032, - "end": 2033, + "start": 2036, + "end": 2037, "loc": { "start": { "line": 68, @@ -19838,8 +19838,8 @@ "binop": null }, "value": "++", - "start": 2033, - "end": 2035, + "start": 2037, + "end": 2039, "loc": { "start": { "line": 68, @@ -19863,8 +19863,8 @@ "postfix": false, "binop": null }, - "start": 2035, - "end": 2036, + "start": 2039, + "end": 2040, "loc": { "start": { "line": 68, @@ -19888,8 +19888,8 @@ "postfix": false, "binop": null }, - "start": 2036, - "end": 2037, + "start": 2040, + "end": 2041, "loc": { "start": { "line": 68, @@ -19916,8 +19916,8 @@ "updateContext": null }, "value": "try", - "start": 2042, - "end": 2045, + "start": 2046, + "end": 2049, "loc": { "start": { "line": 69, @@ -19941,8 +19941,8 @@ "postfix": false, "binop": null }, - "start": 2045, - "end": 2046, + "start": 2049, + "end": 2050, "loc": { "start": { "line": 69, @@ -19969,8 +19969,8 @@ "updateContext": null }, "value": "let", - "start": 2053, - "end": 2056, + "start": 2057, + "end": 2060, "loc": { "start": { "line": 70, @@ -19995,8 +19995,8 @@ "binop": null }, "value": "ctx", - "start": 2057, - "end": 2060, + "start": 2061, + "end": 2064, "loc": { "start": { "line": 70, @@ -20022,8 +20022,8 @@ "updateContext": null }, "value": "=", - "start": 2061, - "end": 2062, + "start": 2065, + "end": 2066, "loc": { "start": { "line": 70, @@ -20048,8 +20048,8 @@ "binop": null }, "value": "currCanvas", - "start": 2063, - "end": 2073, + "start": 2067, + "end": 2077, "loc": { "start": { "line": 70, @@ -20074,8 +20074,8 @@ "binop": null, "updateContext": null }, - "start": 2073, - "end": 2074, + "start": 2077, + "end": 2078, "loc": { "start": { "line": 70, @@ -20100,8 +20100,8 @@ "binop": null }, "value": "getContext", - "start": 2074, - "end": 2084, + "start": 2078, + "end": 2088, "loc": { "start": { "line": 70, @@ -20125,8 +20125,8 @@ "postfix": false, "binop": null }, - "start": 2084, - "end": 2085, + "start": 2088, + "end": 2089, "loc": { "start": { "line": 70, @@ -20151,8 +20151,8 @@ "binop": null }, "value": "NAMES", - "start": 2085, - "end": 2090, + "start": 2089, + "end": 2094, "loc": { "start": { "line": 70, @@ -20177,8 +20177,8 @@ "binop": null, "updateContext": null }, - "start": 2090, - "end": 2091, + "start": 2094, + "end": 2095, "loc": { "start": { "line": 70, @@ -20203,8 +20203,8 @@ "binop": null }, "value": "i", - "start": 2091, - "end": 2092, + "start": 2095, + "end": 2096, "loc": { "start": { "line": 70, @@ -20229,8 +20229,8 @@ "binop": null, "updateContext": null }, - "start": 2092, - "end": 2093, + "start": 2096, + "end": 2097, "loc": { "start": { "line": 70, @@ -20255,8 +20255,8 @@ "binop": null, "updateContext": null }, - "start": 2093, - "end": 2094, + "start": 2097, + "end": 2098, "loc": { "start": { "line": 70, @@ -20280,8 +20280,8 @@ "postfix": false, "binop": null }, - "start": 2095, - "end": 2096, + "start": 2099, + "end": 2100, "loc": { "start": { "line": 70, @@ -20306,8 +20306,8 @@ "binop": null }, "value": "alpha", - "start": 2105, - "end": 2110, + "start": 2109, + "end": 2114, "loc": { "start": { "line": 71, @@ -20332,8 +20332,8 @@ "binop": null, "updateContext": null }, - "start": 2110, - "end": 2111, + "start": 2114, + "end": 2115, "loc": { "start": { "line": 71, @@ -20360,8 +20360,8 @@ "updateContext": null }, "value": "true", - "start": 2112, - "end": 2116, + "start": 2116, + "end": 2120, "loc": { "start": { "line": 71, @@ -20386,8 +20386,8 @@ "binop": null, "updateContext": null }, - "start": 2116, - "end": 2117, + "start": 2120, + "end": 2121, "loc": { "start": { "line": 71, @@ -20412,8 +20412,8 @@ "binop": null }, "value": "antialias", - "start": 2126, - "end": 2135, + "start": 2130, + "end": 2139, "loc": { "start": { "line": 72, @@ -20438,8 +20438,8 @@ "binop": null, "updateContext": null }, - "start": 2135, - "end": 2136, + "start": 2139, + "end": 2140, "loc": { "start": { "line": 72, @@ -20466,8 +20466,8 @@ "updateContext": null }, "value": "true", - "start": 2137, - "end": 2141, + "start": 2141, + "end": 2145, "loc": { "start": { "line": 72, @@ -20492,8 +20492,8 @@ "binop": null, "updateContext": null }, - "start": 2141, - "end": 2142, + "start": 2145, + "end": 2146, "loc": { "start": { "line": 72, @@ -20518,8 +20518,8 @@ "binop": null }, "value": "premultipliedAlpha", - "start": 2151, - "end": 2169, + "start": 2155, + "end": 2173, "loc": { "start": { "line": 73, @@ -20544,8 +20544,8 @@ "binop": null, "updateContext": null }, - "start": 2169, - "end": 2170, + "start": 2173, + "end": 2174, "loc": { "start": { "line": 73, @@ -20572,8 +20572,8 @@ "updateContext": null }, "value": "true", - "start": 2171, - "end": 2175, + "start": 2175, + "end": 2179, "loc": { "start": { "line": 73, @@ -20598,8 +20598,8 @@ "binop": null, "updateContext": null }, - "start": 2175, - "end": 2176, + "start": 2179, + "end": 2180, "loc": { "start": { "line": 73, @@ -20624,8 +20624,8 @@ "binop": null }, "value": "failIfMajorPerformanceCaveat", - "start": 2185, - "end": 2213, + "start": 2189, + "end": 2217, "loc": { "start": { "line": 74, @@ -20650,8 +20650,8 @@ "binop": null, "updateContext": null }, - "start": 2213, - "end": 2214, + "start": 2217, + "end": 2218, "loc": { "start": { "line": 74, @@ -20678,8 +20678,8 @@ "updateContext": null }, "value": "false", - "start": 2215, - "end": 2220, + "start": 2219, + "end": 2224, "loc": { "start": { "line": 74, @@ -20704,8 +20704,8 @@ "binop": null, "updateContext": null }, - "start": 2220, - "end": 2221, + "start": 2224, + "end": 2225, "loc": { "start": { "line": 74, @@ -20729,8 +20729,8 @@ "postfix": false, "binop": null }, - "start": 2228, - "end": 2229, + "start": 2232, + "end": 2233, "loc": { "start": { "line": 75, @@ -20754,8 +20754,8 @@ "postfix": false, "binop": null }, - "start": 2229, - "end": 2230, + "start": 2233, + "end": 2234, "loc": { "start": { "line": 75, @@ -20780,8 +20780,8 @@ "binop": null, "updateContext": null }, - "start": 2230, - "end": 2231, + "start": 2234, + "end": 2235, "loc": { "start": { "line": 75, @@ -20808,8 +20808,8 @@ "updateContext": null }, "value": "if", - "start": 2238, - "end": 2240, + "start": 2242, + "end": 2244, "loc": { "start": { "line": 76, @@ -20833,8 +20833,8 @@ "postfix": false, "binop": null }, - "start": 2240, - "end": 2241, + "start": 2244, + "end": 2245, "loc": { "start": { "line": 76, @@ -20859,8 +20859,8 @@ "binop": null }, "value": "ctx", - "start": 2241, - "end": 2244, + "start": 2245, + "end": 2248, "loc": { "start": { "line": 76, @@ -20884,8 +20884,8 @@ "postfix": false, "binop": null }, - "start": 2244, - "end": 2245, + "start": 2248, + "end": 2249, "loc": { "start": { "line": 76, @@ -20910,8 +20910,8 @@ "binop": null }, "value": "currWebGL", - "start": 2246, - "end": 2255, + "start": 2250, + "end": 2259, "loc": { "start": { "line": 76, @@ -20937,8 +20937,8 @@ "updateContext": null }, "value": "=", - "start": 2256, - "end": 2257, + "start": 2260, + "end": 2261, "loc": { "start": { "line": 76, @@ -20963,8 +20963,8 @@ "binop": null }, "value": "ctx", - "start": 2258, - "end": 2261, + "start": 2262, + "end": 2265, "loc": { "start": { "line": 76, @@ -20989,8 +20989,8 @@ "binop": null, "updateContext": null }, - "start": 2261, - "end": 2262, + "start": 2265, + "end": 2266, "loc": { "start": { "line": 76, @@ -21014,8 +21014,8 @@ "postfix": false, "binop": null }, - "start": 2267, - "end": 2268, + "start": 2271, + "end": 2272, "loc": { "start": { "line": 77, @@ -21042,8 +21042,8 @@ "updateContext": null }, "value": "catch", - "start": 2268, - "end": 2273, + "start": 2272, + "end": 2277, "loc": { "start": { "line": 77, @@ -21067,8 +21067,8 @@ "postfix": false, "binop": null }, - "start": 2273, - "end": 2274, + "start": 2277, + "end": 2278, "loc": { "start": { "line": 77, @@ -21093,8 +21093,8 @@ "binop": null }, "value": "e", - "start": 2274, - "end": 2275, + "start": 2278, + "end": 2279, "loc": { "start": { "line": 77, @@ -21118,8 +21118,8 @@ "postfix": false, "binop": null }, - "start": 2275, - "end": 2276, + "start": 2279, + "end": 2280, "loc": { "start": { "line": 77, @@ -21143,8 +21143,8 @@ "postfix": false, "binop": null }, - "start": 2276, - "end": 2277, + "start": 2280, + "end": 2281, "loc": { "start": { "line": 77, @@ -21168,8 +21168,8 @@ "postfix": false, "binop": null }, - "start": 2277, - "end": 2278, + "start": 2281, + "end": 2282, "loc": { "start": { "line": 77, @@ -21193,8 +21193,8 @@ "postfix": false, "binop": null }, - "start": 2281, - "end": 2282, + "start": 2285, + "end": 2286, "loc": { "start": { "line": 78, @@ -21221,8 +21221,8 @@ "updateContext": null }, "value": "if", - "start": 2285, - "end": 2287, + "start": 2289, + "end": 2291, "loc": { "start": { "line": 79, @@ -21246,8 +21246,8 @@ "postfix": false, "binop": null }, - "start": 2287, - "end": 2288, + "start": 2291, + "end": 2292, "loc": { "start": { "line": 79, @@ -21273,8 +21273,8 @@ "updateContext": null }, "value": "!", - "start": 2288, - "end": 2289, + "start": 2292, + "end": 2293, "loc": { "start": { "line": 79, @@ -21299,8 +21299,8 @@ "binop": null }, "value": "currWebGL", - "start": 2289, - "end": 2298, + "start": 2293, + "end": 2302, "loc": { "start": { "line": 79, @@ -21324,8 +21324,8 @@ "postfix": false, "binop": null }, - "start": 2298, - "end": 2299, + "start": 2302, + "end": 2303, "loc": { "start": { "line": 79, @@ -21349,8 +21349,8 @@ "postfix": false, "binop": null }, - "start": 2299, - "end": 2300, + "start": 2303, + "end": 2304, "loc": { "start": { "line": 79, @@ -21375,8 +21375,8 @@ "binop": null }, "value": "console", - "start": 2305, - "end": 2312, + "start": 2309, + "end": 2316, "loc": { "start": { "line": 80, @@ -21401,8 +21401,8 @@ "binop": null, "updateContext": null }, - "start": 2312, - "end": 2313, + "start": 2316, + "end": 2317, "loc": { "start": { "line": 80, @@ -21427,8 +21427,8 @@ "binop": null }, "value": "error", - "start": 2313, - "end": 2318, + "start": 2317, + "end": 2322, "loc": { "start": { "line": 80, @@ -21452,8 +21452,8 @@ "postfix": false, "binop": null }, - "start": 2318, - "end": 2319, + "start": 2322, + "end": 2323, "loc": { "start": { "line": 80, @@ -21479,8 +21479,8 @@ "updateContext": null }, "value": "Live2D widgets: Failed to create WebGL context.", - "start": 2319, - "end": 2368, + "start": 2323, + "end": 2372, "loc": { "start": { "line": 80, @@ -21504,8 +21504,8 @@ "postfix": false, "binop": null }, - "start": 2368, - "end": 2369, + "start": 2372, + "end": 2373, "loc": { "start": { "line": 80, @@ -21530,8 +21530,8 @@ "binop": null, "updateContext": null }, - "start": 2369, - "end": 2370, + "start": 2373, + "end": 2374, "loc": { "start": { "line": 80, @@ -21558,8 +21558,8 @@ "updateContext": null }, "value": "if", - "start": 2375, - "end": 2377, + "start": 2379, + "end": 2381, "loc": { "start": { "line": 81, @@ -21583,8 +21583,8 @@ "postfix": false, "binop": null }, - "start": 2377, - "end": 2378, + "start": 2381, + "end": 2382, "loc": { "start": { "line": 81, @@ -21610,8 +21610,8 @@ "updateContext": null }, "value": "!", - "start": 2378, - "end": 2379, + "start": 2382, + "end": 2383, "loc": { "start": { "line": 81, @@ -21636,8 +21636,8 @@ "binop": null }, "value": "window", - "start": 2379, - "end": 2385, + "start": 2383, + "end": 2389, "loc": { "start": { "line": 81, @@ -21662,8 +21662,8 @@ "binop": null, "updateContext": null }, - "start": 2385, - "end": 2386, + "start": 2389, + "end": 2390, "loc": { "start": { "line": 81, @@ -21688,8 +21688,8 @@ "binop": null }, "value": "WebGLRenderingContext", - "start": 2386, - "end": 2407, + "start": 2390, + "end": 2411, "loc": { "start": { "line": 81, @@ -21713,8 +21713,8 @@ "postfix": false, "binop": null }, - "start": 2407, - "end": 2408, + "start": 2411, + "end": 2412, "loc": { "start": { "line": 81, @@ -21738,8 +21738,8 @@ "postfix": false, "binop": null }, - "start": 2408, - "end": 2409, + "start": 2412, + "end": 2413, "loc": { "start": { "line": 81, @@ -21764,8 +21764,8 @@ "binop": null }, "value": "console", - "start": 2416, - "end": 2423, + "start": 2420, + "end": 2427, "loc": { "start": { "line": 82, @@ -21790,8 +21790,8 @@ "binop": null, "updateContext": null }, - "start": 2423, - "end": 2424, + "start": 2427, + "end": 2428, "loc": { "start": { "line": 82, @@ -21816,8 +21816,8 @@ "binop": null }, "value": "error", - "start": 2424, - "end": 2429, + "start": 2428, + "end": 2433, "loc": { "start": { "line": 82, @@ -21841,8 +21841,8 @@ "postfix": false, "binop": null }, - "start": 2429, - "end": 2430, + "start": 2433, + "end": 2434, "loc": { "start": { "line": 82, @@ -21868,8 +21868,8 @@ "updateContext": null }, "value": "Your browser may not support WebGL, check https://get.webgl.org/ for futher information.", - "start": 2430, - "end": 2520, + "start": 2434, + "end": 2524, "loc": { "start": { "line": 82, @@ -21893,8 +21893,8 @@ "postfix": false, "binop": null }, - "start": 2520, - "end": 2521, + "start": 2524, + "end": 2525, "loc": { "start": { "line": 82, @@ -21919,8 +21919,8 @@ "binop": null, "updateContext": null }, - "start": 2521, - "end": 2522, + "start": 2525, + "end": 2526, "loc": { "start": { "line": 82, @@ -21944,8 +21944,8 @@ "postfix": false, "binop": null }, - "start": 2527, - "end": 2528, + "start": 2531, + "end": 2532, "loc": { "start": { "line": 83, @@ -21972,8 +21972,8 @@ "updateContext": null }, "value": "return", - "start": 2533, - "end": 2539, + "start": 2537, + "end": 2543, "loc": { "start": { "line": 84, @@ -21998,8 +21998,8 @@ "binop": null, "updateContext": null }, - "start": 2539, - "end": 2540, + "start": 2543, + "end": 2544, "loc": { "start": { "line": 84, @@ -22023,8 +22023,8 @@ "postfix": false, "binop": null }, - "start": 2543, - "end": 2544, + "start": 2547, + "end": 2548, "loc": { "start": { "line": 85, @@ -22048,8 +22048,8 @@ "postfix": false, "binop": null }, - "start": 2545, - "end": 2546, + "start": 2549, + "end": 2550, "loc": { "start": { "line": 86, @@ -22074,8 +22074,8 @@ "binop": null, "updateContext": null }, - "start": 2546, - "end": 2547, + "start": 2550, + "end": 2551, "loc": { "start": { "line": 86, @@ -22102,8 +22102,8 @@ "updateContext": null }, "value": "export", - "start": 2550, - "end": 2556, + "start": 2554, + "end": 2560, "loc": { "start": { "line": 89, @@ -22127,8 +22127,8 @@ "postfix": false, "binop": null }, - "start": 2556, - "end": 2557, + "start": 2560, + "end": 2561, "loc": { "start": { "line": 89, @@ -22153,8 +22153,8 @@ "binop": null }, "value": "createElement", - "start": 2560, - "end": 2573, + "start": 2564, + "end": 2577, "loc": { "start": { "line": 90, @@ -22179,8 +22179,8 @@ "binop": null, "updateContext": null }, - "start": 2573, - "end": 2574, + "start": 2577, + "end": 2578, "loc": { "start": { "line": 90, @@ -22205,8 +22205,8 @@ "binop": null }, "value": "currWebGL", - "start": 2577, - "end": 2586, + "start": 2581, + "end": 2590, "loc": { "start": { "line": 91, @@ -22231,8 +22231,8 @@ "binop": null, "updateContext": null }, - "start": 2586, - "end": 2587, + "start": 2590, + "end": 2591, "loc": { "start": { "line": 91, @@ -22257,8 +22257,8 @@ "binop": null }, "value": "currCanvas", - "start": 2590, - "end": 2600, + "start": 2594, + "end": 2604, "loc": { "start": { "line": 92, @@ -22283,8 +22283,8 @@ "binop": null, "updateContext": null }, - "start": 2600, - "end": 2601, + "start": 2604, + "end": 2605, "loc": { "start": { "line": 92, @@ -22308,8 +22308,8 @@ "postfix": false, "binop": null }, - "start": 2602, - "end": 2603, + "start": 2606, + "end": 2607, "loc": { "start": { "line": 93, @@ -22334,8 +22334,8 @@ "binop": null, "updateContext": null }, - "start": 2604, - "end": 2604, + "start": 2608, + "end": 2608, "loc": { "start": { "line": 94, diff --git a/ghpages/docs/ast/source/index.js.json b/ghpages/docs/ast/source/index.js.json index ac7b851..2c16d3e 100644 --- a/ghpages/docs/ast/source/index.js.json +++ b/ghpages/docs/ast/source/index.js.json @@ -1,7 +1,7 @@ { "type": "File", "start": 0, - "end": 4135, + "end": 4147, "loc": { "start": { "line": 1, @@ -15,7 +15,7 @@ "program": { "type": "Program", "start": 0, - "end": 4135, + "end": 4147, "loc": { "start": { "line": 1, @@ -631,9 +631,9 @@ "trailingComments": [ { "type": "CommentBlock", - "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.antialias = 2] Antialiasing grade 抗锯齿级别\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", + "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.superSample = 2] rate for super sampling rate 超采样等级\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", "start": 556, - "end": 3151, + "end": 3163, "loc": { "start": { "line": 28, @@ -649,8 +649,8 @@ }, { "type": "ExpressionStatement", - "start": 3153, - "end": 3512, + "start": 3165, + "end": 3524, "loc": { "start": { "line": 57, @@ -663,8 +663,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3153, - "end": 3512, + "start": 3165, + "end": 3524, "loc": { "start": { "line": 57, @@ -678,8 +678,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 3153, - "end": 3167, + "start": 3165, + "end": 3179, "loc": { "start": { "line": 57, @@ -692,8 +692,8 @@ }, "object": { "type": "Identifier", - "start": 3153, - "end": 3162, + "start": 3165, + "end": 3174, "loc": { "start": { "line": 57, @@ -710,8 +710,8 @@ }, "property": { "type": "Identifier", - "start": 3163, - "end": 3167, + "start": 3175, + "end": 3179, "loc": { "start": { "line": 57, @@ -730,8 +730,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 3170, - "end": 3512, + "start": 3182, + "end": 3524, "loc": { "start": { "line": 57, @@ -749,8 +749,8 @@ "params": [ { "type": "Identifier", - "start": 3171, - "end": 3181, + "start": 3183, + "end": 3193, "loc": { "start": { "line": 57, @@ -767,8 +767,8 @@ ], "body": { "type": "BlockStatement", - "start": 3186, - "end": 3512, + "start": 3198, + "end": 3524, "loc": { "start": { "line": 57, @@ -782,8 +782,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3191, - "end": 3256, + "start": 3203, + "end": 3268, "loc": { "start": { "line": 59, @@ -796,8 +796,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3191, - "end": 3255, + "start": 3203, + "end": 3267, "loc": { "start": { "line": 59, @@ -811,8 +811,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 3191, - "end": 3201, + "start": 3203, + "end": 3213, "loc": { "start": { "line": 59, @@ -828,8 +828,8 @@ }, "right": { "type": "ConditionalExpression", - "start": 3204, - "end": 3255, + "start": 3216, + "end": 3267, "loc": { "start": { "line": 59, @@ -842,8 +842,8 @@ }, "test": { "type": "BinaryExpression", - "start": 3204, - "end": 3237, + "start": 3216, + "end": 3249, "loc": { "start": { "line": 59, @@ -856,8 +856,8 @@ }, "left": { "type": "UnaryExpression", - "start": 3204, - "end": 3221, + "start": 3216, + "end": 3233, "loc": { "start": { "line": 59, @@ -872,8 +872,8 @@ "prefix": true, "argument": { "type": "Identifier", - "start": 3211, - "end": 3221, + "start": 3223, + "end": 3233, "loc": { "start": { "line": 59, @@ -894,8 +894,8 @@ "operator": "===", "right": { "type": "StringLiteral", - "start": 3226, - "end": 3237, + "start": 3238, + "end": 3249, "loc": { "start": { "line": 59, @@ -915,8 +915,8 @@ }, "consequent": { "type": "ObjectExpression", - "start": 3240, - "end": 3242, + "start": 3252, + "end": 3254, "loc": { "start": { "line": 59, @@ -931,8 +931,8 @@ }, "alternate": { "type": "Identifier", - "start": 3245, - "end": 3255, + "start": 3257, + "end": 3267, "loc": { "start": { "line": 59, @@ -951,8 +951,8 @@ }, { "type": "ExpressionStatement", - "start": 3260, - "end": 3286, + "start": 3272, + "end": 3298, "loc": { "start": { "line": 61, @@ -965,8 +965,8 @@ }, "expression": { "type": "CallExpression", - "start": 3260, - "end": 3285, + "start": 3272, + "end": 3297, "loc": { "start": { "line": 61, @@ -979,8 +979,8 @@ }, "callee": { "type": "Identifier", - "start": 3260, - "end": 3273, + "start": 3272, + "end": 3285, "loc": { "start": { "line": 61, @@ -997,8 +997,8 @@ "arguments": [ { "type": "Identifier", - "start": 3274, - "end": 3284, + "start": 3286, + "end": 3296, "loc": { "start": { "line": 61, @@ -1017,8 +1017,8 @@ }, { "type": "IfStatement", - "start": 3290, - "end": 3351, + "start": 3302, + "end": 3363, "loc": { "start": { "line": 63, @@ -1031,8 +1031,8 @@ }, "test": { "type": "LogicalExpression", - "start": 3293, - "end": 3333, + "start": 3305, + "end": 3345, "loc": { "start": { "line": 63, @@ -1045,8 +1045,8 @@ }, "left": { "type": "UnaryExpression", - "start": 3294, - "end": 3313, + "start": 3306, + "end": 3325, "loc": { "start": { "line": 63, @@ -1061,8 +1061,8 @@ "prefix": true, "argument": { "type": "MemberExpression", - "start": 3295, - "end": 3313, + "start": 3307, + "end": 3325, "loc": { "start": { "line": 63, @@ -1075,8 +1075,8 @@ }, "object": { "type": "MemberExpression", - "start": 3295, - "end": 3308, + "start": 3307, + "end": 3320, "loc": { "start": { "line": 63, @@ -1089,8 +1089,8 @@ }, "object": { "type": "Identifier", - "start": 3295, - "end": 3301, + "start": 3307, + "end": 3313, "loc": { "start": { "line": 63, @@ -1106,8 +1106,8 @@ }, "property": { "type": "Identifier", - "start": 3302, - "end": 3308, + "start": 3314, + "end": 3320, "loc": { "start": { "line": 63, @@ -1125,8 +1125,8 @@ }, "property": { "type": "Identifier", - "start": 3309, - "end": 3313, + "start": 3321, + "end": 3325, "loc": { "start": { "line": 63, @@ -1145,14 +1145,14 @@ "extra": { "parenthesizedArgument": false, "parenthesized": true, - "parenStart": 3293 + "parenStart": 3305 } }, "operator": "&&", "right": { "type": "CallExpression", - "start": 3317, - "end": 3332, + "start": 3329, + "end": 3344, "loc": { "start": { "line": 63, @@ -1165,8 +1165,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3317, - "end": 3330, + "start": 3329, + "end": 3342, "loc": { "start": { "line": 63, @@ -1179,8 +1179,8 @@ }, "object": { "type": "Identifier", - "start": 3317, - "end": 3323, + "start": 3329, + "end": 3335, "loc": { "start": { "line": 63, @@ -1196,8 +1196,8 @@ }, "property": { "type": "Identifier", - "start": 3324, - "end": 3330, + "start": 3336, + "end": 3342, "loc": { "start": { "line": 63, @@ -1216,14 +1216,14 @@ "arguments": [], "extra": { "parenthesized": true, - "parenStart": 3316 + "parenStart": 3328 } } }, "consequent": { "type": "BlockStatement", - "start": 3334, - "end": 3351, + "start": 3346, + "end": 3363, "loc": { "start": { "line": 63, @@ -1237,8 +1237,8 @@ "body": [ { "type": "ReturnStatement", - "start": 3340, - "end": 3347, + "start": 3352, + "end": 3359, "loc": { "start": { "line": 64, @@ -1258,8 +1258,8 @@ }, { "type": "ExpressionStatement", - "start": 3355, - "end": 3509, + "start": 3367, + "end": 3521, "loc": { "start": { "line": 67, @@ -1272,8 +1272,8 @@ }, "expression": { "type": "CallExpression", - "start": 3355, - "end": 3508, + "start": 3367, + "end": 3520, "loc": { "start": { "line": 67, @@ -1286,8 +1286,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3355, - "end": 3470, + "start": 3367, + "end": 3482, "loc": { "start": { "line": 67, @@ -1300,8 +1300,8 @@ }, "object": { "type": "CallExpression", - "start": 3355, - "end": 3464, + "start": 3367, + "end": 3476, "loc": { "start": { "line": 67, @@ -1314,8 +1314,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3355, - "end": 3408, + "start": 3367, + "end": 3420, "loc": { "start": { "line": 67, @@ -1328,8 +1328,8 @@ }, "object": { "type": "CallExpression", - "start": 3355, - "end": 3403, + "start": 3367, + "end": 3415, "loc": { "start": { "line": 67, @@ -1342,8 +1342,8 @@ }, "callee": { "type": "Import", - "start": 3355, - "end": 3361, + "start": 3367, + "end": 3373, "loc": { "start": { "line": 67, @@ -1358,8 +1358,8 @@ "arguments": [ { "type": "StringLiteral", - "start": 3388, - "end": 3402, + "start": 3400, + "end": 3414, "loc": { "start": { "line": 67, @@ -1379,8 +1379,8 @@ { "type": "CommentBlock", "value": " webpackMode: \"lazy\" ", - "start": 3362, - "end": 3387, + "start": 3374, + "end": 3399, "loc": { "start": { "line": 67, @@ -1398,8 +1398,8 @@ }, "property": { "type": "Identifier", - "start": 3404, - "end": 3408, + "start": 3416, + "end": 3420, "loc": { "start": { "line": 67, @@ -1418,8 +1418,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 3409, - "end": 3463, + "start": 3421, + "end": 3475, "loc": { "start": { "line": 67, @@ -1437,8 +1437,8 @@ "params": [ { "type": "Identifier", - "start": 3409, - "end": 3410, + "start": 3421, + "end": 3422, "loc": { "start": { "line": 67, @@ -1455,8 +1455,8 @@ ], "body": { "type": "BlockStatement", - "start": 3414, - "end": 3463, + "start": 3426, + "end": 3475, "loc": { "start": { "line": 67, @@ -1470,8 +1470,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3420, - "end": 3432, + "start": 3432, + "end": 3444, "loc": { "start": { "line": 68, @@ -1484,8 +1484,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 3420, - "end": 3431, + "start": 3432, + "end": 3443, "loc": { "start": { "line": 68, @@ -1499,8 +1499,8 @@ "operator": "=", "left": { "type": "Identifier", - "start": 3420, - "end": 3427, + "start": 3432, + "end": 3439, "loc": { "start": { "line": 68, @@ -1516,8 +1516,8 @@ }, "right": { "type": "Identifier", - "start": 3430, - "end": 3431, + "start": 3442, + "end": 3443, "loc": { "start": { "line": 68, @@ -1535,8 +1535,8 @@ }, { "type": "ExpressionStatement", - "start": 3437, - "end": 3459, + "start": 3449, + "end": 3471, "loc": { "start": { "line": 69, @@ -1549,8 +1549,8 @@ }, "expression": { "type": "CallExpression", - "start": 3437, - "end": 3458, + "start": 3449, + "end": 3470, "loc": { "start": { "line": 69, @@ -1563,8 +1563,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3437, - "end": 3456, + "start": 3449, + "end": 3468, "loc": { "start": { "line": 69, @@ -1577,8 +1577,8 @@ }, "object": { "type": "Identifier", - "start": 3437, - "end": 3444, + "start": 3449, + "end": 3456, "loc": { "start": { "line": 69, @@ -1594,8 +1594,8 @@ }, "property": { "type": "Identifier", - "start": 3445, - "end": 3456, + "start": 3457, + "end": 3468, "loc": { "start": { "line": 69, @@ -1622,8 +1622,8 @@ }, "property": { "type": "Identifier", - "start": 3465, - "end": 3470, + "start": 3477, + "end": 3482, "loc": { "start": { "line": 70, @@ -1642,8 +1642,8 @@ "arguments": [ { "type": "ArrowFunctionExpression", - "start": 3471, - "end": 3507, + "start": 3483, + "end": 3519, "loc": { "start": { "line": 70, @@ -1661,8 +1661,8 @@ "params": [ { "type": "Identifier", - "start": 3471, - "end": 3474, + "start": 3483, + "end": 3486, "loc": { "start": { "line": 70, @@ -1679,8 +1679,8 @@ ], "body": { "type": "BlockStatement", - "start": 3478, - "end": 3507, + "start": 3490, + "end": 3519, "loc": { "start": { "line": 70, @@ -1694,8 +1694,8 @@ "body": [ { "type": "ExpressionStatement", - "start": 3484, - "end": 3503, + "start": 3496, + "end": 3515, "loc": { "start": { "line": 71, @@ -1708,8 +1708,8 @@ }, "expression": { "type": "CallExpression", - "start": 3484, - "end": 3502, + "start": 3496, + "end": 3514, "loc": { "start": { "line": 71, @@ -1722,8 +1722,8 @@ }, "callee": { "type": "MemberExpression", - "start": 3484, - "end": 3497, + "start": 3496, + "end": 3509, "loc": { "start": { "line": 71, @@ -1736,8 +1736,8 @@ }, "object": { "type": "Identifier", - "start": 3484, - "end": 3491, + "start": 3496, + "end": 3503, "loc": { "start": { "line": 71, @@ -1753,8 +1753,8 @@ }, "property": { "type": "Identifier", - "start": 3492, - "end": 3497, + "start": 3504, + "end": 3509, "loc": { "start": { "line": 71, @@ -1773,8 +1773,8 @@ "arguments": [ { "type": "Identifier", - "start": 3498, - "end": 3501, + "start": 3510, + "end": 3513, "loc": { "start": { "line": 71, @@ -1810,9 +1810,9 @@ "leadingComments": [ { "type": "CommentBlock", - "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.antialias = 2] Antialiasing grade 抗锯齿级别\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", + "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.superSample = 2] rate for super sampling rate 超采样等级\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", "start": 556, - "end": 3151, + "end": 3163, "loc": { "start": { "line": 28, @@ -1829,8 +1829,8 @@ { "type": "CommentBlock", "value": "*\n * Return the data URI of current frame, MINE type is image/png.\n * @return {DOMString} Which contains data URI, MINE type is image/png\n * @example\n * You can use codes below to let the user download the current frame\n *\n * let link = document.createElement('a');\n * link.innerHTML = 'Download image';\n * link.href = L2Dwidget.captureFrame();\n * link.download = 'live2d.png';\n * link.click();\n *\n * @description Thanks to @journey-ad https://github.com/journey-ad/live2d_src/commit/97356a19f93d2abd83966f032a53b5ca1109fbc3\n ", - "start": 3514, - "end": 4044, + "start": 3526, + "end": 4056, "loc": { "start": { "line": 76, @@ -1846,8 +1846,8 @@ }, { "type": "ExpressionStatement", - "start": 4046, - "end": 4109, + "start": 4058, + "end": 4121, "loc": { "start": { "line": 91, @@ -1860,8 +1860,8 @@ }, "expression": { "type": "AssignmentExpression", - "start": 4046, - "end": 4108, + "start": 4058, + "end": 4120, "loc": { "start": { "line": 91, @@ -1875,8 +1875,8 @@ "operator": "=", "left": { "type": "MemberExpression", - "start": 4046, - "end": 4068, + "start": 4058, + "end": 4080, "loc": { "start": { "line": 91, @@ -1889,8 +1889,8 @@ }, "object": { "type": "Identifier", - "start": 4046, - "end": 4055, + "start": 4058, + "end": 4067, "loc": { "start": { "line": 91, @@ -1907,8 +1907,8 @@ }, "property": { "type": "Identifier", - "start": 4056, - "end": 4068, + "start": 4068, + "end": 4080, "loc": { "start": { "line": 91, @@ -1927,8 +1927,8 @@ }, "right": { "type": "ArrowFunctionExpression", - "start": 4071, - "end": 4108, + "start": 4083, + "end": 4120, "loc": { "start": { "line": 91, @@ -1946,8 +1946,8 @@ "params": [], "body": { "type": "BlockStatement", - "start": 4077, - "end": 4108, + "start": 4089, + "end": 4120, "loc": { "start": { "line": 91, @@ -1961,8 +1961,8 @@ "body": [ { "type": "ReturnStatement", - "start": 4078, - "end": 4107, + "start": 4090, + "end": 4119, "loc": { "start": { "line": 91, @@ -1975,8 +1975,8 @@ }, "argument": { "type": "CallExpression", - "start": 4085, - "end": 4107, + "start": 4097, + "end": 4119, "loc": { "start": { "line": 91, @@ -1989,8 +1989,8 @@ }, "callee": { "type": "MemberExpression", - "start": 4085, - "end": 4105, + "start": 4097, + "end": 4117, "loc": { "start": { "line": 91, @@ -2003,8 +2003,8 @@ }, "object": { "type": "Identifier", - "start": 4085, - "end": 4092, + "start": 4097, + "end": 4104, "loc": { "start": { "line": 91, @@ -2020,8 +2020,8 @@ }, "property": { "type": "Identifier", - "start": 4093, - "end": 4105, + "start": 4105, + "end": 4117, "loc": { "start": { "line": 91, @@ -2050,8 +2050,8 @@ { "type": "CommentBlock", "value": "*\n * Return the data URI of current frame, MINE type is image/png.\n * @return {DOMString} Which contains data URI, MINE type is image/png\n * @example\n * You can use codes below to let the user download the current frame\n *\n * let link = document.createElement('a');\n * link.innerHTML = 'Download image';\n * link.href = L2Dwidget.captureFrame();\n * link.download = 'live2d.png';\n * link.click();\n *\n * @description Thanks to @journey-ad https://github.com/journey-ad/live2d_src/commit/97356a19f93d2abd83966f032a53b5ca1109fbc3\n ", - "start": 3514, - "end": 4044, + "start": 3526, + "end": 4056, "loc": { "start": { "line": 76, @@ -2067,8 +2067,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 4111, - "end": 4134, + "start": 4123, + "end": 4146, "loc": { "start": { "line": 93, @@ -2083,8 +2083,8 @@ "specifiers": [ { "type": "ExportSpecifier", - "start": 4122, - "end": 4131, + "start": 4134, + "end": 4143, "loc": { "start": { "line": 94, @@ -2097,8 +2097,8 @@ }, "local": { "type": "Identifier", - "start": 4122, - "end": 4131, + "start": 4134, + "end": 4143, "loc": { "start": { "line": 94, @@ -2114,8 +2114,8 @@ }, "exported": { "type": "Identifier", - "start": 4122, - "end": 4131, + "start": 4134, + "end": 4143, "loc": { "start": { "line": 94, @@ -2135,8 +2135,8 @@ }, { "type": "ExportNamedDeclaration", - "start": 4111, - "end": 4134, + "start": 4123, + "end": 4146, "loc": { "start": { "line": 93, @@ -2445,9 +2445,9 @@ }, { "type": "CommentBlock", - "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.antialias = 2] Antialiasing grade 抗锯齿级别\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", + "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.superSample = 2] rate for super sampling rate 超采样等级\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", "start": 556, - "end": 3151, + "end": 3163, "loc": { "start": { "line": 28, @@ -2462,8 +2462,8 @@ { "type": "CommentBlock", "value": " webpackMode: \"lazy\" ", - "start": 3362, - "end": 3387, + "start": 3374, + "end": 3399, "loc": { "start": { "line": 67, @@ -2478,8 +2478,8 @@ { "type": "CommentBlock", "value": "*\n * Return the data URI of current frame, MINE type is image/png.\n * @return {DOMString} Which contains data URI, MINE type is image/png\n * @example\n * You can use codes below to let the user download the current frame\n *\n * let link = document.createElement('a');\n * link.innerHTML = 'Download image';\n * link.href = L2Dwidget.captureFrame();\n * link.download = 'live2d.png';\n * link.click();\n *\n * @description Thanks to @journey-ad https://github.com/journey-ad/live2d_src/commit/97356a19f93d2abd83966f032a53b5ca1109fbc3\n ", - "start": 3514, - "end": 4044, + "start": 3526, + "end": 4056, "loc": { "start": { "line": 76, @@ -3764,9 +3764,9 @@ }, { "type": "CommentBlock", - "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.antialias = 2] Antialiasing grade 抗锯齿级别\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", + "value": "*\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.superSample = 2] rate for super sampling rate 超采样等级\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n ", "start": 556, - "end": 3151, + "end": 3163, "loc": { "start": { "line": 28, @@ -3791,8 +3791,8 @@ "binop": null }, "value": "L2Dwidget", - "start": 3153, - "end": 3162, + "start": 3165, + "end": 3174, "loc": { "start": { "line": 57, @@ -3817,8 +3817,8 @@ "binop": null, "updateContext": null }, - "start": 3162, - "end": 3163, + "start": 3174, + "end": 3175, "loc": { "start": { "line": 57, @@ -3843,8 +3843,8 @@ "binop": null }, "value": "init", - "start": 3163, - "end": 3167, + "start": 3175, + "end": 3179, "loc": { "start": { "line": 57, @@ -3870,8 +3870,8 @@ "updateContext": null }, "value": "=", - "start": 3168, - "end": 3169, + "start": 3180, + "end": 3181, "loc": { "start": { "line": 57, @@ -3895,8 +3895,8 @@ "postfix": false, "binop": null }, - "start": 3170, - "end": 3171, + "start": 3182, + "end": 3183, "loc": { "start": { "line": 57, @@ -3921,8 +3921,8 @@ "binop": null }, "value": "userConfig", - "start": 3171, - "end": 3181, + "start": 3183, + "end": 3193, "loc": { "start": { "line": 57, @@ -3946,8 +3946,8 @@ "postfix": false, "binop": null }, - "start": 3181, - "end": 3182, + "start": 3193, + "end": 3194, "loc": { "start": { "line": 57, @@ -3972,8 +3972,8 @@ "binop": null, "updateContext": null }, - "start": 3183, - "end": 3185, + "start": 3195, + "end": 3197, "loc": { "start": { "line": 57, @@ -3997,8 +3997,8 @@ "postfix": false, "binop": null }, - "start": 3186, - "end": 3187, + "start": 3198, + "end": 3199, "loc": { "start": { "line": 57, @@ -4023,8 +4023,8 @@ "binop": null }, "value": "userConfig", - "start": 3191, - "end": 3201, + "start": 3203, + "end": 3213, "loc": { "start": { "line": 59, @@ -4050,8 +4050,8 @@ "updateContext": null }, "value": "=", - "start": 3202, - "end": 3203, + "start": 3214, + "end": 3215, "loc": { "start": { "line": 59, @@ -4078,8 +4078,8 @@ "updateContext": null }, "value": "typeof", - "start": 3204, - "end": 3210, + "start": 3216, + "end": 3222, "loc": { "start": { "line": 59, @@ -4104,8 +4104,8 @@ "binop": null }, "value": "userConfig", - "start": 3211, - "end": 3221, + "start": 3223, + "end": 3233, "loc": { "start": { "line": 59, @@ -4131,8 +4131,8 @@ "updateContext": null }, "value": "===", - "start": 3222, - "end": 3225, + "start": 3234, + "end": 3237, "loc": { "start": { "line": 59, @@ -4158,8 +4158,8 @@ "updateContext": null }, "value": "undefined", - "start": 3226, - "end": 3237, + "start": 3238, + "end": 3249, "loc": { "start": { "line": 59, @@ -4184,8 +4184,8 @@ "binop": null, "updateContext": null }, - "start": 3238, - "end": 3239, + "start": 3250, + "end": 3251, "loc": { "start": { "line": 59, @@ -4209,8 +4209,8 @@ "postfix": false, "binop": null }, - "start": 3240, - "end": 3241, + "start": 3252, + "end": 3253, "loc": { "start": { "line": 59, @@ -4234,8 +4234,8 @@ "postfix": false, "binop": null }, - "start": 3241, - "end": 3242, + "start": 3253, + "end": 3254, "loc": { "start": { "line": 59, @@ -4260,8 +4260,8 @@ "binop": null, "updateContext": null }, - "start": 3243, - "end": 3244, + "start": 3255, + "end": 3256, "loc": { "start": { "line": 59, @@ -4286,8 +4286,8 @@ "binop": null }, "value": "userConfig", - "start": 3245, - "end": 3255, + "start": 3257, + "end": 3267, "loc": { "start": { "line": 59, @@ -4312,8 +4312,8 @@ "binop": null, "updateContext": null }, - "start": 3255, - "end": 3256, + "start": 3267, + "end": 3268, "loc": { "start": { "line": 59, @@ -4338,8 +4338,8 @@ "binop": null }, "value": "configApplyer", - "start": 3260, - "end": 3273, + "start": 3272, + "end": 3285, "loc": { "start": { "line": 61, @@ -4363,8 +4363,8 @@ "postfix": false, "binop": null }, - "start": 3273, - "end": 3274, + "start": 3285, + "end": 3286, "loc": { "start": { "line": 61, @@ -4389,8 +4389,8 @@ "binop": null }, "value": "userConfig", - "start": 3274, - "end": 3284, + "start": 3286, + "end": 3296, "loc": { "start": { "line": 61, @@ -4414,8 +4414,8 @@ "postfix": false, "binop": null }, - "start": 3284, - "end": 3285, + "start": 3296, + "end": 3297, "loc": { "start": { "line": 61, @@ -4440,8 +4440,8 @@ "binop": null, "updateContext": null }, - "start": 3285, - "end": 3286, + "start": 3297, + "end": 3298, "loc": { "start": { "line": 61, @@ -4468,8 +4468,8 @@ "updateContext": null }, "value": "if", - "start": 3290, - "end": 3292, + "start": 3302, + "end": 3304, "loc": { "start": { "line": 63, @@ -4493,8 +4493,8 @@ "postfix": false, "binop": null }, - "start": 3292, - "end": 3293, + "start": 3304, + "end": 3305, "loc": { "start": { "line": 63, @@ -4518,8 +4518,8 @@ "postfix": false, "binop": null }, - "start": 3293, - "end": 3294, + "start": 3305, + "end": 3306, "loc": { "start": { "line": 63, @@ -4545,8 +4545,8 @@ "updateContext": null }, "value": "!", - "start": 3294, - "end": 3295, + "start": 3306, + "end": 3307, "loc": { "start": { "line": 63, @@ -4571,8 +4571,8 @@ "binop": null }, "value": "config", - "start": 3295, - "end": 3301, + "start": 3307, + "end": 3313, "loc": { "start": { "line": 63, @@ -4597,8 +4597,8 @@ "binop": null, "updateContext": null }, - "start": 3301, - "end": 3302, + "start": 3313, + "end": 3314, "loc": { "start": { "line": 63, @@ -4623,8 +4623,8 @@ "binop": null }, "value": "mobile", - "start": 3302, - "end": 3308, + "start": 3314, + "end": 3320, "loc": { "start": { "line": 63, @@ -4649,8 +4649,8 @@ "binop": null, "updateContext": null }, - "start": 3308, - "end": 3309, + "start": 3320, + "end": 3321, "loc": { "start": { "line": 63, @@ -4675,8 +4675,8 @@ "binop": null }, "value": "show", - "start": 3309, - "end": 3313, + "start": 3321, + "end": 3325, "loc": { "start": { "line": 63, @@ -4700,8 +4700,8 @@ "postfix": false, "binop": null }, - "start": 3313, - "end": 3314, + "start": 3325, + "end": 3326, "loc": { "start": { "line": 63, @@ -4727,8 +4727,8 @@ "updateContext": null }, "value": "&&", - "start": 3314, - "end": 3316, + "start": 3326, + "end": 3328, "loc": { "start": { "line": 63, @@ -4752,8 +4752,8 @@ "postfix": false, "binop": null }, - "start": 3316, - "end": 3317, + "start": 3328, + "end": 3329, "loc": { "start": { "line": 63, @@ -4778,8 +4778,8 @@ "binop": null }, "value": "device", - "start": 3317, - "end": 3323, + "start": 3329, + "end": 3335, "loc": { "start": { "line": 63, @@ -4804,8 +4804,8 @@ "binop": null, "updateContext": null }, - "start": 3323, - "end": 3324, + "start": 3335, + "end": 3336, "loc": { "start": { "line": 63, @@ -4830,8 +4830,8 @@ "binop": null }, "value": "mobile", - "start": 3324, - "end": 3330, + "start": 3336, + "end": 3342, "loc": { "start": { "line": 63, @@ -4855,8 +4855,8 @@ "postfix": false, "binop": null }, - "start": 3330, - "end": 3331, + "start": 3342, + "end": 3343, "loc": { "start": { "line": 63, @@ -4880,8 +4880,8 @@ "postfix": false, "binop": null }, - "start": 3331, - "end": 3332, + "start": 3343, + "end": 3344, "loc": { "start": { "line": 63, @@ -4905,8 +4905,8 @@ "postfix": false, "binop": null }, - "start": 3332, - "end": 3333, + "start": 3344, + "end": 3345, "loc": { "start": { "line": 63, @@ -4930,8 +4930,8 @@ "postfix": false, "binop": null }, - "start": 3333, - "end": 3334, + "start": 3345, + "end": 3346, "loc": { "start": { "line": 63, @@ -4955,8 +4955,8 @@ "postfix": false, "binop": null }, - "start": 3334, - "end": 3335, + "start": 3346, + "end": 3347, "loc": { "start": { "line": 63, @@ -4983,8 +4983,8 @@ "updateContext": null }, "value": "return", - "start": 3340, - "end": 3346, + "start": 3352, + "end": 3358, "loc": { "start": { "line": 64, @@ -5009,8 +5009,8 @@ "binop": null, "updateContext": null }, - "start": 3346, - "end": 3347, + "start": 3358, + "end": 3359, "loc": { "start": { "line": 64, @@ -5034,8 +5034,8 @@ "postfix": false, "binop": null }, - "start": 3350, - "end": 3351, + "start": 3362, + "end": 3363, "loc": { "start": { "line": 65, @@ -5062,8 +5062,8 @@ "updateContext": null }, "value": "import", - "start": 3355, - "end": 3361, + "start": 3367, + "end": 3373, "loc": { "start": { "line": 67, @@ -5087,8 +5087,8 @@ "postfix": false, "binop": null }, - "start": 3361, - "end": 3362, + "start": 3373, + "end": 3374, "loc": { "start": { "line": 67, @@ -5103,8 +5103,8 @@ { "type": "CommentBlock", "value": " webpackMode: \"lazy\" ", - "start": 3362, - "end": 3387, + "start": 3374, + "end": 3399, "loc": { "start": { "line": 67, @@ -5130,8 +5130,8 @@ "updateContext": null }, "value": "./cLive2DApp", - "start": 3388, - "end": 3402, + "start": 3400, + "end": 3414, "loc": { "start": { "line": 67, @@ -5155,8 +5155,8 @@ "postfix": false, "binop": null }, - "start": 3402, - "end": 3403, + "start": 3414, + "end": 3415, "loc": { "start": { "line": 67, @@ -5181,8 +5181,8 @@ "binop": null, "updateContext": null }, - "start": 3403, - "end": 3404, + "start": 3415, + "end": 3416, "loc": { "start": { "line": 67, @@ -5207,8 +5207,8 @@ "binop": null }, "value": "then", - "start": 3404, - "end": 3408, + "start": 3416, + "end": 3420, "loc": { "start": { "line": 67, @@ -5232,8 +5232,8 @@ "postfix": false, "binop": null }, - "start": 3408, - "end": 3409, + "start": 3420, + "end": 3421, "loc": { "start": { "line": 67, @@ -5258,8 +5258,8 @@ "binop": null }, "value": "f", - "start": 3409, - "end": 3410, + "start": 3421, + "end": 3422, "loc": { "start": { "line": 67, @@ -5284,8 +5284,8 @@ "binop": null, "updateContext": null }, - "start": 3411, - "end": 3413, + "start": 3423, + "end": 3425, "loc": { "start": { "line": 67, @@ -5309,8 +5309,8 @@ "postfix": false, "binop": null }, - "start": 3414, - "end": 3415, + "start": 3426, + "end": 3427, "loc": { "start": { "line": 67, @@ -5335,8 +5335,8 @@ "binop": null }, "value": "coreApp", - "start": 3420, - "end": 3427, + "start": 3432, + "end": 3439, "loc": { "start": { "line": 68, @@ -5362,8 +5362,8 @@ "updateContext": null }, "value": "=", - "start": 3428, - "end": 3429, + "start": 3440, + "end": 3441, "loc": { "start": { "line": 68, @@ -5388,8 +5388,8 @@ "binop": null }, "value": "f", - "start": 3430, - "end": 3431, + "start": 3442, + "end": 3443, "loc": { "start": { "line": 68, @@ -5414,8 +5414,8 @@ "binop": null, "updateContext": null }, - "start": 3431, - "end": 3432, + "start": 3443, + "end": 3444, "loc": { "start": { "line": 68, @@ -5440,8 +5440,8 @@ "binop": null }, "value": "coreApp", - "start": 3437, - "end": 3444, + "start": 3449, + "end": 3456, "loc": { "start": { "line": 69, @@ -5466,8 +5466,8 @@ "binop": null, "updateContext": null }, - "start": 3444, - "end": 3445, + "start": 3456, + "end": 3457, "loc": { "start": { "line": 69, @@ -5492,8 +5492,8 @@ "binop": null }, "value": "theRealInit", - "start": 3445, - "end": 3456, + "start": 3457, + "end": 3468, "loc": { "start": { "line": 69, @@ -5517,8 +5517,8 @@ "postfix": false, "binop": null }, - "start": 3456, - "end": 3457, + "start": 3468, + "end": 3469, "loc": { "start": { "line": 69, @@ -5542,8 +5542,8 @@ "postfix": false, "binop": null }, - "start": 3457, - "end": 3458, + "start": 3469, + "end": 3470, "loc": { "start": { "line": 69, @@ -5568,8 +5568,8 @@ "binop": null, "updateContext": null }, - "start": 3458, - "end": 3459, + "start": 3470, + "end": 3471, "loc": { "start": { "line": 69, @@ -5593,8 +5593,8 @@ "postfix": false, "binop": null }, - "start": 3462, - "end": 3463, + "start": 3474, + "end": 3475, "loc": { "start": { "line": 70, @@ -5618,8 +5618,8 @@ "postfix": false, "binop": null }, - "start": 3463, - "end": 3464, + "start": 3475, + "end": 3476, "loc": { "start": { "line": 70, @@ -5644,8 +5644,8 @@ "binop": null, "updateContext": null }, - "start": 3464, - "end": 3465, + "start": 3476, + "end": 3477, "loc": { "start": { "line": 70, @@ -5672,8 +5672,8 @@ "updateContext": null }, "value": "catch", - "start": 3465, - "end": 3470, + "start": 3477, + "end": 3482, "loc": { "start": { "line": 70, @@ -5697,8 +5697,8 @@ "postfix": false, "binop": null }, - "start": 3470, - "end": 3471, + "start": 3482, + "end": 3483, "loc": { "start": { "line": 70, @@ -5723,8 +5723,8 @@ "binop": null }, "value": "err", - "start": 3471, - "end": 3474, + "start": 3483, + "end": 3486, "loc": { "start": { "line": 70, @@ -5749,8 +5749,8 @@ "binop": null, "updateContext": null }, - "start": 3475, - "end": 3477, + "start": 3487, + "end": 3489, "loc": { "start": { "line": 70, @@ -5774,8 +5774,8 @@ "postfix": false, "binop": null }, - "start": 3478, - "end": 3479, + "start": 3490, + "end": 3491, "loc": { "start": { "line": 70, @@ -5800,8 +5800,8 @@ "binop": null }, "value": "console", - "start": 3484, - "end": 3491, + "start": 3496, + "end": 3503, "loc": { "start": { "line": 71, @@ -5826,8 +5826,8 @@ "binop": null, "updateContext": null }, - "start": 3491, - "end": 3492, + "start": 3503, + "end": 3504, "loc": { "start": { "line": 71, @@ -5852,8 +5852,8 @@ "binop": null }, "value": "error", - "start": 3492, - "end": 3497, + "start": 3504, + "end": 3509, "loc": { "start": { "line": 71, @@ -5877,8 +5877,8 @@ "postfix": false, "binop": null }, - "start": 3497, - "end": 3498, + "start": 3509, + "end": 3510, "loc": { "start": { "line": 71, @@ -5903,8 +5903,8 @@ "binop": null }, "value": "err", - "start": 3498, - "end": 3501, + "start": 3510, + "end": 3513, "loc": { "start": { "line": 71, @@ -5928,8 +5928,8 @@ "postfix": false, "binop": null }, - "start": 3501, - "end": 3502, + "start": 3513, + "end": 3514, "loc": { "start": { "line": 71, @@ -5954,8 +5954,8 @@ "binop": null, "updateContext": null }, - "start": 3502, - "end": 3503, + "start": 3514, + "end": 3515, "loc": { "start": { "line": 71, @@ -5979,8 +5979,8 @@ "postfix": false, "binop": null }, - "start": 3506, - "end": 3507, + "start": 3518, + "end": 3519, "loc": { "start": { "line": 72, @@ -6004,8 +6004,8 @@ "postfix": false, "binop": null }, - "start": 3507, - "end": 3508, + "start": 3519, + "end": 3520, "loc": { "start": { "line": 72, @@ -6030,8 +6030,8 @@ "binop": null, "updateContext": null }, - "start": 3508, - "end": 3509, + "start": 3520, + "end": 3521, "loc": { "start": { "line": 72, @@ -6055,8 +6055,8 @@ "postfix": false, "binop": null }, - "start": 3511, - "end": 3512, + "start": 3523, + "end": 3524, "loc": { "start": { "line": 74, @@ -6071,8 +6071,8 @@ { "type": "CommentBlock", "value": "*\n * Return the data URI of current frame, MINE type is image/png.\n * @return {DOMString} Which contains data URI, MINE type is image/png\n * @example\n * You can use codes below to let the user download the current frame\n *\n * let link = document.createElement('a');\n * link.innerHTML = 'Download image';\n * link.href = L2Dwidget.captureFrame();\n * link.download = 'live2d.png';\n * link.click();\n *\n * @description Thanks to @journey-ad https://github.com/journey-ad/live2d_src/commit/97356a19f93d2abd83966f032a53b5ca1109fbc3\n ", - "start": 3514, - "end": 4044, + "start": 3526, + "end": 4056, "loc": { "start": { "line": 76, @@ -6097,8 +6097,8 @@ "binop": null }, "value": "L2Dwidget", - "start": 4046, - "end": 4055, + "start": 4058, + "end": 4067, "loc": { "start": { "line": 91, @@ -6123,8 +6123,8 @@ "binop": null, "updateContext": null }, - "start": 4055, - "end": 4056, + "start": 4067, + "end": 4068, "loc": { "start": { "line": 91, @@ -6149,8 +6149,8 @@ "binop": null }, "value": "captureFrame", - "start": 4056, - "end": 4068, + "start": 4068, + "end": 4080, "loc": { "start": { "line": 91, @@ -6176,8 +6176,8 @@ "updateContext": null }, "value": "=", - "start": 4069, - "end": 4070, + "start": 4081, + "end": 4082, "loc": { "start": { "line": 91, @@ -6201,8 +6201,8 @@ "postfix": false, "binop": null }, - "start": 4071, - "end": 4072, + "start": 4083, + "end": 4084, "loc": { "start": { "line": 91, @@ -6226,8 +6226,8 @@ "postfix": false, "binop": null }, - "start": 4072, - "end": 4073, + "start": 4084, + "end": 4085, "loc": { "start": { "line": 91, @@ -6252,8 +6252,8 @@ "binop": null, "updateContext": null }, - "start": 4074, - "end": 4076, + "start": 4086, + "end": 4088, "loc": { "start": { "line": 91, @@ -6277,8 +6277,8 @@ "postfix": false, "binop": null }, - "start": 4077, - "end": 4078, + "start": 4089, + "end": 4090, "loc": { "start": { "line": 91, @@ -6305,8 +6305,8 @@ "updateContext": null }, "value": "return", - "start": 4078, - "end": 4084, + "start": 4090, + "end": 4096, "loc": { "start": { "line": 91, @@ -6331,8 +6331,8 @@ "binop": null }, "value": "coreApp", - "start": 4085, - "end": 4092, + "start": 4097, + "end": 4104, "loc": { "start": { "line": 91, @@ -6357,8 +6357,8 @@ "binop": null, "updateContext": null }, - "start": 4092, - "end": 4093, + "start": 4104, + "end": 4105, "loc": { "start": { "line": 91, @@ -6383,8 +6383,8 @@ "binop": null }, "value": "captureFrame", - "start": 4093, - "end": 4105, + "start": 4105, + "end": 4117, "loc": { "start": { "line": 91, @@ -6408,8 +6408,8 @@ "postfix": false, "binop": null }, - "start": 4105, - "end": 4106, + "start": 4117, + "end": 4118, "loc": { "start": { "line": 91, @@ -6433,8 +6433,8 @@ "postfix": false, "binop": null }, - "start": 4106, - "end": 4107, + "start": 4118, + "end": 4119, "loc": { "start": { "line": 91, @@ -6458,8 +6458,8 @@ "postfix": false, "binop": null }, - "start": 4107, - "end": 4108, + "start": 4119, + "end": 4120, "loc": { "start": { "line": 91, @@ -6484,8 +6484,8 @@ "binop": null, "updateContext": null }, - "start": 4108, - "end": 4109, + "start": 4120, + "end": 4121, "loc": { "start": { "line": 91, @@ -6512,8 +6512,8 @@ "updateContext": null }, "value": "export", - "start": 4111, - "end": 4117, + "start": 4123, + "end": 4129, "loc": { "start": { "line": 93, @@ -6537,8 +6537,8 @@ "postfix": false, "binop": null }, - "start": 4118, - "end": 4119, + "start": 4130, + "end": 4131, "loc": { "start": { "line": 93, @@ -6563,8 +6563,8 @@ "binop": null }, "value": "L2Dwidget", - "start": 4122, - "end": 4131, + "start": 4134, + "end": 4143, "loc": { "start": { "line": 94, @@ -6589,8 +6589,8 @@ "binop": null, "updateContext": null }, - "start": 4131, - "end": 4132, + "start": 4143, + "end": 4144, "loc": { "start": { "line": 94, @@ -6614,8 +6614,8 @@ "postfix": false, "binop": null }, - "start": 4133, - "end": 4134, + "start": 4145, + "end": 4146, "loc": { "start": { "line": 95, @@ -6640,8 +6640,8 @@ "binop": null, "updateContext": null }, - "start": 4135, - "end": 4135, + "start": 4147, + "end": 4147, "loc": { "start": { "line": 96, diff --git a/ghpages/docs/file/src/config/configMgr.js.html b/ghpages/docs/file/src/config/configMgr.js.html index 38e516e..0ec340a 100644 --- a/ghpages/docs/file/src/config/configMgr.js.html +++ b/ghpages/docs/file/src/config/configMgr.js.html @@ -92,7 +92,7 @@ myDefine: [], }, display: { - antialias: 2, + superSample: 2, width: 150, height: 300, position: 'right', diff --git a/ghpages/docs/file/src/config/configValidater.js.html b/ghpages/docs/file/src/config/configValidater.js.html index b4aee0e..df39c0f 100644 --- a/ghpages/docs/file/src/config/configValidater.js.html +++ b/ghpages/docs/file/src/config/configValidater.js.html @@ -87,7 +87,7 @@ myDefine: PropTypes.array, }), display: PropTypes.shape({ - antialias: PropTypes.number, + superSample: PropTypes.number, width: PropTypes.number, height: PropTypes.number, scale: PropTypes.number, diff --git a/ghpages/docs/file/src/elementMgr.js.html b/ghpages/docs/file/src/elementMgr.js.html index 028a1eb..6bd25ed 100644 --- a/ghpages/docs/file/src/elementMgr.js.html +++ b/ghpages/docs/file/src/elementMgr.js.html @@ -100,8 +100,8 @@ newElem.innerHTML = htmlTemplate; let newCanvasElem = document.createElement('canvas'); newCanvasElem.setAttribute('id', config.name.canvas); - newCanvasElem.setAttribute('width', config.display.width * config.display.antialias); - newCanvasElem.setAttribute('height', config.display.height * config.display.antialias); + newCanvasElem.setAttribute('width', config.display.width * config.display.superSample); + newCanvasElem.setAttribute('height', config.display.height * config.display.superSample); newCanvasElem.style.setProperty('position', 'fixed'); newCanvasElem.style.setProperty('width', config.display.width); newCanvasElem.style.setProperty('height', config.display.height); diff --git a/ghpages/docs/file/src/index.js.html b/ghpages/docs/file/src/index.js.html index 5de0c29..65fcd33 100644 --- a/ghpages/docs/file/src/index.js.html +++ b/ghpages/docs/file/src/index.js.html @@ -96,7 +96,7 @@ * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标 * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标 * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine - * @param {Number} [userConfig.display.antialias = 2] Antialiasing grade 抗锯齿级别 + * @param {Number} [userConfig.display.superSample = 2] rate for super sampling rate 超采样等级 * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度 * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度 * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右 diff --git a/ghpages/docs/index.json b/ghpages/docs/index.json index ebcae40..d83f559 100644 --- a/ghpages/docs/index.json +++ b/ghpages/docs/index.json @@ -2054,7 +2054,7 @@ "__docId__": 105, "kind": "file", "name": "src/config/configMgr.js", - "content": "// Created by xiazeyu.\n\n/**\n * @description The manager of configeration.\n */\n\n\n'use strict';\n\nimport _ from 'lodash';\n\n/**\n * The container of current configs\n * @type {Object}\n */\n\nlet currConfig = {};\n/**\n * Default settings for defaulter\n * @type {Object}\n */\n\nconst defaultConfig = {\n model: {\n jsonPath: 'https://unpkg.com/live2d-widget-model-shizuku@1.0.0/assets/shizuku.model.json',\n scale: 1,\n hHeadPos: 0.5,\n vHeadPos: 0.618,\n myDefine: [],\n },\n display: {\n antialias: 2,\n width: 150,\n height: 300,\n position: 'right',\n hOffset: 0,\n vOffset: -20,\n },\n mobile: {\n show: true,\n scale: 0.5,\n motion: true,\n },\n name: {\n canvas: 'live2dcanvas',\n div: 'live2d-widget',\n },\n react: {\n opacityDefault: 0.7,\n opacityOnHover: 0.2,\n myFunc: (e) => {console.log('(undefined) ┑( ̄Д  ̄)┍');},\n },\n dev: {\n log: false,\n border: (process.env.NODE_ENV === 'development' ? true : false),\n mouseLog: false,\n mouseFunc: (x, y, ix, iy) => {console.log(`MouseFunc: ${x},${y}; ${ix}, ${iy}`);},\n },\n // _: true,\n}\n\n/**\n * Apply users function, make the full settings\n * @param {Object} [userConfig] User's custom config\n * @return {null}\n */\n\nfunction configApplyer(userConfig){\n\n // if (_.has(userConfig, '_')){\n // import(/* webpackMode: \"lazy\" */ './configValidater').then(f => {\n // f.configValidater(userConfig);\n // }).catch(err => {\n // console.error(err);\n // });\n // }\n\n currConfig = _.defaultsDeep(userConfig, defaultConfig);\n console.log('currConfig:', currConfig);\n\n}\n\nexport {\n configApplyer,\n currConfig as config,\n}\n", + "content": "// Created by xiazeyu.\n\n/**\n * @description The manager of configeration.\n */\n\n\n'use strict';\n\nimport _ from 'lodash';\n\n/**\n * The container of current configs\n * @type {Object}\n */\n\nlet currConfig = {};\n/**\n * Default settings for defaulter\n * @type {Object}\n */\n\nconst defaultConfig = {\n model: {\n jsonPath: 'https://unpkg.com/live2d-widget-model-shizuku@1.0.0/assets/shizuku.model.json',\n scale: 1,\n hHeadPos: 0.5,\n vHeadPos: 0.618,\n myDefine: [],\n },\n display: {\n superSample: 2,\n width: 150,\n height: 300,\n position: 'right',\n hOffset: 0,\n vOffset: -20,\n },\n mobile: {\n show: true,\n scale: 0.5,\n motion: true,\n },\n name: {\n canvas: 'live2dcanvas',\n div: 'live2d-widget',\n },\n react: {\n opacityDefault: 0.7,\n opacityOnHover: 0.2,\n myFunc: (e) => {console.log('(undefined) ┑( ̄Д  ̄)┍');},\n },\n dev: {\n log: false,\n border: (process.env.NODE_ENV === 'development' ? true : false),\n mouseLog: false,\n mouseFunc: (x, y, ix, iy) => {console.log(`MouseFunc: ${x},${y}; ${ix}, ${iy}`);},\n },\n // _: true,\n}\n\n/**\n * Apply users function, make the full settings\n * @param {Object} [userConfig] User's custom config\n * @return {null}\n */\n\nfunction configApplyer(userConfig){\n\n // if (_.has(userConfig, '_')){\n // import(/* webpackMode: \"lazy\" */ './configValidater').then(f => {\n // f.configValidater(userConfig);\n // }).catch(err => {\n // console.error(err);\n // });\n // }\n\n currConfig = _.defaultsDeep(userConfig, defaultConfig);\n console.log('currConfig:', currConfig);\n\n}\n\nexport {\n configApplyer,\n currConfig as config,\n}\n", "static": true, "longname": "D:/git/live2d-widget.js/src/config/configMgr.js", "access": "public", @@ -2137,7 +2137,7 @@ "__docId__": 109, "kind": "file", "name": "src/config/configValidater.js", - "content": "// Created by xiazeyu.\n\n/**\n * @description The validater function for user's config.\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @requires prop-types, use npm i prop-types\n */\n\n\n'use strict';\n\n\nlet PropTypes = require('prop-types');\n/**\n * The propTypes configeration of config\n * @type {Object}\n */\n\nconst configPropTypes = {\n model: PropTypes.shape({\n jsonPath: PropTypes.string,\n hHeadPos: PropTypes.number,\n vHeadPos: PropTypes.number,\n myDefine: PropTypes.array,\n }),\n display: PropTypes.shape({\n antialias: PropTypes.number,\n width: PropTypes.number,\n height: PropTypes.number,\n scale: PropTypes.number,\n position: PropTypes.oneOf(['left', 'right']),\n hOffset: PropTypes.number,\n vOffset: PropTypes.number,\n }),\n mobile: PropTypes.shape({\n show: PropTypes.bool,\n scale: PropTypes.number,\n motion: PropTypes.bool,\n }),\n name: PropTypes.shape({\n canvas: PropTypes.string,\n div: PropTypes.string,\n }),\n react: PropTypes.shape({\n opacityDefault: PropTypes.number,\n opacityOnHover: PropTypes.number,\n myFunc: PropTypes.func,\n }),\n dev: PropTypes.shape({\n log: PropTypes.bool,\n border: PropTypes.bool,\n mouseLog: PropTypes.bool,\n mouseFunc: PropTypes.func,\n }),\n}\n/**\n * The validater for user config\n * See https://github.com/facebook/prop-types\n * @param {Object} [userConfig] User's config\n * @description Only console.warn\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @return {null}\n */\n\nfunction configValidater(userConfig){\n PropTypes.checkPropTypes(configPropTypes, userConfig, 'config', 'Live2D-widget');\n}\n\nif (process.env.NODE_ENV === 'development') window.cV = configValidater;\n\nmodule.exports = {\n configValidater: configValidater,\n}\n", + "content": "// Created by xiazeyu.\n\n/**\n * @description The validater function for user's config.\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @requires prop-types, use npm i prop-types\n */\n\n\n'use strict';\n\n\nlet PropTypes = require('prop-types');\n/**\n * The propTypes configeration of config\n * @type {Object}\n */\n\nconst configPropTypes = {\n model: PropTypes.shape({\n jsonPath: PropTypes.string,\n hHeadPos: PropTypes.number,\n vHeadPos: PropTypes.number,\n myDefine: PropTypes.array,\n }),\n display: PropTypes.shape({\n superSample: PropTypes.number,\n width: PropTypes.number,\n height: PropTypes.number,\n scale: PropTypes.number,\n position: PropTypes.oneOf(['left', 'right']),\n hOffset: PropTypes.number,\n vOffset: PropTypes.number,\n }),\n mobile: PropTypes.shape({\n show: PropTypes.bool,\n scale: PropTypes.number,\n motion: PropTypes.bool,\n }),\n name: PropTypes.shape({\n canvas: PropTypes.string,\n div: PropTypes.string,\n }),\n react: PropTypes.shape({\n opacityDefault: PropTypes.number,\n opacityOnHover: PropTypes.number,\n myFunc: PropTypes.func,\n }),\n dev: PropTypes.shape({\n log: PropTypes.bool,\n border: PropTypes.bool,\n mouseLog: PropTypes.bool,\n mouseFunc: PropTypes.func,\n }),\n}\n/**\n * The validater for user config\n * See https://github.com/facebook/prop-types\n * @param {Object} [userConfig] User's config\n * @description Only console.warn\n * @deprecated Only respond one time when you call it, won't be built in production.\n * @return {null}\n */\n\nfunction configValidater(userConfig){\n PropTypes.checkPropTypes(configPropTypes, userConfig, 'config', 'Live2D-widget');\n}\n\nif (process.env.NODE_ENV === 'development') window.cV = configValidater;\n\nmodule.exports = {\n configValidater: configValidater,\n}\n", "static": true, "longname": "D:/git/live2d-widget.js/src/config/configValidater.js", "access": "public", @@ -2219,7 +2219,7 @@ "__docId__": 113, "kind": "file", "name": "src/elementMgr.js", - "content": "/**\n * @description The container and manager for all the DOM and WebGL emelents.\n */\n\n\nimport { config } from './config/configMgr';\nimport htmlTemplate from './tmplate/innerHTML';\n\n/**\n * The current WebGL element\n * @type {RenderingContext}\n */\n\nlet currWebGL = undefined;\n\n/**\n * The current canvas element\n * @type {HTMLElement}\n */\n\nlet currCanvas;\n\n/**\n * Create the canvas and styles using DOM\n * @return {null}\n */\n\nfunction createElement(){\n\n let e = document.getElementById(config.name.div)\n if (e !== null){\n document.body.removeChild(e);\n }\n\n let newElem = document.createElement('div');\n newElem.id = config.name.div;\n newElem.innerHTML = htmlTemplate;\n let newCanvasElem = document.createElement('canvas');\n newCanvasElem.setAttribute('id', config.name.canvas);\n newCanvasElem.setAttribute('width', config.display.width * config.display.antialias);\n newCanvasElem.setAttribute('height', config.display.height * config.display.antialias);\n newCanvasElem.style.setProperty('position', 'fixed');\n newCanvasElem.style.setProperty('width', config.display.width);\n newCanvasElem.style.setProperty('height', config.display.height);\n newCanvasElem.style.setProperty('opacity', config.react.opacityDefault);\n newCanvasElem.style.setProperty(config.display.position, config.display.hOffset + 'px');\n newCanvasElem.style.setProperty('bottom', config.display.vOffset + 'px');\n newCanvasElem.style.setProperty('z-index', 99999);\n newCanvasElem.style.setProperty('pointer-events', 'none');\n if(config.dev.border) newCanvasElem.style.setProperty('border', 'dashed 1px #CCC');\n newElem.appendChild(newCanvasElem);\n\n document.body.appendChild(newElem);\n currCanvas = document.getElementById(config.name.canvas);\n\n initWebGL();\n\n}\n\n/**\n * Find and set the current WebGL element to the container\n * @return {null}\n */\n\nfunction initWebGL(){\n\n var NAMES = ['webgl2', 'webgl', 'experimental-webgl2', 'experimental-webgl', 'webkit-3d', 'moz-webgl'];\n for(let i = 0; i < NAMES.length; i++){\n try{\n let ctx = currCanvas.getContext(NAMES[i], {\n alpha: true,\n antialias: true,\n premultipliedAlpha: true,\n failIfMajorPerformanceCaveat: false,\n });\n if(ctx) currWebGL = ctx;\n }catch(e){}\n }\n if(!currWebGL){\n console.error('Live2D widgets: Failed to create WebGL context.');\n if(!window.WebGLRenderingContext){\n console.error('Your browser may not support WebGL, check https://get.webgl.org/ for futher information.');\n }\n return;\n }\n};\n\n\nexport{\n createElement,\n currWebGL,\n currCanvas,\n}\n", + "content": "/**\n * @description The container and manager for all the DOM and WebGL emelents.\n */\n\n\nimport { config } from './config/configMgr';\nimport htmlTemplate from './tmplate/innerHTML';\n\n/**\n * The current WebGL element\n * @type {RenderingContext}\n */\n\nlet currWebGL = undefined;\n\n/**\n * The current canvas element\n * @type {HTMLElement}\n */\n\nlet currCanvas;\n\n/**\n * Create the canvas and styles using DOM\n * @return {null}\n */\n\nfunction createElement(){\n\n let e = document.getElementById(config.name.div)\n if (e !== null){\n document.body.removeChild(e);\n }\n\n let newElem = document.createElement('div');\n newElem.id = config.name.div;\n newElem.innerHTML = htmlTemplate;\n let newCanvasElem = document.createElement('canvas');\n newCanvasElem.setAttribute('id', config.name.canvas);\n newCanvasElem.setAttribute('width', config.display.width * config.display.superSample);\n newCanvasElem.setAttribute('height', config.display.height * config.display.superSample);\n newCanvasElem.style.setProperty('position', 'fixed');\n newCanvasElem.style.setProperty('width', config.display.width);\n newCanvasElem.style.setProperty('height', config.display.height);\n newCanvasElem.style.setProperty('opacity', config.react.opacityDefault);\n newCanvasElem.style.setProperty(config.display.position, config.display.hOffset + 'px');\n newCanvasElem.style.setProperty('bottom', config.display.vOffset + 'px');\n newCanvasElem.style.setProperty('z-index', 99999);\n newCanvasElem.style.setProperty('pointer-events', 'none');\n if(config.dev.border) newCanvasElem.style.setProperty('border', 'dashed 1px #CCC');\n newElem.appendChild(newCanvasElem);\n\n document.body.appendChild(newElem);\n currCanvas = document.getElementById(config.name.canvas);\n\n initWebGL();\n\n}\n\n/**\n * Find and set the current WebGL element to the container\n * @return {null}\n */\n\nfunction initWebGL(){\n\n var NAMES = ['webgl2', 'webgl', 'experimental-webgl2', 'experimental-webgl', 'webkit-3d', 'moz-webgl'];\n for(let i = 0; i < NAMES.length; i++){\n try{\n let ctx = currCanvas.getContext(NAMES[i], {\n alpha: true,\n antialias: true,\n premultipliedAlpha: true,\n failIfMajorPerformanceCaveat: false,\n });\n if(ctx) currWebGL = ctx;\n }catch(e){}\n }\n if(!currWebGL){\n console.error('Live2D widgets: Failed to create WebGL context.');\n if(!window.WebGLRenderingContext){\n console.error('Your browser may not support WebGL, check https://get.webgl.org/ for futher information.');\n }\n return;\n }\n};\n\n\nexport{\n createElement,\n currWebGL,\n currCanvas,\n}\n", "static": true, "longname": "D:/git/live2d-widget.js/src/elementMgr.js", "access": "public", @@ -2303,7 +2303,7 @@ "__docId__": 117, "kind": "file", "name": "src/index.js", - "content": "// Created by xiazeyu.\n\n////////////////////////////////////\n// Celebrate for the 3.0 version! //\n////////////////////////////////////\n\n/**\n * @description The entry point of live2d-widget.\n */\n\n\n'use strict';\n\nimport device from 'current-device';\nimport { config, configApplyer }from './config/configMgr';\n\nif (process.env.NODE_ENV === 'development'){\n console.log('--- --- --- --- ---\\nHey that, notice that you are now in DEV MODE.\\n--- --- --- --- ---');\n}\n\nlet coreApp;\n/**\n * The main entry point, which ... is nothing\n */\n\nfunction L2Dwidget(){};\n\n/**\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.antialias = 2] Antialiasing grade 抗锯齿级别\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n */\n\nL2Dwidget.init = (userConfig) => {\n\n userConfig = typeof userConfig === 'undefined' ? {} : userConfig;\n\n configApplyer(userConfig);\n\n if((!config.mobile.show)&&(device.mobile())){\n return;\n }\n\n import(/* webpackMode: \"lazy\" */ './cLive2DApp').then(f => {\n coreApp = f;\n coreApp.theRealInit();\n }).catch(err => {\n console.error(err);\n });\n\n}\n\n/**\n * Return the data URI of current frame, MINE type is image/png.\n * @return {DOMString} Which contains data URI, MINE type is image/png\n * @example\n * You can use codes below to let the user download the current frame\n *\n * let link = document.createElement('a');\n * link.innerHTML = 'Download image';\n * link.href = L2Dwidget.captureFrame();\n * link.download = 'live2d.png';\n * link.click();\n *\n * @description Thanks to @journey-ad https://github.com/journey-ad/live2d_src/commit/97356a19f93d2abd83966f032a53b5ca1109fbc3\n */\n\nL2Dwidget.captureFrame = () => {return coreApp.captureFrame()};\n\nexport {\n L2Dwidget,\n}\n", + "content": "// Created by xiazeyu.\n\n////////////////////////////////////\n// Celebrate for the 3.0 version! //\n////////////////////////////////////\n\n/**\n * @description The entry point of live2d-widget.\n */\n\n\n'use strict';\n\nimport device from 'current-device';\nimport { config, configApplyer }from './config/configMgr';\n\nif (process.env.NODE_ENV === 'development'){\n console.log('--- --- --- --- ---\\nHey that, notice that you are now in DEV MODE.\\n--- --- --- --- ---');\n}\n\nlet coreApp;\n/**\n * The main entry point, which ... is nothing\n */\n\nfunction L2Dwidget(){};\n\n/**\n * The public entry point\n * @param {Object} [userConfig] User's custom config 用户自定义设置\n * @param {String} [userConfig.model.jsonPath = ''] Path to Live2D model's main json eg. `https://test.com/miku.model.json` model主文件路径\n * @param {Number} [userConfig.model.scale = 1] Scale between the model and the canvas 模型与canvas的缩放\n * @param {Number} [userConfig.model.hHeadPos = 0.5] Horizontal position of model's head 模型头部横坐标\n * @param {Number} [userConfig.model.vHeadPos = 0.618] Vertical position of model's head 模型头部纵坐标\n * @param {Array} [userConfig.model.myDefine = []] User's custom Defines which will override LDefine 自定义的LDefine\n * @param {Number} [userConfig.display.superSample = 2] rate for super sampling rate 超采样等级\n * @param {Number} [userConfig.display.width = 150] Width to the canvas which shows the model canvas的长度\n * @param {Number} [userConfig.display.height = 300] Height to the canvas which shows the model canvas的高度\n * @param {String} [userConfig.display.position = 'right'] Left of right side to show 显示位置:左或右\n * @param {Number} [userConfig.display.hOffset = 0] Horizontal offset of the canvas canvas水平偏移\n * @param {Number} [userConfig.display.vOffset = -20] Vertical offset of the canvas canvas垂直偏移\n * @param {Boolean} [userConfig.mobile.show = true] Whether to show on mobile device 是否在移动设备上显示\n * @param {Number} [userConfig.mobile.scale = 0.5] Scale on mobile device 移动设备上的缩放\n * @param {Boolean} [userConfig.mobile.motion = true] Whether to enable motion detection on mobile devices 移动设备是否开启重力感应\n * @param {String} [userConfig.name.canvas = 'live2dcanvas'] ID name of the canvas canvas元素的ID\n * @param {String} [userConfig.name.div = 'live2d-widget'] ID name of the div div元素的ID\n * @param {Number} [userConfig.react.opacityDefault = 0.7] Default opacity 默认透明度\n * @param {Number} [userConfig.react.opacityOnHover = 0.2] OnHover opacity 鼠标移上透明度\n * @param {Function} [userConfig.react.myFunc = func(e)] Custom event handler, won't override main handler, will reveice the event type. 自定义事件接收器\n * @param {Boolean} [userConfig.dev.log = false] Whether to show log 显示日志\n * @param {Boolean} [userConfig.dev.border = false] Whether to show border around the canvas 在canvas周围显示边界\n * @param {Boolean} [userConfig.dev.mouseLog = false] Whether to show mouse log (tons of log), only work when dev.log is enabled 显示鼠标移动\n * @param {Function} [userConfig.dev.mouseFunc = func(x, y, ix, iy)] Custom logger, only work when dev.log is enabled, will receive (x, y, ix, iy), which presents the actucally position and vitural position 自定义鼠标移动处理函数\n * @return {null}\n */\n\nL2Dwidget.init = (userConfig) => {\n\n userConfig = typeof userConfig === 'undefined' ? {} : userConfig;\n\n configApplyer(userConfig);\n\n if((!config.mobile.show)&&(device.mobile())){\n return;\n }\n\n import(/* webpackMode: \"lazy\" */ './cLive2DApp').then(f => {\n coreApp = f;\n coreApp.theRealInit();\n }).catch(err => {\n console.error(err);\n });\n\n}\n\n/**\n * Return the data URI of current frame, MINE type is image/png.\n * @return {DOMString} Which contains data URI, MINE type is image/png\n * @example\n * You can use codes below to let the user download the current frame\n *\n * let link = document.createElement('a');\n * link.innerHTML = 'Download image';\n * link.href = L2Dwidget.captureFrame();\n * link.download = 'live2d.png';\n * link.click();\n *\n * @description Thanks to @journey-ad https://github.com/journey-ad/live2d_src/commit/97356a19f93d2abd83966f032a53b5ca1109fbc3\n */\n\nL2Dwidget.captureFrame = () => {return coreApp.captureFrame()};\n\nexport {\n L2Dwidget,\n}\n", "static": true, "longname": "D:/git/live2d-widget.js/src/index.js", "access": "public", diff --git a/ghpages/docs/source.html b/ghpages/docs/source.html index 7bc7f79..476e129 100644 --- a/ghpages/docs/source.html +++ b/ghpages/docs/source.html @@ -120,34 +120,34 @@ src/config/configMgr.js configApplyer 66 %2/3 - 1634 byte + 1636 byte 86 - 2018-01-07 15:09:56 (UTC) + 2018-01-07 16:18:15 (UTC) src/config/configValidater.js - 33 %1/3 - 1818 byte + 1820 byte 73 - 2018-01-07 15:09:56 (UTC) + 2018-01-07 16:18:20 (UTC) src/elementMgr.js createElement currWebGL 100 %3/3 - 2604 byte + 2608 byte 93 - 2018-01-07 15:58:33 (UTC) + 2018-01-07 16:18:33 (UTC) src/index.js L2Dwidget 100 %1/1 - 4429 byte + 4441 byte 95 - 2018-01-07 15:48:38 (UTC) + 2018-01-07 16:17:55 (UTC) src/lib/Live2DFramework.js diff --git a/ghpages/lib/clL2D.0.min.js b/ghpages/lib/clL2D.0.min.js index b085801..5c0e679 100644 --- a/ghpages/lib/clL2D.0.min.js +++ b/ghpages/lib/clL2D.0.min.js @@ -1,3 +1,3 @@ -/*! https://github.com/xiazeyu/live2d-widget.js built@2018-1-14 00:14:06 */ -webpackJsonpL2Dwidget([0],{130:function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.captureFrame=i.theRealInit=void 0;var r=e(51),o=e(134),s=e(131),n=e(132),_=e(138),a=e(135),h=e(133),$=new _.cManager,l=!1,u=null,p=null,c=null,f=null;i.theRealInit=function(){(0,o.createElement)(),u=new n.L2DTargetPoint;var t=r.config.display.height/r.config.display.width,i=h.cDefine.VIEW_LOGICAL_LEFT,e=h.cDefine.VIEW_LOGICAL_RIGHT,_=-t,g=t;(p=new n.L2DViewMatrix).setScreenRect(i,e,_,g),p.setMaxScreenRect(h.cDefine.VIEW_LOGICAL_MAX_LEFT,h.cDefine.VIEW_LOGICAL_MAX_RIGHT,h.cDefine.VIEW_LOGICAL_MAX_BOTTOM,h.cDefine.VIEW_LOGICAL_MAX_TOP),(c=new n.L2DMatrix44).multScale(1,r.config.display.width/r.config.display.height),(f=new n.L2DMatrix44).multTranslate(-r.config.display.width/2,-r.config.display.height/2),f.multScale(2/r.config.display.width,-2/r.config.display.height),s.Live2D.setGL(o.currWebGL),o.currWebGL.clearColor(0,0,0,0),y=r.config.model.jsonPath,$.reloadFlg=!0,$.count++,$.changeModel(o.currWebGL,y);var y;l||(l=!0,function t(){!function(){a.MatrixStack.reset(),a.MatrixStack.loadIdentity(),u.update(),$.setDrag(u.getX(),u.getY()),o.currWebGL.clear(o.currWebGL.COLOR_BUFFER_BIT),a.MatrixStack.multMatrix(c.getArray()),a.MatrixStack.multMatrix(p.getArray()),a.MatrixStack.push();for(var t=0;t<$.numModels();t++){var i=$.getModel(t);if(null==i)return;i.initialized&&!i.updating&&(i.update(),i.draw(o.currWebGL))}a.MatrixStack.pop()}();var i=window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame;i(t,o.currCanvas)}())},i.captureFrame=function(){return o.currCanvas.toDataURL()}},131:function(t,i,e){"use strict";(function(t){Object.defineProperty(i,"__esModule",{value:!0});var e=!0;function r(){e||(this._$MT=null,this._$5S=null,this._$NP=0,r._$42++,this._$5S=new U(this))}r._$0s=1,r._$4s=2,r._$42=0,r._$62=function(t,i){try{if(i instanceof ArrayBuffer&&(i=new DataView(i)),!(i instanceof DataView))throw new ht("_$SS#loadModel(b) / b _$x be DataView or ArrayBuffer");var e,o=new Pt(i),s=o._$ST(),n=o._$ST(),a=o._$ST();if(109!=s||111!=n||99!=a)throw new ht("_$gi _$C _$li , _$Q0 _$P0.");if(e=o._$ST(),o._$gr(e),e>G._$T7){t._$NP|=r._$4s;throw new ht("_$gi _$C _$li , _$n0 _$_ version _$li ( SDK : "+G._$T7+" < _$f0 : "+e+" )@_$SS#loadModel()\n")}var h=o._$nP();if(e>=G._$s7){var $=o._$9T(),l=o._$9T();if(-30584!=$||-30584!=l)throw t._$NP|=r._$0s,new ht("_$gi _$C _$li , _$0 _$6 _$Ui.")}t._$KS(h);var u=t.getModelContext();u.setDrawParam(t.getDrawParam()),u.init()}catch(t){_._$Rb(t)}},r.prototype._$KS=function(t){this._$MT=t},r.prototype.getModelImpl=function(){return null==this._$MT&&(this._$MT=new l,this._$MT._$zP()),this._$MT},r.prototype.getCanvasWidth=function(){return null==this._$MT?0:this._$MT.getCanvasWidth()},r.prototype.getCanvasHeight=function(){return null==this._$MT?0:this._$MT.getCanvasHeight()},r.prototype.getParamFloat=function(t){return"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),this._$5S.getParamFloat(t)},r.prototype.setParamFloat=function(t,i,e){"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),arguments.length<3&&(e=1),this._$5S.setParamFloat(t,this._$5S.getParamFloat(t)*(1-e)+i*e)},r.prototype.addToParamFloat=function(t,i,e){"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),arguments.length<3&&(e=1),this._$5S.setParamFloat(t,this._$5S.getParamFloat(t)+i*e)},r.prototype.multParamFloat=function(t,i,e){"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),arguments.length<3&&(e=1),this._$5S.setParamFloat(t,this._$5S.getParamFloat(t)*(1+(i-1)*e))},r.prototype.getParamIndex=function(t){return this._$5S.getParamIndex($.getID(t))},r.prototype.loadParam=function(){this._$5S.loadParam()},r.prototype.saveParam=function(){this._$5S.saveParam()},r.prototype.init=function(){this._$5S.init()},r.prototype.update=function(){this._$5S.update()},r.prototype._$Rs=function(){return _._$li("_$60 _$PT _$Rs()"),-1},r.prototype._$Ds=function(t){_._$li("_$60 _$PT _$SS#_$Ds() \n")},r.prototype._$K2=function(){},r.prototype.draw=function(){},r.prototype.getModelContext=function(){return this._$5S},r.prototype._$s2=function(){return this._$NP},r.prototype._$P7=function(t,i,e,r){var o=-1,s=0;if(0!=e)if(1==t.length){u=t[0];var n=0!=this.getParamFloat(u),_=(p=i[0],this.getPartsOpacity(p)),a=e/r;n?(_+=a)>1&&(_=1):(_-=a)<0&&(_=0),this.setPartsOpacity(p,_)}else{for(l=0;l=0)break;o=l;p=i[l];s=this.getPartsOpacity(p),(s+=e/r)>1&&(s=1)}}o<0&&(console.log("No _$wi _$q0/ _$U default[%s]",t[0]),o=0,s=1,this.loadParam(),this.setParamFloat(t[o],s),this.saveParam());for(l=0;l.15&&(h=1-.15/(1-s)),$>h&&($=h),this.setPartsOpacity(p,$)}}}else for(var l=0;l=this._$5S._$aS.length)return null;var i=this._$5S._$aS[t];return null!=i&&i.getType()==W._$wb&&i instanceof $t?i.getIndexArray():null};function o(t){if(!e){this.clipContextList=new Array,this.glcontext=t.gl,this.dp_webgl=t,this.curFrameNo=0,this.firstError_clipInNotUpdate=!0,this.colorBuffer=0,this.isInitGLFBFunc=!1,this.tmpBoundsOnModel=new P,_t.glContext.length>_t.frameBuffers.length&&(this.curFrameNo=this.getMaskRenderTexture()),this.tmpModelToViewMatrix=new O,this.tmpMatrix2=new O,this.tmpMatrixForMask=new O,this.tmpMatrixForDraw=new O,this.CHANNEL_COLORS=new Array;var i=new E;(i=new E).r=0,i.g=0,i.b=0,i.a=1,this.CHANNEL_COLORS.push(i),(i=new E).r=1,i.g=0,i.b=0,i.a=0,this.CHANNEL_COLORS.push(i),(i=new E).r=0,i.g=1,i.b=0,i.a=0,this.CHANNEL_COLORS.push(i),(i=new E).r=0,i.g=0,i.b=1,i.a=0,this.CHANNEL_COLORS.push(i);for(var r=0;r=0;--t)this.CHANNEL_COLORS.splice(t,1);this.CHANNEL_COLORS=[]}this.releaseShader()},o.prototype.releaseShader=function(){for(var t=_t.frameBuffers.length,i=0;i0){var s=i.gl.getParameter(i.gl.FRAMEBUFFER_BINDING),n=new Array(4);n[0]=0,n[1]=0,n[2]=i.gl.canvas.width,n[3]=i.gl.canvas.height,i.gl.viewport(0,0,_t.clippingMaskBufferSize,_t.clippingMaskBufferSize),this.setupLayoutBounds(e),i.gl.bindFramebuffer(i.gl.FRAMEBUFFER,_t.frameBuffers[this.curFrameNo].framebuffer),i.gl.clearColor(0,0,0,0),i.gl.clear(i.gl.COLOR_BUFFER_BIT);for(r=0;rr?e:r,s=o,n=o,_=0,a=0,h=i.clippedDrawContextList.length,$=0;$_&&(_=P),S>a&&(a=S)}}if(s==o)i.allClippedDrawRect.x=0,i.allClippedDrawRect.y=0,i.allClippedDrawRect.width=0,i.allClippedDrawRect.height=0,i.isUsing=!1;else{var v=_-s,L=a-n;i.allClippedDrawRect.x=s,i.allClippedDrawRect.y=n,i.allClippedDrawRect.width=v,i.allClippedDrawRect.height=L,i.isUsing=!0}},o.prototype.setupLayoutBounds=function(t){var i=t/o.CHANNEL_COUNT,e=t%o.CHANNEL_COUNT;i=~~i,e=~~e;for(var r=0,s=0;s=1)return 1;var u=r*r;return h*(r*u)+$*u+l*r+0},n.prototype._$a0=function(){},n.prototype.setFadeIn=function(t){this._$dP=t},n.prototype.setFadeOut=function(t){this._$eo=t},n.prototype._$pT=function(t){this._$V0=t},n.prototype.getFadeOut=function(){return this._$eo},n.prototype._$4T=function(){return this._$eo},n.prototype._$mT=function(){return this._$V0},n.prototype.getDurationMSec=function(){return-1},n.prototype.getLoopDurationMSec=function(){return-1},n.prototype.updateParam=function(t,i){if(i._$AT&&!i._$9L){var e=I.getUserTimeMSec();if(i._$z2<0){i._$z2=e,i._$bs=e;var r=this.getDurationMSec();i._$Do<0&&(i._$Do=r<=0?-1:i._$z2+r)}var o=this._$V0;0<=(o=o*(0==this._$dP?1:at._$r2((e-i._$bs)/this._$dP))*(0==this._$eo||i._$Do<0?1:at._$r2((i._$Do-e)/this._$eo)))&&o<=1||console.log("### assert!! ### "),this.updateParamExe(t,e,o,i),i._$Do>0&&i._$Do0?console.log("\n"):e%8==0&&e>0&&console.log(" "),console.log("%02X ",255&t[e]);console.log("\n")},_._$nr=function(t,i,e){console.log("%s\n",t);for(var r=i.length,o=0;o=0;--r){this._$lL[r]._$oP(t,this)}this._$oo(t,e),this._$M2=this._$Yb(),this._$9b=(this._$M2-this._$ks)/e,this._$ks=this._$M2}for(r=this._$qP.length-1;r>=0;--r){this._$qP[r]._$YS(t,this)}this._$iT=i},u.prototype._$oo=function(t,i){i<.033&&(i=.033);var e=1/i;this.p1.vx=(this.p1.x-this.p1._$s0)*e,this.p1.vy=(this.p1.y-this.p1._$70)*e,this.p1.ax=(this.p1.vx-this.p1._$7L)*e,this.p1.ay=(this.p1.vy-this.p1._$HL)*e,this.p1.fx=this.p1.ax*this.p1._$p,this.p1.fy=this.p1.ay*this.p1._$p,this.p1._$xT();var r,o,s=-Math.atan2(this.p1.y-this.p2.y,this.p1.x-this.p2.x),n=Math.cos(s),_=Math.sin(s),a=9.8*this.p2._$p,h=this._$Db*vt._$bS,$=a*Math.cos(s-h);r=$*_,o=$*n;var l=-this.p1.fx*_*_,u=-this.p1.fy*_*n,p=-this.p2.vx*this._$L2,c=-this.p2.vy*this._$L2;this.p2.fx=r+l+p,this.p2.fy=o+u+c,this.p2.ax=this.p2.fx/this.p2._$p,this.p2.ay=this.p2.fy/this.p2._$p,this.p2.vx+=this.p2.ax*i,this.p2.vy+=this.p2.ay*i,this.p2.x+=this.p2.vx*i,this.p2.y+=this.p2.vy*i;var f=Math.sqrt((this.p1.x-this.p2.x)*(this.p1.x-this.p2.x)+(this.p1.y-this.p2.y)*(this.p1.y-this.p2.y));this.p2.x=this.p1.x+this._$Fo*(this.p2.x-this.p1.x)/f,this.p2.y=this.p1.y+this._$Fo*(this.p2.y-this.p1.y)/f,this.p2.vx=(this.p2.x-this.p2._$s0)*e,this.p2.vy=(this.p2.y-this.p2._$70)*e,this.p2._$xT()};function p(){this._$p=1,this.x=0,this.y=0,this.vx=0,this.vy=0,this.ax=0,this.ay=0,this.fx=0,this.fy=0,this._$s0=0,this._$70=0,this._$7L=0,this._$HL=0}p.prototype._$xT=function(){this._$s0=this.x,this._$70=this.y,this._$7L=this.vx,this._$HL=this.vy};function c(t,i,e){this._$wL=null,this.scale=null,this._$V0=null,this._$wL=t,this.scale=i,this._$V0=e}c.prototype._$oP=function(t,i){};function f(t,i,e,r){c.prototype.constructor.call(this,i,e,r),this._$tL=null,this._$tL=t}f.prototype=new c,f.prototype._$oP=function(t,i){var e=this.scale*t.getParamFloat(this._$wL),r=i.getPhysicsPoint1();switch(this._$tL){default:case u.Src.SRC_TO_X:r.x=r.x+(e-r.x)*this._$V0;break;case u.Src.SRC_TO_Y:r.y=r.y+(e-r.y)*this._$V0;break;case u.Src.SRC_TO_G_ANGLE:var o=i._$qr();o+=(e-o)*this._$V0,i._$pr(o)}};function g(t,i,e){this._$wL=null,this.scale=null,this._$V0=null,this._$wL=t,this.scale=i,this._$V0=e}g.prototype._$YS=function(t,i){};function y(t,i,e,r){g.prototype.constructor.call(this,i,e,r),this._$YP=null,this._$YP=t}y.prototype=new g,y.prototype._$YS=function(t,i){switch(this._$YP){default:case u.Target.TARGET_FROM_ANGLE:t.setParamFloat(this._$wL,this.scale*i._$5r(),this._$V0);break;case u.Target.TARGET_FROM_ANGLE_V:t.setParamFloat(this._$wL,this.scale*i._$Cs(),this._$V0)}},u.Src=function(){},u.Src.SRC_TO_X="SRC_TO_X",u.Src.SRC_TO_Y="SRC_TO_Y",u.Src.SRC_TO_G_ANGLE="SRC_TO_G_ANGLE",u.Target=function(){},u.Target.TARGET_FROM_ANGLE="TARGET_FROM_ANGLE",u.Target.TARGET_FROM_ANGLE_V="TARGET_FROM_ANGLE_V";function d(){e||(this._$fL=0,this._$gL=0,this._$B0=1,this._$z0=1,this._$qT=0,this.reflectX=!1,this.reflectY=!1)}d.prototype.init=function(t){this._$fL=t._$fL,this._$gL=t._$gL,this._$B0=t._$B0,this._$z0=t._$z0,this._$qT=t._$qT,this.reflectX=t.reflectX,this.reflectY=t.reflectY},d.prototype._$F0=function(t){this._$fL=t._$_T(),this._$gL=t._$_T(),this._$B0=t._$_T(),this._$z0=t._$_T(),this._$qT=t._$_T(),t.getFormatVersion()>=G.LIVE2D_FORMAT_VERSION_V2_10_SDK2&&(this.reflectX=t._$po(),this.reflectY=t._$po())},d.prototype._$e=function(){};var T=function(){};T._$ni=function(t,i,e,r,o,s,n,_,a){var h=n*s-_*o;if(0==h)return null;var $,l=((t-e)*s-(i-r)*o)/h;return $=0!=o?(t-e-l*n)/o:(i-r-l*_)/s,isNaN($)&&($=(t-e-l*n)/o,isNaN($)&&($=(i-r-l*_)/s),isNaN($)&&(console.log("a is NaN @UtVector#_$ni() "),console.log("v1x : "+o),console.log("v1x != 0 ? "+(0!=o)))),null==a?new Array($,l):(a[0]=$,a[1]=l,a)};function P(){e||(this.x=null,this.y=null,this.width=null,this.height=null)}P.prototype._$8P=function(){return this.x+.5*this.width},P.prototype._$6P=function(){return this.y+.5*this.height},P.prototype._$EL=function(){return this.x+this.width},P.prototype._$5T=function(){return this.y+this.height},P.prototype._$jL=function(t,i,e,r){this.x=t,this.y=i,this.width=e,this.height=r},P.prototype._$jL=function(t){this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height},P.prototype.contains=function(t,i){return this.x<=this.x&&this.y<=this.y&&this.x<=this.x+this.width&&this.y<=this.y+this.height},P.prototype.expand=function(t,i){this.x-=t,this.y-=i,this.width+=2*t,this.height+=2*i};function S(){}S._$Z2=function(t,i,e,r){var o=i._$Q2(t,e),s=t._$vs(),n=t._$Tr();if(i._$zr(s,n,o),o<=0)return r[s[0]];if(1==o){return(_=r[s[0]])+((a=r[s[1]])-_)*(l=n[0])|0}if(2==o){var _=r[s[0]],a=r[s[1]],h=r[s[2]],$=r[s[3]],l=n[0],u=n[1];return(S=_+(a-_)*l|0)+((h+($-h)*l|0)-S)*u|0}if(3==o){var p=r[s[0]],c=r[s[1]],f=r[s[2]],g=r[s[3]],y=r[s[4]],d=r[s[5]],m=r[s[6]],T=r[s[7]],P=(l=n[0],u=n[1],n[2]);return(S=(_=p+(c-p)*l|0)+((a=f+(g-f)*l|0)-_)*u|0)+(((h=y+(d-y)*l|0)+(($=m+(T-m)*l|0)-h)*u|0)-S)*P|0}if(4==o){var S,v=r[s[0]],L=r[s[1]],M=r[s[2]],E=r[s[3]],A=r[s[4]],I=r[s[5]],x=r[s[6]],w=r[s[7]],D=r[s[8]],O=r[s[9]],R=r[s[10]],b=r[s[11]],F=r[s[12]],C=r[s[13]],N=r[s[14]],B=r[s[15]],G=(l=n[0],u=n[1],P=n[2],n[3]);return(S=(_=(p=v+(L-v)*l|0)+((c=M+(E-M)*l|0)-p)*u|0)+((a=(f=A+(I-A)*l|0)+((g=x+(w-x)*l|0)-f)*u|0)-_)*P|0)+(((h=(y=D+(O-D)*l|0)+((d=R+(b-R)*l|0)-y)*u|0)+(($=(m=F+(C-F)*l|0)+((T=N+(B-N)*l|0)-m)*u|0)-h)*P|0)-S)*G|0}for(var U=1<=G._$T7?(this.clipID=t._$nP(),this.clipIDList=this.convertClipIDForV2_11(this.clipID)):this.clipIDList=[],this._$MS(this._$Lb)},L.prototype.getClipIDList=function(){return this.clipIDList},L.prototype.init=function(t){},L.prototype._$Nr=function(t,i){if(i._$IS[0]=!1,i._$Us=S._$Z2(t,this._$GS,i._$IS,this._$Lb),_t._$Zs);else if(i._$IS[0])return;i._$7s=S._$br(t,this._$GS,i._$IS,this._$mS)},L.prototype._$2b=function(t,i){},L.prototype.getDrawDataID=function(){return this._$gP},L.prototype._$j2=function(t){this._$gP=t},L.prototype.getOpacity=function(t,i){return i._$7s},L.prototype._$zS=function(t,i){return i._$Us},L.prototype._$MS=function(t){for(var i=t.length-1;i>=0;--i){var e=t[i];eL._$R2&&(L._$R2=e)}},L.prototype.getTargetBaseDataID=function(){return this._$dr},L.prototype._$gs=function(t){this._$dr=t},L.prototype._$32=function(){return null!=this._$dr&&this._$dr!=yt._$2o()},L.prototype.preDraw=function(t,i,e){},L.prototype.draw=function(t,i,e){},L.prototype.getType=function(){},L.prototype._$B2=function(t,i,e){};function M(){e||(this._$Eb=M._$ps,this._$lT=1,this._$C0=1,this._$tT=1,this._$WL=1,this.culling=!1,this.matrix4x4=new Float32Array(16),this.premultipliedAlpha=!1,this.anisotropy=0,this.clippingProcess=M.CLIPPING_PROCESS_NONE,this.clipBufPre_clipContextMask=null,this.clipBufPre_clipContextDraw=null,this.CHANNEL_COLORS=new Array)}M._$ps=32,M.CLIPPING_PROCESS_NONE=0,M.CLIPPING_PROCESS_OVERWRITE_ALPHA=1,M.CLIPPING_PROCESS_MULTIPLY_ALPHA=2,M.CLIPPING_PROCESS_DRAW=3,M.CLIPPING_PROCESS_CLEAR_ALPHA=4,M.prototype.setChannelFlagAsColor=function(t,i){this.CHANNEL_COLORS[t]=i},M.prototype.getChannelFlagAsColor=function(t){return this.CHANNEL_COLORS[t]},M.prototype._$ZT=function(){},M.prototype._$Uo=function(t,i,e,r,o,s,n){},M.prototype._$Rs=function(){return-1},M.prototype._$Ds=function(t){},M.prototype.setBaseColor=function(t,i,e,r){t<0?t=0:t>1&&(t=1),i<0?i=0:i>1&&(i=1),e<0?e=0:e>1&&(e=1),r<0?r=0:r>1&&(r=1),this._$lT=t,this._$C0=i,this._$tT=e,this._$WL=r},M.prototype._$WP=function(t){this.culling=t},M.prototype.setMatrix=function(t){for(var i=0;i<16;i++)this.matrix4x4[i]=t[i]},M.prototype._$IT=function(){return this.matrix4x4},M.prototype.setPremultipliedAlpha=function(t){this.premultipliedAlpha=t},M.prototype.isPremultipliedAlpha=function(){return this.premultipliedAlpha},M.prototype.setAnisotropy=function(t){this.anisotropy=t},M.prototype.getAnisotropy=function(){return this.anisotropy},M.prototype.getClippingProcess=function(){return this.clippingProcess},M.prototype.setClippingProcess=function(t){this.clippingProcess=t},M.prototype.setClipBufPre_clipContextForMask=function(t){this.clipBufPre_clipContextMask=t},M.prototype.getClipBufPre_clipContextMask=function(){return this.clipBufPre_clipContextMask},M.prototype.setClipBufPre_clipContextForDraw=function(t){this.clipBufPre_clipContextDraw=t},M.prototype.getClipBufPre_clipContextDraw=function(){return this.clipBufPre_clipContextDraw};function E(){e||(this.a=1,this.r=1,this.g=1,this.b=1,this.scale=1,this._$ho=1,this.blendMode=_t.L2D_COLOR_BLEND_MODE_MULT)}function A(){e||(this._$kP=null,this._$dr=null,this._$Ai=!0,this._$mS=null)}A._$ur=-2,A._$c2=1,A._$_b=2,A.prototype._$F0=function(t){this._$kP=t._$nP(),this._$dr=t._$nP()},A.prototype.readV2_opacity=function(t){t.getFormatVersion()>=G.LIVE2D_FORMAT_VERSION_V2_10_SDK2&&(this._$mS=t._$Tb())},A.prototype.init=function(t){},A.prototype._$Nr=function(t,i){},A.prototype.interpolateOpacity=function(t,i,e,r){null==this._$mS?e.setInterpolatedOpacity(1):e.setInterpolatedOpacity(S._$br(t,i,r,this._$mS))},A.prototype._$2b=function(t,i){},A.prototype._$nb=function(t,i,e,r,o,s,n){},A.prototype.getType=function(){},A.prototype._$gs=function(t){this._$dr=t},A.prototype._$a2=function(t){this._$kP=t},A.prototype.getTargetBaseDataID=function(){return this._$dr},A.prototype.getBaseDataID=function(){return this._$kP},A.prototype._$32=function(){return null!=this._$dr&&this._$dr!=yt._$2o()};function I(){}I._$W2=0,I._$CS=I._$W2,I._$Mo=function(){return!0},I._$XP=function(t){try{for(var i=getTimeMSec();getTimeMSec()-i=t.length)return!1;for(var o=i;o=0;--e){var r=this._$Ob[e].getParamIndex(i);if(r==x._$ds&&(r=t.getParamIndex(this._$Ob[e].getParamID())),t._$Xb(r))return!0}return!1},D.prototype._$Q2=function(t,i){for(var e,r,o=this._$Ob.length,s=t._$v2(),n=0,_=0;_B._$Qb&&console.log("err 23245\n");for(var o=this._$Ob.length,s=1,n=1,_=0,a=0;a=0;--s)e[s]=o[s]}else this.mult_fast(t,i,e,r)},O.prototype.mult_fast=function(t,i,e,r){r?(e[0]=t[0]*i[0]+t[4]*i[1]+t[8]*i[2],e[4]=t[0]*i[4]+t[4]*i[5]+t[8]*i[6],e[8]=t[0]*i[8]+t[4]*i[9]+t[8]*i[10],e[12]=t[0]*i[12]+t[4]*i[13]+t[8]*i[14]+t[12],e[1]=t[1]*i[0]+t[5]*i[1]+t[9]*i[2],e[5]=t[1]*i[4]+t[5]*i[5]+t[9]*i[6],e[9]=t[1]*i[8]+t[5]*i[9]+t[9]*i[10],e[13]=t[1]*i[12]+t[5]*i[13]+t[9]*i[14]+t[13],e[2]=t[2]*i[0]+t[6]*i[1]+t[10]*i[2],e[6]=t[2]*i[4]+t[6]*i[5]+t[10]*i[6],e[10]=t[2]*i[8]+t[6]*i[9]+t[10]*i[10],e[14]=t[2]*i[12]+t[6]*i[13]+t[10]*i[14]+t[14],e[3]=e[7]=e[11]=0,e[15]=1):(e[0]=t[0]*i[0]+t[4]*i[1]+t[8]*i[2]+t[12]*i[3],e[4]=t[0]*i[4]+t[4]*i[5]+t[8]*i[6]+t[12]*i[7],e[8]=t[0]*i[8]+t[4]*i[9]+t[8]*i[10]+t[12]*i[11],e[12]=t[0]*i[12]+t[4]*i[13]+t[8]*i[14]+t[12]*i[15],e[1]=t[1]*i[0]+t[5]*i[1]+t[9]*i[2]+t[13]*i[3],e[5]=t[1]*i[4]+t[5]*i[5]+t[9]*i[6]+t[13]*i[7],e[9]=t[1]*i[8]+t[5]*i[9]+t[9]*i[10]+t[13]*i[11],e[13]=t[1]*i[12]+t[5]*i[13]+t[9]*i[14]+t[13]*i[15],e[2]=t[2]*i[0]+t[6]*i[1]+t[10]*i[2]+t[14]*i[3],e[6]=t[2]*i[4]+t[6]*i[5]+t[10]*i[6]+t[14]*i[7],e[10]=t[2]*i[8]+t[6]*i[9]+t[10]*i[10]+t[14]*i[11],e[14]=t[2]*i[12]+t[6]*i[13]+t[10]*i[14]+t[14]*i[15],e[3]=t[3]*i[0]+t[7]*i[1]+t[11]*i[2]+t[15]*i[3],e[7]=t[3]*i[4]+t[7]*i[5]+t[11]*i[6]+t[15]*i[7],e[11]=t[3]*i[8]+t[7]*i[9]+t[11]*i[10]+t[15]*i[11],e[15]=t[3]*i[12]+t[7]*i[13]+t[11]*i[14]+t[15]*i[15])},O.prototype.translate=function(t,i,e){this.m[12]=this.m[0]*t+this.m[4]*i+this.m[8]*e+this.m[12],this.m[13]=this.m[1]*t+this.m[5]*i+this.m[9]*e+this.m[13],this.m[14]=this.m[2]*t+this.m[6]*i+this.m[10]*e+this.m[14],this.m[15]=this.m[3]*t+this.m[7]*i+this.m[11]*e+this.m[15]},O.prototype.scale=function(t,i,e){this.m[0]*=t,this.m[4]*=i,this.m[8]*=e,this.m[1]*=t,this.m[5]*=i,this.m[9]*=e,this.m[2]*=t,this.m[6]*=i,this.m[10]*=e,this.m[3]*=t,this.m[7]*=i,this.m[11]*=e},O.prototype.rotateX=function(t){var i=vt.fcos(t),e=vt._$9(t),r=this.m[4];this.m[4]=r*i+this.m[8]*e,this.m[8]=r*-e+this.m[8]*i,r=this.m[5],this.m[5]=r*i+this.m[9]*e,this.m[9]=r*-e+this.m[9]*i,r=this.m[6],this.m[6]=r*i+this.m[10]*e,this.m[10]=r*-e+this.m[10]*i,r=this.m[7],this.m[7]=r*i+this.m[11]*e,this.m[11]=r*-e+this.m[11]*i},O.prototype.rotateY=function(t){var i=vt.fcos(t),e=vt._$9(t),r=this.m[0];this.m[0]=r*i+this.m[8]*-e,this.m[8]=r*e+this.m[8]*i,r=this.m[1],this.m[1]=r*i+this.m[9]*-e,this.m[9]=r*e+this.m[9]*i,r=m[2],this.m[2]=r*i+this.m[10]*-e,this.m[10]=r*e+this.m[10]*i,r=m[3],this.m[3]=r*i+this.m[11]*-e,this.m[11]=r*e+this.m[11]*i},O.prototype.rotateZ=function(t){var i=vt.fcos(t),e=vt._$9(t),r=this.m[0];this.m[0]=r*i+this.m[4]*e,this.m[4]=r*-e+this.m[4]*i,r=this.m[1],this.m[1]=r*i+this.m[5]*e,this.m[5]=r*-e+this.m[5]*i,r=this.m[2],this.m[2]=r*i+this.m[6]*e,this.m[6]=r*-e+this.m[6]*i,r=this.m[3],this.m[3]=r*i+this.m[7]*e,this.m[7]=r*-e+this.m[7]*i};function R(t){e||et.prototype.constructor.call(this,t)}R.prototype=new et,R._$tP=new Object,R._$27=function(){R._$tP.clear()},R.getID=function(t){var i=R._$tP[t];return null==i&&(i=new R(t),R._$tP[t]=i),i},R.prototype._$3s=function(){return new R};function b(){e||(this._$7=1,this._$f=0,this._$H=0,this._$g=1,this._$k=0,this._$w=0,this._$hi=STATE_IDENTITY,this._$Z=_$pS)}b._$kS=-1,b._$pS=0,b._$hb=1,b.STATE_IDENTITY=0,b._$gb=1,b._$fo=2,b._$go=4,b.prototype.transform=function(t,i,e){var r,o,s,n,_,a,h=0,$=0;switch(this._$hi){default:return;case b._$go|b._$fo|b._$gb:for(r=this._$7,o=this._$H,s=this._$k,n=this._$f,_=this._$g,a=this._$w;--e>=0;){var l=t[h++],u=t[h++];i[$++]=r*l+o*u+s,i[$++]=n*l+_*u+a}return;case b._$go|b._$fo:for(r=this._$7,o=this._$H,n=this._$f,_=this._$g;--e>=0;){l=t[h++],u=t[h++];i[$++]=r*l+o*u,i[$++]=n*l+_*u}return;case b._$go|b._$gb:for(o=this._$H,s=this._$k,n=this._$f,a=this._$w;--e>=0;){l=t[h++];i[$++]=o*t[h++]+s,i[$++]=n*l+a}return;case b._$go:for(o=this._$H,n=this._$f;--e>=0;){l=t[h++];i[$++]=o*t[h++],i[$++]=n*l}return;case b._$fo|b._$gb:for(r=this._$7,s=this._$k,_=this._$g,a=this._$w;--e>=0;)i[$++]=r*t[h++]+s,i[$++]=_*t[h++]+a;return;case b._$fo:for(r=this._$7,_=this._$g;--e>=0;)i[$++]=r*t[h++],i[$++]=_*t[h++];return;case b._$gb:for(s=this._$k,a=this._$w;--e>=0;)i[$++]=t[h++]+s,i[$++]=t[h++]+a;return;case b.STATE_IDENTITY:return void(t==i&&h==$||I._$jT(t,h,i,$,2*e))}},b.prototype.update=function(){0==this._$H&&0==this._$f?1==this._$7&&1==this._$g?0==this._$k&&0==this._$w?(this._$hi=b.STATE_IDENTITY,this._$Z=b._$pS):(this._$hi=b._$gb,this._$Z=b._$hb):0==this._$k&&0==this._$w?(this._$hi=b._$fo,this._$Z=b._$kS):(this._$hi=b._$fo|b._$gb,this._$Z=b._$kS):0==this._$7&&0==this._$g?0==this._$k&&0==this._$w?(this._$hi=b._$go,this._$Z=b._$kS):(this._$hi=b._$go|b._$gb,this._$Z=b._$kS):0==this._$k&&0==this._$w?(this._$hi=b._$go|b._$fo,this._$Z=b._$kS):(this._$hi=b._$go|b._$fo|b._$gb,this._$Z=b._$kS)},b.prototype._$RT=function(t){this._$IT(t);var i=t[0],e=t[2],r=t[1],o=t[3],s=Math.sqrt(i*i+r*r),n=i*o-e*r;0==s?_t._$so&&console.log("affine._$RT() / rt==0"):(t[0]=s,t[1]=n/s,t[2]=(r*o+i*e)/n,t[3]=Math.atan2(r,i))},b.prototype._$ho=function(t,i,e,r){var o=new Float32Array(6),s=new Float32Array(6);t._$RT(o),i._$RT(s);var n=new Float32Array(6);n[0]=o[0]+(s[0]-o[0])*e,n[1]=o[1]+(s[1]-o[1])*e,n[2]=o[2]+(s[2]-o[2])*e,n[3]=o[3]+(s[3]-o[3])*e,n[4]=o[4]+(s[4]-o[4])*e,n[5]=o[5]+(s[5]-o[5])*e,r._$CT(n)},b.prototype._$CT=function(t){var i=Math.cos(t[3]),e=Math.sin(t[3]);this._$7=t[0]*i,this._$f=t[0]*e,this._$H=t[1]*(t[2]*i-e),this._$g=t[1]*(t[2]*e+i),this._$k=t[4],this._$w=t[5],this.update()},b.prototype._$IT=function(t){t[0]=this._$7,t[1]=this._$f,t[2]=this._$H,t[3]=this._$g,t[4]=this._$k,t[5]=this._$w};function F(){e||(n.prototype.constructor.call(this),this.motions=new Array,this._$7r=null,this._$7r=F._$Co++,this._$D0=30,this._$yT=0,this._$E=!0,this.loopFadeIn=!0,this._$AS=-1,_$a0())}F.prototype=new n,F._$cs="VISIBLE:",F._$ar="LAYOUT:",F._$Co=0,F._$D2=[],F._$1T=1,F.loadMotion=function(t){var i=new F,e=[0],r=t.length;i._$yT=0;for(var o=0;o=0){var n=new N;w.startsWith(t,h,F._$cs)?(n._$RP=N._$hs,n._$4P=new String(t,h,$-h)):w.startsWith(t,h,F._$ar)?(n._$4P=new String(t,h+7,$-h-7),w.startsWith(t,h+7,"ANCHOR_X")?n._$RP=N._$xs:w.startsWith(t,h+7,"ANCHOR_Y")?n._$RP=N._$us:w.startsWith(t,h+7,"SCALE_X")?n._$RP=N._$qs:w.startsWith(t,h+7,"SCALE_Y")?n._$RP=N._$Ys:w.startsWith(t,h+7,"X")?n._$RP=N._$ws:w.startsWith(t,h+7,"Y")&&(n._$RP=N._$Ns)):(n._$RP=N._$Fr,n._$4P=new String(t,h,$-h)),i.motions.push(n);var _=0;for(F._$D2.clear(),o=$+1;o0){F._$D2.push(u),_++;var a=e[0];if(ai._$yT&&(i._$yT=_)}}}else{for(var h=o,$=-1;o=0)for($==h+4&&"f"==t[h+1]&&"p"==t[h+2]&&"s"==t[h+3]&&(l=!0),o=$+1;o0&&l&&5=h?h-1:s];t.setParamFloat($,l)}else if(N._$ws<=a._$RP&&a._$RP<=N._$Ys);else{var u=t.getParamFloat($),p=a._$I0[s>=h?h-1:s],c=u+(p+(a._$I0[s+1>=h?h-1:s+1]-p)*n-u)*e;t.setParamFloat($,c)}}s>=this._$yT&&(this._$E?(r._$z2=i,this.loopFadeIn&&(r._$bs=i)):r._$9L=!0)},F.prototype._$r0=function(){return this._$E},F.prototype._$aL=function(t){this._$E=t},F.prototype.isLoopFadeIn=function(){return this.loopFadeIn},F.prototype.setLoopFadeIn=function(t){this.loopFadeIn=t};function C(){this._$P=new Float32Array(100),this.size=0}C.prototype.clear=function(){this.size=0},C.prototype.add=function(t){if(this._$P.length<=this.size){var i=new Float32Array(2*this.size);I._$jT(this._$P,0,i,0,this.size),this._$P=i}this._$P[this.size++]=t},C.prototype._$BL=function(){var t=new Float32Array(this.size);return I._$jT(this._$P,0,t,0,this.size),t};function N(){this._$4P=null,this._$I0=null,this._$RP=null}N._$Fr=0,N._$hs=1,N._$ws=100,N._$Ns=101,N._$xs=102,N._$us=103,N._$qs=104,N._$Ys=105;function B(){}B._$Ms=1,B._$Qs=2,B._$i2=0,B._$No=2,B._$do=B._$Ms,B._$Ls=!0,B._$1r=5,B._$Qb=65,B._$J=1e-4,B._$FT=.001,B._$Ss=3;function G(){}G._$o7=6,G._$S7=7,G._$s7=8,G._$77=9,G.LIVE2D_FORMAT_VERSION_V2_10_SDK2=10,G.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1=11,G._$T7=G.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1,G._$Is=-2004318072,G._$h0=0,G._$4L=23,G._$7P=33,G._$uT=function(t){console.log("_$bo :: _$6 _$mo _$E0 : %d\n",t)},G._$9o=function(t){if(t<40)return G._$uT(t),null;if(t<50)return G._$uT(t),null;if(t<60)return G._$uT(t),null;if(t<100)switch(t){case 65:return new Z;case 66:return new D;case 67:return new x;case 68:return new z;case 69:return new d;case 70:return new $t;default:return G._$uT(t),null}else if(t<150)switch(t){case 131:return new st;case 133:return new tt;case 136:return new l;case 137:return new rt;case 142:return new j}return G._$uT(t),null};function U(t){e||(this._$QT=!0,this._$co=-1,this._$qo=0,this._$pb=new Array(U._$is),this._$_2=new Float32Array(U._$is),this._$vr=new Float32Array(U._$is),this._$Rr=new Float32Array(U._$is),this._$Or=new Float32Array(U._$is),this._$fs=new Float32Array(U._$is),this._$Js=new Array(U._$is),this._$3S=new Array,this._$aS=new Array,this._$Bo=null,this._$F2=new Array,this._$db=new Array,this._$8b=new Array,this._$Hr=new Array,this._$Ws=null,this._$Vs=null,this._$Er=null,this._$Es=new Int16Array(B._$Qb),this._$ZP=new Float32Array(2*B._$1r),this._$Ri=t,this._$b0=U._$HP++,this.clipManager=null,this.dp_webgl=null)}U._$HP=0,U._$_0=!0,U._$V2=-1,U._$W0=-1,U._$jr=!1,U._$ZS=!0,U._$tr=-1e6,U._$lr=1e6,U._$is=32,U._$e=!1,U.prototype.getDrawDataIndex=function(t){for(var i=this._$aS.length-1;i>=0;--i)if(null!=this._$aS[i]&&this._$aS[i].getDrawDataID()==t)return i;return-1},U.prototype.getDrawData=function(t){if(t instanceof R){if(null==this._$Bo){this._$Bo=new Object;for(var i=this._$aS.length,e=0;e0&&this.release();for(var t=this._$Ri.getModelImpl(),i=t._$Xr(),e=i.length,r=new Array,s=new Array,n=0;n=0)&&(this._$3S.push(m),this._$db.push(s[n]),r[n]=null,d=!0)}}if(!d)break}var P=t._$E2();if(null!=P){var S=P._$1s();if(null!=S){var v=S.length;for(n=0;n=0;i--)this._$Js[i]=U._$jr;return this._$QT=!1,U._$e&&_.dump("_$eL"),!1},U.prototype.preDraw=function(t){null!=this.clipManager&&(t._$ZT(),this.clipManager.setupClip(this,t))},U.prototype.draw=function(t){if(null!=this._$Ws){var i=this._$Ws.length;t._$ZT();for(var e=0;e=0;--i)if(this._$pb[i]==t)return i;return this._$02(t,0,U._$tr,U._$lr)},U.prototype._$BS=function(t){return this.getBaseDataIndex(t)},U.prototype.getBaseDataIndex=function(t){for(var i=this._$3S.length-1;i>=0;--i)if(null!=this._$3S[i]&&this._$3S[i].getBaseDataID()==t)return i;return-1},U.prototype._$UT=function(t,i){var e=new Float32Array(i);return I._$jT(t,0,e,0,t.length),e},U.prototype._$02=function(t,i,e,r){if(this._$qo>=this._$pb.length){var o=this._$pb.length,s=new Array(2*o);I._$jT(this._$pb,0,s,0,o),this._$pb=s,this._$_2=this._$UT(this._$_2,2*o),this._$vr=this._$UT(this._$vr,2*o),this._$Rr=this._$UT(this._$Rr,2*o),this._$Or=this._$UT(this._$Or,2*o);var n=new Array;I._$jT(this._$Js,0,n,0,o),this._$Js=n}return this._$pb[this._$qo]=t,this._$_2[this._$qo]=i,this._$vr[this._$qo]=i,this._$Rr[this._$qo]=e,this._$Or[this._$qo]=r,this._$Js[this._$qo]=U._$ZS,this._$qo++},U.prototype._$Zo=function(t,i){this._$3S[t]=i},U.prototype.setParamFloat=function(t,i){ithis._$Or[t]&&(i=this._$Or[t]),this._$_2[t]=i},U.prototype.loadParam=function(){var t=this._$_2.length;t>this._$fs.length&&(t=this._$fs.length),I._$jT(this._$fs,0,this._$_2,0,t)},U.prototype.saveParam=function(){var t=this._$_2.length;t>this._$fs.length&&(this._$fs=new Float32Array(t)),I._$jT(this._$_2,0,this._$fs,0,t)},U.prototype._$v2=function(){return this._$co},U.prototype._$WS=function(){return this._$QT},U.prototype._$Xb=function(t){return this._$Js[t]==U._$ZS},U.prototype._$vs=function(){return this._$Es},U.prototype._$Tr=function(){return this._$ZP},U.prototype.getBaseData=function(t){return this._$3S[t]},U.prototype.getParamFloat=function(t){return this._$_2[t]},U.prototype.getParamMax=function(t){return this._$Or[t]},U.prototype.getParamMin=function(t){return this._$Rr[t]},U.prototype.setPartsOpacity=function(t,i){this._$Hr[t].setPartsOpacity(i)},U.prototype.getPartsOpacity=function(t){return this._$Hr[t].getPartsOpacity()},U.prototype.getPartsDataIndex=function(t){for(var i=this._$F2.length-1;i>=0;--i)if(null!=this._$F2[i]&&this._$F2[i]._$p2()==t)return i;return-1},U.prototype._$q2=function(t){return this._$db[t]},U.prototype._$C2=function(t){return this._$8b[t]},U.prototype._$Bb=function(t){return this._$Hr[t]},U.prototype._$5s=function(t,i){for(var e=this._$Ws.length,r=t,o=0;o0;)s+=i;return r},Y._$C=function(t){var i=null,e=null;try{i=t instanceof Array?t:new _$Xs(t,8192),e=new _$js;for(var r,o=new Int8Array(1e3);(r=i.read(o))>0;)e.write(o,0,r);return e._$TS()}finally{null!=t&&t.close(),null!=e&&(e.flush(),e.close())}};function k(){e||(this._$12=null,this._$bb=null,this._$_L=null,this._$jo=null,this._$iL=null,this._$0L=null,this._$Br=null,this._$Dr=null,this._$Cb=null,this._$mr=null,this._$_L=V.STATE_FIRST,this._$Br=4e3,this._$Dr=100,this._$Cb=50,this._$mr=150,this._$jo=!0,this._$iL="PARAM_EYE_L_OPEN",this._$0L="PARAM_EYE_R_OPEN")}k.prototype._$T2=function(){return I.getUserTimeMSec()+Math._$10()*(2*this._$Br-1)},k.prototype._$uo=function(t){this._$Br=t},k.prototype._$QS=function(t,i,e){this._$Dr=t,this._$Cb=i,this._$mr=e},k.prototype._$7T=function(t){var i,e=I.getUserTimeMSec(),r=0;switch(this._$_L){case STATE_CLOSING:(r=(e-this._$bb)/this._$Dr)>=1&&(r=1,this._$_L=V.STATE_CLOSED,this._$bb=e),i=1-r;break;case STATE_CLOSED:(r=(e-this._$bb)/this._$Cb)>=1&&(this._$_L=V.STATE_OPENING,this._$bb=e),i=0;break;case STATE_OPENING:(r=(e-this._$bb)/this._$mr)>=1&&(r=1,this._$_L=V.STATE_INTERVAL,this._$12=this._$T2()),i=r;break;case STATE_INTERVAL:this._$12.9?_t.EXPAND_W:0;this.gl.drawElements(a,e,r,o,s,h,this.transform,_)}},X.prototype._$Rs=function(){throw new Error("_$Rs")},X.prototype._$Ds=function(t){throw new Error("_$Ds")},X.prototype._$K2=function(){for(var t=0;t=0;--i){var e=t[i];eW._$R2&&(W._$R2=e)}},W._$or=function(){return W._$52},W._$Pr=function(){return W._$R2},W.prototype._$F0=function(t){this._$gP=t._$nP(),this._$dr=t._$nP(),this._$GS=t._$nP(),this._$qb=t._$6L(),this._$Lb=t._$cS(),this._$mS=t._$Tb(),t.getFormatVersion()>=G._$T7?(this.clipID=t._$nP(),this.clipIDList=this.convertClipIDForV2_11(this.clipID)):this.clipIDList=null,W._$Sb(this._$Lb)},W.prototype.getClipIDList=function(){return this.clipIDList},W.prototype._$Nr=function(t,i){if(i._$IS[0]=!1,i._$Us=S._$Z2(t,this._$GS,i._$IS,this._$Lb),_t._$Zs);else if(i._$IS[0])return;i._$7s=S._$br(t,this._$GS,i._$IS,this._$mS)},W.prototype._$2b=function(t){},W.prototype.getDrawDataID=function(){return this._$gP},W.prototype._$j2=function(t){this._$gP=t},W.prototype.getOpacity=function(t,i){return i._$7s},W.prototype._$zS=function(t,i){return i._$Us},W.prototype.getTargetBaseDataID=function(){return this._$dr},W.prototype._$gs=function(t){this._$dr=t},W.prototype._$32=function(){return null!=this._$dr&&this._$dr!=yt._$2o()},W.prototype.getType=function(){};function j(){e||(this._$NL=null,this._$3S=null,this._$aS=null,j._$42++)}j._$42=0,j.prototype._$1b=function(){return this._$3S},j.prototype.getDrawDataList=function(){return this._$aS},j.prototype._$F0=function(t){this._$NL=t._$nP(),this._$aS=t._$nP(),this._$3S=t._$nP()},j.prototype._$kr=function(t){t._$Zo(this._$3S),t._$xo(this._$aS),this._$3S=null,this._$aS=null};function q(){e||(r.prototype.constructor.call(this),this._$zo=new X)}q.prototype=new r,q.loadModel=function(t){var i=new q;return r._$62(i,t),i},q.loadModel=function(t){var i=new q;return r._$62(i,t),i},q._$to=function(){return new q},q._$er=function(t){var i=new _$5("../_$_r/_$t0/_$Ri/_$_P._$d");if(0==i.exists())throw new _$ls("_$t0 _$_ _$6 _$Ui :: "+i._$PL());for(var e=["../_$_r/_$t0/_$Ri/_$_P.512/_$CP._$1","../_$_r/_$t0/_$Ri/_$_P.512/_$vP._$1","../_$_r/_$t0/_$Ri/_$_P.512/_$EP._$1","../_$_r/_$t0/_$Ri/_$_P.512/_$pP._$1"],r=q.loadModel(i._$3b()),o=0;o=0){var _=new N;w.startsWith(t,l,J._$cs)?(_._$RP=N._$hs,_._$4P=w.createString(t,l,u-l)):w.startsWith(t,l,J._$ar)?(_._$4P=w.createString(t,l+7,u-l-7),w.startsWith(t,l+7,"ANCHOR_X")?_._$RP=N._$xs:w.startsWith(t,l+7,"ANCHOR_Y")?_._$RP=N._$us:w.startsWith(t,l+7,"SCALE_X")?_._$RP=N._$qs:w.startsWith(t,l+7,"SCALE_Y")?_._$RP=N._$Ys:w.startsWith(t,l+7,"X")?_._$RP=N._$ws:w.startsWith(t,l+7,"Y")&&(_._$RP=N._$Ns)):(_._$RP=N._$Fr,_._$4P=w.createString(t,l,u-l)),i.motions.push(_);var a=0,h=[];for(o=u+1;o0){h.push(c),a++;var $=e[0];if($i._$yT&&(i._$yT=a)}}}else{for(var l=o,u=-1;o=0)for(u==l+4&&"f"==Q(t,l+1)&&"p"==Q(t,l+2)&&"s"==Q(t,l+3)&&(p=!0),o=u+1;o0&&p&&5=h?h-1:s];t.setParamFloat($,l)}else if(N._$ws<=a._$RP&&a._$RP<=N._$Ys);else{var u=t.getParamIndex($),p=t.getModelContext(),c=.4*(p.getParamMax(u)-p.getParamMin(u)),f=p.getParamFloat(u),g=a._$I0[s>=h?h-1:s],y=a._$I0[s+1>=h?h-1:s+1],d=f+((gc||g>y&&g-y>c?g:g+(y-g)*n)-f)*e;t.setParamFloat($,d)}}s>=this._$yT&&(this._$E?(r._$z2=i,this.loopFadeIn&&(r._$bs=i)):r._$9L=!0),this._$eP=e},J.prototype._$r0=function(){return this._$E},J.prototype._$aL=function(t){this._$E=t},J.prototype._$S0=function(){return this._$D0},J.prototype._$U0=function(t){this._$D0=t},J.prototype.isLoopFadeIn=function(){return this.loopFadeIn},J.prototype.setLoopFadeIn=function(t){this.loopFadeIn=t};function C(){this._$P=new Float32Array(100),this.size=0}C.prototype.clear=function(){this.size=0},C.prototype.add=function(t){if(this._$P.length<=this.size){var i=new Float32Array(2*this.size);I._$jT(this._$P,0,i,0,this.size),this._$P=i}this._$P[this.size++]=t},C.prototype._$BL=function(){var t=new Float32Array(this.size);return I._$jT(this._$P,0,t,0,this.size),t};function N(){this._$4P=null,this._$I0=null,this._$RP=null}N._$Fr=0,N._$hs=1,N._$ws=100,N._$Ns=101,N._$xs=102,N._$us=103,N._$qs=104,N._$Ys=105;function Z(){e||(A.prototype.constructor.call(this),this._$o=0,this._$A=0,this._$GS=null,this._$Eo=null)}Z.prototype=new A,Z._$gT=new Array,Z.prototype._$zP=function(){this._$GS=new D,this._$GS._$zP()},Z.prototype._$F0=function(t){A.prototype._$F0.call(this,t),this._$A=t._$6L(),this._$o=t._$6L(),this._$GS=t._$nP(),this._$Eo=t._$nP(),A.prototype.readV2_opacity.call(this,t)},Z.prototype.init=function(t){var i=new K(this),e=(this._$o+1)*(this._$A+1);return null!=i._$Cr&&(i._$Cr=null),i._$Cr=new Float32Array(2*e),null!=i._$hr&&(i._$hr=null),this._$32()?i._$hr=new Float32Array(2*e):i._$hr=null,i},Z.prototype._$Nr=function(t,i){var e=i;if(this._$GS._$Ur(t)){var r=this._$VT(),o=Z._$gT;o[0]=!1,S._$Vr(t,this._$GS,o,r,this._$Eo,e._$Cr,0,2),i._$Ib(o[0]),this.interpolateOpacity(t,this._$GS,i,o)}},Z.prototype._$2b=function(t,i){var e=i;if(e._$hS(!0),this._$32()){var r=this.getTargetBaseDataID();if(e._$8r==A._$ur&&(e._$8r=t.getBaseDataIndex(r)),e._$8r<0)_t._$so&&_._$li("_$L _$0P _$G :: %s",r),e._$hS(!1);else{var o=t.getBaseData(e._$8r),s=t._$q2(e._$8r);if(null!=o&&s._$yo()){var n=s.getTotalScale();e.setTotalScale_notForClient(n);var a=s.getTotalOpacity();e.setTotalOpacity(a*e.getInterpolatedOpacity()),o._$nb(t,s,e._$Cr,e._$hr,this._$VT(),0,2),e._$hS(!0)}else e._$hS(!1)}}else e.setTotalOpacity(e.getInterpolatedOpacity())},Z.prototype._$nb=function(t,i,e,r,o,s,n){var _=i,a=null!=_._$hr?_._$hr:_._$Cr;Z.transformPoints_sdk2(e,r,o,s,n,a,this._$o,this._$A)},Z.transformPoints_sdk2=function(i,e,r,o,s,n,_,a){for(var h,$,l,u=r*s,p=0,c=0,f=0,g=0,y=0,d=0,m=!1,T=o;T=1){b=n[2*(0+a*M)],F=n[2*(0+a*M)+1],C=p-2*f+1*y,N=c-2*g+1*d,w=p+3*y,D=c+3*d,O=p-2*f+3*y,R=c-2*g+3*d;(B=.5*(v- -2))+(G=.5*(L-1))<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else{(k=0|S)==a&&(k=a-1);var B=.5*(v- -2),G=S-k,U=k/a,Y=(k+1)/a;b=n[2*(0+k*M)],F=n[2*(0+k*M)+1],w=n[2*(0+(k+1)*M)],D=n[2*(0+(k+1)*M)+1],C=p-2*f+U*y,N=c-2*g+U*d,O=p-2*f+Y*y,R=c-2*g+Y*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(1<=v)if(L<=0){O=n[2*(_+0*M)],R=n[2*(_+0*M)+1],w=p+3*f,D=c+3*g,C=p+1*f-2*y,N=c+1*g-2*d,b=p+3*f-2*y,F=c+3*g-2*d;(B=.5*(v-1))+(G=.5*(L- -2))<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(L>=1){C=n[2*(_+a*M)],N=n[2*(_+a*M)+1],b=p+3*f+1*y,F=c+3*g+1*d,O=p+1*f+3*y,R=c+1*g+3*d,w=p+3*f+3*y,D=c+3*g+3*d;(B=.5*(v-1))+(G=.5*(L-1))<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else{var k;(k=0|S)==a&&(k=a-1);B=.5*(v-1),G=S-k,U=k/a,Y=(k+1)/a,C=n[2*(_+k*M)],N=n[2*(_+k*M)+1],O=n[2*(_+(k+1)*M)],R=n[2*(_+(k+1)*M)+1],b=p+3*f+U*y,F=c+3*g+U*d,w=p+3*f+Y*y,D=c+3*g+Y*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(L<=0){(z=0|P)==_&&(z=_-1);B=P-z,G=.5*(L- -2);var V=z/_,X=(z+1)/_;O=n[2*(z+0*M)],R=n[2*(z+0*M)+1],w=n[2*(z+1+0*M)],D=n[2*(z+1+0*M)+1],C=p+V*f-2*y,N=c+V*g-2*d,b=p+X*f-2*y,F=c+X*g-2*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(L>=1){var z;(z=0|P)==_&&(z=_-1);B=P-z,G=.5*(L-1),V=z/_,X=(z+1)/_,C=n[2*(z+a*M)],N=n[2*(z+a*M)+1],b=n[2*(z+1+a*M)],F=n[2*(z+1+a*M)+1],O=p+V*f+3*y,R=c+V*g+3*d,w=p+X*f+3*y,D=c+X*g+3*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else t.err.printf("_$li calc : %.4f , %.4f @@BDBoxGrid\n",v,L);else e[T]=p+v*f+L*y,e[T+1]=c+v*g+L*d}else h=2*((0|P)+(0|S)*(_+1)),($=P-(0|P))+(l=S-(0|S))<1?(e[T]=n[h]*(1-$-l)+n[h+2]*$+n[h+2*(_+1)]*l,e[T+1]=n[h+1]*(1-$-l)+n[h+3]*$+n[h+2*(_+1)+1]*l):(e[T]=n[h+2*(_+1)+2]*($-1+l)+n[h+2*(_+1)]*(1-$)+n[h+2]*(1-l),e[T+1]=n[h+2*(_+1)+3]*($-1+l)+n[h+2*(_+1)+1]*(1-$)+n[h+3]*(1-l))}},Z.prototype.transformPoints_sdk1=function(t,i,e,r,o,s,n){for(var _,a,h,$,l,u,p,c=i,f=this._$o,g=this._$A,y=o*n,d=null!=c._$hr?c._$hr:c._$Cr,m=s;m1&&(_=1),a<0?a=0:a>1&&(a=1),$=0|(a*=g),(h=0|(_*=f))>f-1&&(h=f-1),$>g-1&&($=g-1),u=_-h,p=a-$,l=2*(h+$*(f+1))):(u=(_=e[m]*f)-(0|_),p=(a=e[m+1]*g)-(0|a),l=2*((0|_)+(0|a)*(f+1))),u+p<1?(r[m]=d[l]*(1-u-p)+d[l+2]*u+d[l+2*(f+1)]*p,r[m+1]=d[l+1]*(1-u-p)+d[l+3]*u+d[l+2*(f+1)+1]*p):(r[m]=d[l+2*(f+1)+2]*(u-1+p)+d[l+2*(f+1)]*(1-u)+d[l+2]*(1-p),r[m+1]=d[l+2*(f+1)+3]*(u-1+p)+d[l+2*(f+1)+1]*(1-u)+d[l+3]*(1-p))},Z.prototype._$VT=function(){return(this._$o+1)*(this._$A+1)},Z.prototype.getType=function(){return A._$_b};function K(t){nt.prototype.constructor.call(this,t),this._$8r=A._$ur,this._$Cr=null,this._$hr=null}K.prototype=new nt;function tt(){e||(this.visible=!0,this._$g0=!1,this._$NL=null,this._$3S=null,this._$aS=null,tt._$42++)}tt._$42=0,tt.prototype._$zP=function(){this._$3S=new Array,this._$aS=new Array},tt.prototype._$F0=function(t){this._$g0=t._$8L(),this.visible=t._$8L(),this._$NL=t._$nP(),this._$3S=t._$nP(),this._$aS=t._$nP()},tt.prototype.init=function(t){var i=new it(this);return i.setPartsOpacity(this.isVisible()?1:0),i},tt.prototype._$6o=function(t){if(null==this._$3S)throw new Error("_$3S _$6 _$Wo@_$6o");this._$3S.push(t)},tt.prototype._$3o=function(t){if(null==this._$aS)throw new Error("_$aS _$6 _$Wo@_$3o");this._$aS.push(t)},tt.prototype._$Zo=function(t){this._$3S=t},tt.prototype._$xo=function(t){this._$aS=t},tt.prototype.isVisible=function(){return this.visible},tt.prototype._$uL=function(){return this._$g0},tt.prototype._$KP=function(t){this.visible=t},tt.prototype._$ET=function(t){this._$g0=t},tt.prototype.getBaseData=function(){return this._$3S},tt.prototype.getDrawData=function(){return this._$aS},tt.prototype._$p2=function(){return this._$NL},tt.prototype._$ob=function(t){this._$NL=t},tt.prototype.getPartsID=function(){return this._$NL},tt.prototype._$MP=function(t){this._$NL=t};function it(t){this._$VS=null,this._$e0=null,this._$e0=t}it.prototype=new function(){},it.prototype.getPartsOpacity=function(){return this._$VS},it.prototype.setPartsOpacity=function(t){this._$VS=t};function et(t){e||(this.id=t)}et._$L7=function(){$._$27(),yt._$27(),R._$27(),h._$27()},et.prototype.toString=function(){return this.id};function rt(){e||(this._$4S=null)}rt.prototype._$1s=function(){return this._$4S},rt.prototype._$zP=function(){this._$4S=new Array},rt.prototype._$F0=function(t){this._$4S=t._$nP()},rt.prototype._$Ks=function(t){this._$4S.push(t)};function ot(t,i){this.canvas=t,this.context=i,this.viewport=new Array(0,0,t.width,t.height),this._$6r=1,this._$xP=0,this._$3r=1,this._$uP=0,this._$Qo=-1,this.cacheImages={}}ot.tr=new gt,ot._$50=new gt,ot._$Ti=new Array(0,0),ot._$Pi=new Array(0,0),ot._$B=new Array(0,0),ot.prototype._$lP=function(t,i,e,r){this.viewport=new Array(t,i,e,r)},ot.prototype._$bL=function(){this.context.save();var t=this.viewport;null!=t&&(this.context.beginPath(),this.context._$Li(t[0],t[1],t[2],t[3]),this.context.clip())},ot.prototype._$ei=function(){this.context.restore()},ot.prototype.drawElements=function(t,i,e,r,o,s,n,a){try{o!=this._$Qo&&(this._$Qo=o,this.context.globalAlpha=o);for(var h=i.length,$=t.width,l=t.height,u=this.context,p=this._$xP,c=this._$uP,f=this._$6r,g=this._$3r,y=ot.tr,d=ot._$Ti,m=ot._$Pi,P=ot._$B,S=0;S.02?ot.expandClip(t,i,e,r,$,l,u,p,c,f):ot.clipWithTransform(t,null,o,s,n,_,a,h)},ot.expandClip=function(t,i,e,r,o,s,n,_,a,h){var $=n-o,l=_-s,u=a-o,p=h-s,c=$*p-l*u>0?e:-e,f=-l,g=$,y=a-n,d=h-_,m=-d,T=y,P=Math.sqrt(y*y+d*d),S=-p,v=u,L=Math.sqrt(u*u+p*p),M=o-c*f/r,E=s-c*g/r,A=n-c*f/r,I=_-c*g/r,x=n-c*m/P,w=_-c*T/P,D=a-c*m/P,O=h-c*T/P,R=o+c*S/L,b=s+c*v/L,F=a+c*S/L,C=h+c*v/L,N=ot._$50;return null!=i._$P2(N)&&(ot.clipWithTransform(t,N,M,E,A,I,x,w,D,O,F,C,R,b),!0)},ot.clipWithTransform=function(t,i,e,r,o,s,n,a){if(arguments.length<7)_._$li("err : @LDGL.clip()");else if(arguments[1]instanceof gt){var h=ot._$B,$=i,l=arguments;if(t.beginPath(),$){$._$PS(l[2],l[3],h),t.moveTo(h[0],h[1]);for(var u=4;u1?1:.5-.5*Math.cos(t*vt.PI_F)};function ht(t){e||(this._$ib=t)}ht._$fr=-1,ht.prototype.toString=function(){return this._$ib};function $t(){e||(W.prototype.constructor.call(this),this._$LP=-1,this._$d0=0,this._$Yo=0,this._$JP=null,this._$5P=null,this._$BP=null,this._$Eo=null,this._$Qi=null,this._$6s=$t._$ms,this.culling=!0,this.gl_cacheImage=null,this.instanceNo=$t._$42++)}$t.prototype=new W,$t._$42=0,$t._$Os=30,$t._$ms=0,$t._$ns=1,$t._$_s=2,$t._$gT=new Array,$t.prototype._$_S=function(t){this._$LP=t},$t.prototype.getTextureNo=function(){return this._$LP},$t.prototype._$ZL=function(){return this._$Qi},$t.prototype._$H2=function(){return this._$JP},$t.prototype.getNumPoints=function(){return this._$d0},$t.prototype.getType=function(){return W._$wb},$t.prototype._$B2=function(t,i,e){var r=i,o=null!=r._$hr?r._$hr:r._$Cr;switch(B._$do){default:case B._$Ms:throw new Error("_$L _$ro ");case B._$Qs:for(var s=this._$d0-1;s>=0;--s){o[s*B._$No+4]=e}}},$t.prototype._$zP=function(){this._$GS=new D,this._$GS._$zP()},$t.prototype._$F0=function(t){W.prototype._$F0.call(this,t),this._$LP=t._$6L(),this._$d0=t._$6L(),this._$Yo=t._$6L();var i=t._$nP();this._$BP=new Int16Array(3*this._$Yo);for(var e=3*this._$Yo-1;e>=0;--e)this._$BP[e]=i[e];if(this._$Eo=t._$nP(),this._$Qi=t._$nP(),t.getFormatVersion()>=G._$s7){if(this._$JP=t._$6L(),0!=this._$JP){if(0!=(1&this._$JP)){var r=t._$6L();null==this._$5P&&(this._$5P=new Object),this._$5P._$Hb=parseInt(r)}0!=(this._$JP&$t._$Os)?this._$6s=(this._$JP&$t._$Os)>>1:this._$6s=$t._$ms,0!=(32&this._$JP)&&(this.culling=!1)}}else this._$JP=0},$t.prototype.init=function(t){var i=new lt(this),e=this._$d0*B._$No,r=this._$32();null!=i._$Cr&&(i._$Cr=null),i._$Cr=new Float32Array(e),null!=i._$hr&&(i._$hr=null),i._$hr=r?new Float32Array(e):null;switch(B._$do){default:case B._$Ms:if(B._$Ls)for(var o=this._$d0-1;o>=0;--o){var s=o<<1;this._$Qi[s+1]=1-this._$Qi[s+1]}break;case B._$Qs:for(o=this._$d0-1;o>=0;--o){s=o<<1;var n=o*B._$No,_=this._$Qi[s],a=this._$Qi[s+1];i._$Cr[n]=_,i._$Cr[n+1]=a,i._$Cr[n+4]=0,r&&(i._$hr[n]=_,i._$hr[n+1]=a,i._$hr[n+4]=0)}}return i},$t.prototype._$Nr=function(t,i){var e=i;if(this!=e._$GT()&&console.log("### assert!! ### "),this._$GS._$Ur(t)&&(W.prototype._$Nr.call(this,t,e),!e._$IS[0])){var r=$t._$gT;r[0]=!1,S._$Vr(t,this._$GS,r,this._$d0,this._$Eo,e._$Cr,B._$i2,B._$No)}},$t.prototype._$2b=function(t,i){try{this!=i._$GT()&&console.log("### assert!! ### ");var e=!1;i._$IS[0]&&(e=!0);var r=i;if(!e&&(W.prototype._$2b.call(this,t),this._$32())){var o=this.getTargetBaseDataID();if(r._$8r==W._$ur&&(r._$8r=t.getBaseDataIndex(o)),r._$8r<0)_t._$so&&_._$li("_$L _$0P _$G :: %s",o);else{var s=t.getBaseData(r._$8r),n=t._$q2(r._$8r);null==s||n._$x2()?r._$AT=!1:(s._$nb(t,n,r._$Cr,r._$hr,this._$d0,B._$i2,B._$No),r._$AT=!0),r.baseOpacity=n.getTotalOpacity()}}}catch(t){throw t}},$t.prototype.draw=function(t,i,e){if(this!=e._$GT()&&console.log("### assert!! ### "),!e._$IS[0]){var r=e,o=this._$LP;o<0&&(o=1);var s=this.getOpacity(i,r)*e._$VS*e.baseOpacity,n=null!=r._$hr?r._$hr:r._$Cr;t.setClipBufPre_clipContextForDraw(e.clipBufPre_clipContext),t._$WP(this.culling),t._$Uo(o,3*this._$Yo,this._$BP,n,this._$Qi,s,this._$6s,r)}},$t.prototype.dump=function(){console.log(" _$yi( %d ) , _$d0( %d ) , _$Yo( %d ) \n",this._$LP,this._$d0,this._$Yo),console.log(" _$Oi _$di = { ");for(var t=0;tstartMotion() / start _$K _$3 (m%d)\n",r,e._$sr));if(null==t)return-1;(e=new ft)._$w0=t,this.motions.push(e);var s=e._$sr;return this._$eb&&_._$Ji("MotionQueueManager[size:%2d]->startMotion() / new _$w0 (m%d)\n",r,s),s},ct.prototype.updateParam=function(t){try{for(var i=!1,e=0;eupdateParam() / _$T0 _$w0 (m%d)\n",this.motions.length-1,r._$sr),this.motions.splice(e,1),e--)):(this.motions=this.motions.splice(e,1),e--)}else this.motions.splice(e,1),e--}return i}catch(t){return _._$li(t),!0}},ct.prototype.isFinished=function(t){if(arguments.length>=1){for(var i=0;i.9&&_t.EXPAND_W;var a=this.gl;if(null==this.gl)throw new Error("gl is null");var h=1*this._$C0*s,$=1*this._$tT*s,l=1*this._$WL*s,u=this._$lT*s;if(null!=this.clipBufPre_clipContextMask){a.frontFace(a.CCW),a.useProgram(this.shaderProgram),this._$vS=mt(a,this._$vS,r),this._$no=Tt(a,this._$no,e),a.enableVertexAttribArray(this.a_position_Loc),a.vertexAttribPointer(this.a_position_Loc,2,a.FLOAT,!1,0,0),this._$NT=mt(a,this._$NT,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,this.textures[t]),a.uniform1i(this.s_texture0_Loc,1),a.enableVertexAttribArray(this.a_texCoord_Loc),a.vertexAttribPointer(this.a_texCoord_Loc,2,a.FLOAT,!1,0,0),a.uniformMatrix4fv(this.u_matrix_Loc,!1,this.getClipBufPre_clipContextMask().matrixForMask);var p=this.getClipBufPre_clipContextMask().layoutChannelNo,c=this.getChannelFlagAsColor(p);a.uniform4f(this.u_channelFlag,c.r,c.g,c.b,c.a);var f=this.getClipBufPre_clipContextMask().layoutBounds;a.uniform4f(this.u_baseColor_Loc,2*f.x-1,2*f.y-1,2*f._$EL()-1,2*f._$5T()-1),a.uniform1i(this.u_maskFlag_Loc,!0)}else if(null!=this.getClipBufPre_clipContextDraw()){a.useProgram(this.shaderProgramOff),this._$vS=mt(a,this._$vS,r),this._$no=Tt(a,this._$no,e),a.enableVertexAttribArray(this.a_position_Loc_Off),a.vertexAttribPointer(this.a_position_Loc_Off,2,a.FLOAT,!1,0,0),this._$NT=mt(a,this._$NT,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,this.textures[t]),a.uniform1i(this.s_texture0_Loc_Off,1),a.enableVertexAttribArray(this.a_texCoord_Loc_Off),a.vertexAttribPointer(this.a_texCoord_Loc_Off,2,a.FLOAT,!1,0,0),a.uniformMatrix4fv(this.u_clipMatrix_Loc_Off,!1,this.getClipBufPre_clipContextDraw().matrixForDraw),a.uniformMatrix4fv(this.u_matrix_Loc_Off,!1,this.matrix4x4),a.activeTexture(a.TEXTURE2),a.bindTexture(a.TEXTURE_2D,_t.fTexture[this.glno]),a.uniform1i(this.s_texture1_Loc_Off,2);p=this.getClipBufPre_clipContextDraw().layoutChannelNo,c=this.getChannelFlagAsColor(p);a.uniform4f(this.u_channelFlag_Loc_Off,c.r,c.g,c.b,c.a),a.uniform4f(this.u_baseColor_Loc_Off,h,$,l,u)}else a.useProgram(this.shaderProgram),this._$vS=mt(a,this._$vS,r),this._$no=Tt(a,this._$no,e),a.enableVertexAttribArray(this.a_position_Loc),a.vertexAttribPointer(this.a_position_Loc,2,a.FLOAT,!1,0,0),this._$NT=mt(a,this._$NT,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,this.textures[t]),a.uniform1i(this.s_texture0_Loc,1),a.enableVertexAttribArray(this.a_texCoord_Loc),a.vertexAttribPointer(this.a_texCoord_Loc,2,a.FLOAT,!1,0,0),a.uniformMatrix4fv(this.u_matrix_Loc,!1,this.matrix4x4),a.uniform4f(this.u_baseColor_Loc,h,$,l,u),a.uniform1i(this.u_maskFlag_Loc,!1);this.culling?this.gl.enable(a.CULL_FACE):this.gl.disable(a.CULL_FACE),this.gl.enable(a.BLEND);var g,y,d,m;if(null!=this.clipBufPre_clipContextMask)g=a.ONE,y=a.ONE_MINUS_SRC_ALPHA,d=a.ONE,m=a.ONE_MINUS_SRC_ALPHA;else switch(n){case $t._$ms:g=a.ONE,y=a.ONE_MINUS_SRC_ALPHA,d=a.ONE,m=a.ONE_MINUS_SRC_ALPHA;break;case $t._$ns:g=a.ONE,y=a.ONE,d=a.ZERO,m=a.ONE;break;case $t._$_s:g=a.DST_COLOR,y=a.ONE_MINUS_SRC_ALPHA,d=a.ZERO,m=a.ONE}a.blendEquationSeparate(a.FUNC_ADD,a.FUNC_ADD),a.blendFuncSeparate(g,y,d,m),this.anisotropyExt&&a.texParameteri(a.TEXTURE_2D,this.anisotropyExt.TEXTURE_MAX_ANISOTROPY_EXT,this.maxAnisotropy);var T=e.length;a.drawElements(a.TRIANGLES,T,a.UNSIGNED_SHORT,0),a.bindTexture(a.TEXTURE_2D,null)}};function mt(t,i,e){return null==i&&(i=t.createBuffer()),t.bindBuffer(t.ARRAY_BUFFER,i),t.bufferData(t.ARRAY_BUFFER,e,t.DYNAMIC_DRAW),i}function Tt(t,i,e){return null==i&&(i=t.createBuffer()),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,i),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.DYNAMIC_DRAW),i}dt.prototype._$Rs=function(){throw new Error("_$Rs")},dt.prototype._$Ds=function(t){throw new Error("_$Ds")},dt.prototype._$K2=function(){for(var t=0;t=48){var r=G._$9o(t);return null!=r?(r._$F0(this),r):null}switch(t){case 1:return this._$bT();case 10:return new function(){e||(this.color=null)}(this._$6L(),!0);case 11:return new P(this._$mP(),this._$mP(),this._$mP(),this._$mP());case 12:return new P(this._$_T(),this._$_T(),this._$_T(),this._$_T());case 13:return new v(this._$mP(),this._$mP());case 14:return new v(this._$_T(),this._$_T());case 15:for(var o=this._$3L(),s=new Array(o),n=0;n>7-this._$hL++&1)},Pt.prototype._$zT=function(){0!=this._$hL&&(this._$hL=0)};function vt(){}vt._$2S=Math.PI/180,vt._$bS=Math.PI/180,vt._$wS=180/Math.PI,vt._$NS=180/Math.PI,vt.PI_F=Math.PI,vt._$kT=[0,.012368,.024734,.037097,.049454,.061803,.074143,.086471,.098786,.111087,.12337,.135634,.147877,.160098,.172295,.184465,.196606,.208718,.220798,.232844,.244854,.256827,.268761,.280654,.292503,.304308,.316066,.327776,.339436,.351044,.362598,.374097,.385538,.396921,.408243,.419502,.430697,.441826,.452888,.463881,.474802,.485651,.496425,.507124,.517745,.528287,.538748,.549126,.559421,.56963,.579752,.589785,.599728,.609579,.619337,.629,.638567,.648036,.657406,.666676,.675843,.684908,.693867,.70272,.711466,.720103,.72863,.737045,.745348,.753536,.76161,.769566,.777405,.785125,.792725,.800204,.807561,.814793,.821901,.828884,.835739,.842467,.849066,.855535,.861873,.868079,.874153,.880093,.885898,.891567,.897101,.902497,.907754,.912873,.917853,.922692,.92739,.931946,.936359,.940629,.944755,.948737,.952574,.956265,.959809,.963207,.966457,.96956,.972514,.97532,.977976,.980482,.982839,.985045,.987101,.989006,.990759,.992361,.993811,.995109,.996254,.997248,.998088,.998776,.999312,.999694,.999924,1],vt._$92=function(t,i){var e=Math.atan2(t[1],t[0]),r=Math.atan2(i[1],i[0]);return vt._$tS(e,r)},vt._$tS=function(t,i){for(var e=t-i;e<-Math.PI;)e+=2*Math.PI;for(;e>Math.PI;)e-=2*Math.PI;return e},vt._$9=function(t){return Math.sin(t)},vt.fcos=function(t){return Math.cos(t)};function Lt(t){e||(this._$e0=null,this._$IP=null,this._$Us=null,this._$7s=null,this._$IS=[!1],this._$VS=null,this._$AT=!0,this.baseOpacity=1,this.clipBufPre_clipContext=null,this._$e0=t)}Lt.prototype._$u2=function(){return this._$IS[0]},Lt.prototype._$yo=function(){return this._$AT&&!this._$IS[0]},Lt.prototype._$GT=function(){return this._$e0};function Mt(){}Mt._$W2=0,Mt.SYSTEM_INFO=null,Mt.USER_AGENT=navigator.userAgent,Mt.isIPhone=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isIPhone},Mt.isIOS=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isIPhone||Mt.SYSTEM_INFO._isIPad},Mt.isAndroid=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isAndroid},Mt.getOSVersion=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO.version},Mt.getOS=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isIPhone||Mt.SYSTEM_INFO._isIPad?"iOS":Mt.SYSTEM_INFO._isAndroid?"Android":"_$Q0 OS"},Mt.setup=function(){var t=Mt.USER_AGENT;function i(t,i){for(var e=t.substring(i).split(/[ _,;\.]/),r=0,o=0;o<=2&&!isNaN(e[o]);o++){var s=parseInt(e[o]);if(s<0||s>999){_._$li("err : "+s+" @UtHtml5.setup()"),r=0;break}r+=s*Math.pow(1e3,2-o)}return r}var e,r=Mt.SYSTEM_INFO={userAgent:t};if((e=t.indexOf("iPhone OS "))>=0)r.os="iPhone",r._isIPhone=!0,r.version=i(t,e+"iPhone OS ".length);else if((e=t.indexOf("iPad"))>=0){if((e=t.indexOf("CPU OS"))<0)return void _._$li(" err : "+t+" @UtHtml5.setup()");r.os="iPad",r._isIPad=!0,r.version=i(t,e+"CPU OS ".length)}else(e=t.indexOf("Android"))>=0?(r.os="Android",r._isAndroid=!0,r.version=i(t,e+"Android ".length)):(r.os="-",r.version=-1)},_t.init();e=!1;i.UtSystem=I,i.UtDebug=_,i.LDTransform=gt,i.LDGL=ot,i.Live2D=_t,i.Live2DModelWebGL=pt,i.Live2DModelJS=q,i.Live2DMotion=J,i.MotionQueueManager=ct,i.PhysicsHair=u,i.AMotion=n,i.PartsDataID=h,i.DrawDataID=R,i.BaseDataID=yt,i.ParamID=$}).call(i,e(137))},132:function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.L2DBaseModel=i.L2DExpressionMotion=i.L2DExpressionParam=i.L2DEyeBlink=i.EYE_STATE=i.L2DMatrix44=i.L2DModelMatrix=i.L2DMotionManager=i.L2DPhysics=i.L2DPartsParam=i.L2DPose=i.L2DViewMatrix=i.Live2DFramework=i.L2DTargetPoint=void 0;var r=e(131);function o(){this.live2DModel=null,this.modelMatrix=null,this.eyeBlink=null,this.physics=null,this.pose=null,this.debugMode=!1,this.initialized=!1,this.updating=!1,this.alpha=1,this.accAlpha=0,this.lipSync=!1,this.lipSyncValue=0,this.accelX=0,this.accelY=0,this.accelZ=0,this.dragX=0,this.dragY=0,this.startTimeMSec=null,this.mainMotionManager=new u,this.expressionManager=new u,this.motions={},this.expressions={},this.isTexLoaded=!1}var s=0;o.prototype.getModelMatrix=function(){return this.modelMatrix},o.prototype.setAlpha=function(t){t>.999&&(t=1),t<.001&&(t=0),this.alpha=t},o.prototype.getAlpha=function(){return this.alpha},o.prototype.isInitialized=function(){return this.initialized},o.prototype.setInitialized=function(t){this.initialized=t},o.prototype.isUpdating=function(){return this.updating},o.prototype.setUpdating=function(t){this.updating=t},o.prototype.getLive2DModel=function(){return this.live2DModel},o.prototype.setLipSync=function(t){this.lipSync=t},o.prototype.setLipSyncValue=function(t){this.lipSyncValue=t},o.prototype.setAccel=function(t,i,e){this.accelX=t,this.accelY=i,this.accelZ=e},o.prototype.setDrag=function(t,i){this.dragX=t,this.dragY=i},o.prototype.getMainMotionManager=function(){return this.mainMotionManager},o.prototype.getExpressionManager=function(){return this.expressionManager},o.prototype.loadModelData=function(t,i){var e=d.getPlatformManager();this.debugMode&&e.log("Load model : "+t);var o=this;e.loadLive2DModel(t,function(t){o.live2DModel=t,o.live2DModel.saveParam();0==r.Live2D.getError()?(o.modelMatrix=new l(o.live2DModel.getCanvasWidth(),o.live2DModel.getCanvasHeight()),o.modelMatrix.setWidth(2),o.modelMatrix.setCenterPosition(0,0),i(o.live2DModel)):console.error("Error : Failed to loadModelData().")})},o.prototype.loadTexture=function(t,i,e){s++;var r=d.getPlatformManager();this.debugMode&&r.log("Load Texture : "+i);var o=this;r.loadTexture(this.live2DModel,t,i,function(){0==--s&&(o.isTexLoaded=!0),"function"==typeof e&&e()})},o.prototype.loadMotion=function(t,i,e){var o=d.getPlatformManager();this.debugMode&&o.log("Load Motion : "+i);var s=null,n=this;o.loadBytes(i,function(i){s=r.Live2DMotion.loadMotion(i),null!=t&&(n.motions[t]=s),e(s)})},o.prototype.loadExpression=function(t,i,e){var r=d.getPlatformManager();this.debugMode&&r.log("Load Expression : "+i);var o=this;r.loadBytes(i,function(i){null!=t&&(o.expressions[t]=n.loadJson(i)),"function"==typeof e&&e()})},o.prototype.loadPose=function(t,i){var e=d.getPlatformManager();this.debugMode&&e.log("Load Pose : "+t);var r=this;try{e.loadBytes(t,function(t){r.pose=c.load(t),"function"==typeof i&&i()})}catch(t){console.warn(t)}},o.prototype.loadPhysics=function(t){var i=d.getPlatformManager();this.debugMode&&i.log("Load Physics : "+t);var e=this;try{i.loadBytes(t,function(t){e.physics=p.load(t)})}catch(t){console.warn(t)}},o.prototype.hitTestSimple=function(t,i,e){if(null===this.live2DModel)return!1;var r=this.live2DModel.getDrawDataIndex(t);if(r<0)return!1;for(var o=this.live2DModel.getTransformedPoints(r),s=this.live2DModel.getCanvasWidth(),n=0,_=this.live2DModel.getCanvasHeight(),a=0,h=0;hn&&(n=$),l<_&&(_=l),l>a&&(a=l)}var u=this.modelMatrix.invertTransformX(i),p=this.modelMatrix.invertTransformY(e);return s<=u&&u<=n&&_<=p&&p<=a};function n(){r.AMotion.prototype.constructor.call(this),this.paramList=new Array}n.prototype=new r.AMotion,n.EXPRESSION_DEFAULT="DEFAULT",n.TYPE_SET=0,n.TYPE_ADD=1,n.TYPE_MULT=2,n.loadJson=function(t){var i=new n,e=d.getPlatformManager().jsonParseFromBytes(t);if(i.setFadeIn(parseInt(e.fade_in)>0?parseInt(e.fade_in):1e3),i.setFadeOut(parseInt(e.fade_out)>0?parseInt(e.fade_out):1e3),null==e.params)return i;var r=e.params,o=r.length;i.paramList=[];for(var s=0;s=0;--o){var s=this.paramList[o];s.type==n.TYPE_ADD?t.addToParamFloat(s.id,s.value,e):s.type==n.TYPE_MULT?t.multParamFloat(s.id,s.value,e):s.type==n.TYPE_SET&&t.setParamFloat(s.id,s.value,e)}};function _(){this.id="",this.type=-1,this.value=null}function a(){this.nextBlinkTime=null,this.stateStartTime=null,this.blinkIntervalMsec=null,this.eyeState=h.STATE_FIRST,this.blinkIntervalMsec=4e3,this.closingMotionMsec=100,this.closedMotionMsec=50,this.openingMotionMsec=150,this.closeIfZero=!0,this.eyeID_L="PARAM_EYE_L_OPEN",this.eyeID_R="PARAM_EYE_R_OPEN"}a.prototype.calcNextBlink=function(){return r.UtSystem.getUserTimeMSec()+Math.random()*(2*this.blinkIntervalMsec-1)},a.prototype.setInterval=function(t){this.blinkIntervalMsec=t},a.prototype.setEyeMotion=function(t,i,e){this.closingMotionMsec=t,this.closedMotionMsec=i,this.openingMotionMsec=e},a.prototype.updateParam=function(t){var i,e=r.UtSystem.getUserTimeMSec(),o=0;switch(this.eyeState){case h.STATE_CLOSING:(o=(e-this.stateStartTime)/this.closingMotionMsec)>=1&&(o=1,this.eyeState=h.STATE_CLOSED,this.stateStartTime=e),i=1-o;break;case h.STATE_CLOSED:(o=(e-this.stateStartTime)/this.closedMotionMsec)>=1&&(this.eyeState=h.STATE_OPENING,this.stateStartTime=e),i=0;break;case h.STATE_OPENING:(o=(e-this.stateStartTime)/this.openingMotionMsec)>=1&&(o=1,this.eyeState=h.STATE_INTERVAL,this.nextBlinkTime=this.calcNextBlink()),i=o;break;case h.STATE_INTERVAL:this.nextBlinkTime=t)&&(!(this.currentPriority>=t)&&(this.reservePriority=t,!0))},u.prototype.setReservePriority=function(t){this.reservePriority=t},u.prototype.updateParam=function(t){var i=r.MotionQueueManager.prototype.updateParam.call(this,t);return this.isFinished()&&(this.currentPriority=0),i},u.prototype.startMotionPrio=function(t,i){return i==this.reservePriority&&(this.reservePriority=0),this.currentPriority=i,this.startMotion(t,!1)};function p(){this.physicsList=new Array,this.startTimeMSec=r.UtSystem.getUserTimeMSec()}p.load=function(t){for(var i=new p,e=d.getPlatformManager().jsonParseFromBytes(t).physics_hair,o=e.length,s=0;s=0)break;r=s,o=t.getPartsOpacity(n),(o+=e/.5)>1&&(o=1)}}r<0&&(r=0,o=1);for(s=0;s.15&&(a=1-.15/(1-o)),h>a&&(h=a),t.setPartsOpacity(n,h)}}},c.prototype.copyOpacityOtherParts=function(t,i){for(var e=0;eo)&&(h*=o/l,$*=o/l,l=o),this.faceVX+=h,this.faceVY+=$;var u=.5*(Math.sqrt(o*o+16*o*_-8*o*_)-o),p=Math.sqrt(this.faceVX*this.faceVX+this.faceVY*this.faceVY);p>u&&(this.faceVX*=u/p,this.faceVY*=u/p),this.faceX+=this.faceVX,this.faceY+=this.faceVY}}else this.lastTimeSec=r.UtSystem.getUserTimeMSec()};function y(){$.prototype.constructor.call(this),this.screenLeft=null,this.screenRight=null,this.screenTop=null,this.screenBottom=null,this.maxLeft=null,this.maxRight=null,this.maxTop=null,this.maxBottom=null}y.prototype=new $,y.prototype.adjustTranslate=function(t,i){this.tr[0]*this.maxLeft+(this.tr[12]+t)>this.screenLeft&&(t=this.screenLeft-this.tr[0]*this.maxLeft-this.tr[12]),this.tr[0]*this.maxRight+(this.tr[12]+t)this.screenBottom&&(i=this.screenBottom-this.tr[5]*this.maxBottom-this.tr[13]);var e=[1,0,0,0,0,1,0,0,0,0,1,0,t,i,0,1];$.mul(e,this.tr,this.tr)},y.prototype.adjustScale=function(t,i,e){this.tr[0];var r=[1,0,0,0,0,1,0,0,0,0,1,0,t,i,0,1],o=[e,0,0,0,0,e,0,0,0,0,1,0,0,0,0,1],s=[1,0,0,0,0,1,0,0,0,0,1,0,-t,-i,0,1];$.mul(s,this.tr,this.tr),$.mul(o,this.tr,this.tr),$.mul(r,this.tr,this.tr)},y.prototype.setScreenRect=function(t,i,e,r){this.screenLeft=t,this.screenRight=i,this.screenTop=r,this.screenBottom=e},y.prototype.setMaxScreenRect=function(t,i,e,r){this.maxLeft=t,this.maxRight=i,this.maxTop=r,this.maxBottom=e},y.prototype.getScreenLeft=function(){return this.screenLeft},y.prototype.getScreenRight=function(){return this.screenRight},y.prototype.getScreenBottom=function(){return this.screenBottom},y.prototype.getScreenTop=function(){return this.screenTop},y.prototype.getMaxLeft=function(){return this.maxLeft},y.prototype.getMaxRight=function(){return this.maxRight},y.prototype.getMaxBottom=function(){return this.maxBottom},y.prototype.getMaxTop=function(){return this.maxTop};function d(){}d.platformManager=null,d.getPlatformManager=function(){return d.platformManager},d.setPlatformManager=function(t){d.platformManager=t},i.L2DTargetPoint=g,i.Live2DFramework=d,i.L2DViewMatrix=y,i.L2DPose=c,i.L2DPartsParam=f,i.L2DPhysics=p,i.L2DMotionManager=u,i.L2DModelMatrix=l,i.L2DMatrix44=$,i.EYE_STATE=h,i.L2DEyeBlink=a,i.L2DExpressionParam=_,i.L2DExpressionMotion=n,i.L2DBaseModel=o},133:function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0});i.cDefine={VIEW_LOGICAL_LEFT:-1,VIEW_LOGICAL_RIGHT:1,VIEW_LOGICAL_MAX_LEFT:-2,VIEW_LOGICAL_MAX_RIGHT:2,VIEW_LOGICAL_MAX_BOTTOM:-2,VIEW_LOGICAL_MAX_TOP:2,PRIORITY_NONE:0,PRIORITY_IDLE:1,PRIORITY_NORMAL:2,PRIORITY_FORCE:3,MOTION_GROUP_IDLE:"idle",MOTION_GROUP_TAP_BODY:"tap_body",MOTION_GROUP_FLICK_HEAD:"flick_head",MOTION_GROUP_PINCH_IN:"pinch_in",MOTION_GROUP_PINCH_OUT:"pinch_out",MOTION_GROUP_SHAKE:"shake",HIT_AREA_HEAD:"head",HIT_AREA_BODY:"body"}},134:function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.currCanvas=i.currWebGL=i.createElement=void 0;var r,o=e(51),s=e(136),n=(r=s,r&&r.__esModule?r:{default:r});var _=void 0,a=void 0;i.createElement=function(){var t=document.getElementById(o.config.name.div);null!==t&&document.body.removeChild(t);var e=document.createElement("div");e.id=o.config.name.div,e.innerHTML=n.default;var r=document.createElement("canvas");r.setAttribute("id",o.config.name.canvas),r.setAttribute("width",o.config.display.width*o.config.display.antialias),r.setAttribute("height",o.config.display.height*o.config.display.antialias),r.style.setProperty("position","fixed"),r.style.setProperty("width",o.config.display.width),r.style.setProperty("height",o.config.display.height),r.style.setProperty("opacity",o.config.react.opacityDefault),r.style.setProperty(o.config.display.position,o.config.display.hOffset+"px"),r.style.setProperty("bottom",o.config.display.vOffset+"px"),r.style.setProperty("z-index",99999),r.style.setProperty("pointer-events","none"),o.config.dev.border&&r.style.setProperty("border","dashed 1px #CCC"),e.appendChild(r),document.body.appendChild(e),i.currCanvas=a=document.getElementById(o.config.name.canvas),function(){for(var t=["webgl2","webgl","experimental-webgl2","experimental-webgl","webkit-3d","moz-webgl"],e=0;e=this.models.length?null:this.models[t]},_.prototype.releaseModel=function(t,i){this.models.length<=t||(this.models[t].release(i),delete this.models[t],this.models.splice(t,1))},_.prototype.numModels=function(){return this.models.length},_.prototype.setDrag=function(t,i){for(var e=0;e0){s.expressions={};for(var t=0;tG._$T7){t._$NP|=r._$4s;throw new ht("_$gi _$C _$li , _$n0 _$_ version _$li ( SDK : "+G._$T7+" < _$f0 : "+e+" )@_$SS#loadModel()\n")}var h=o._$nP();if(e>=G._$s7){var $=o._$9T(),l=o._$9T();if(-30584!=$||-30584!=l)throw t._$NP|=r._$0s,new ht("_$gi _$C _$li , _$0 _$6 _$Ui.")}t._$KS(h);var u=t.getModelContext();u.setDrawParam(t.getDrawParam()),u.init()}catch(t){_._$Rb(t)}},r.prototype._$KS=function(t){this._$MT=t},r.prototype.getModelImpl=function(){return null==this._$MT&&(this._$MT=new l,this._$MT._$zP()),this._$MT},r.prototype.getCanvasWidth=function(){return null==this._$MT?0:this._$MT.getCanvasWidth()},r.prototype.getCanvasHeight=function(){return null==this._$MT?0:this._$MT.getCanvasHeight()},r.prototype.getParamFloat=function(t){return"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),this._$5S.getParamFloat(t)},r.prototype.setParamFloat=function(t,i,e){"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),arguments.length<3&&(e=1),this._$5S.setParamFloat(t,this._$5S.getParamFloat(t)*(1-e)+i*e)},r.prototype.addToParamFloat=function(t,i,e){"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),arguments.length<3&&(e=1),this._$5S.setParamFloat(t,this._$5S.getParamFloat(t)+i*e)},r.prototype.multParamFloat=function(t,i,e){"number"!=typeof t&&(t=this._$5S.getParamIndex($.getID(t))),arguments.length<3&&(e=1),this._$5S.setParamFloat(t,this._$5S.getParamFloat(t)*(1+(i-1)*e))},r.prototype.getParamIndex=function(t){return this._$5S.getParamIndex($.getID(t))},r.prototype.loadParam=function(){this._$5S.loadParam()},r.prototype.saveParam=function(){this._$5S.saveParam()},r.prototype.init=function(){this._$5S.init()},r.prototype.update=function(){this._$5S.update()},r.prototype._$Rs=function(){return _._$li("_$60 _$PT _$Rs()"),-1},r.prototype._$Ds=function(t){_._$li("_$60 _$PT _$SS#_$Ds() \n")},r.prototype._$K2=function(){},r.prototype.draw=function(){},r.prototype.getModelContext=function(){return this._$5S},r.prototype._$s2=function(){return this._$NP},r.prototype._$P7=function(t,i,e,r){var o=-1,s=0;if(0!=e)if(1==t.length){u=t[0];var n=0!=this.getParamFloat(u),_=(p=i[0],this.getPartsOpacity(p)),a=e/r;n?(_+=a)>1&&(_=1):(_-=a)<0&&(_=0),this.setPartsOpacity(p,_)}else{for(l=0;l=0)break;o=l;p=i[l];s=this.getPartsOpacity(p),(s+=e/r)>1&&(s=1)}}o<0&&(console.log("No _$wi _$q0/ _$U default[%s]",t[0]),o=0,s=1,this.loadParam(),this.setParamFloat(t[o],s),this.saveParam());for(l=0;l.15&&(h=1-.15/(1-s)),$>h&&($=h),this.setPartsOpacity(p,$)}}}else for(var l=0;l=this._$5S._$aS.length)return null;var i=this._$5S._$aS[t];return null!=i&&i.getType()==W._$wb&&i instanceof $t?i.getIndexArray():null};function o(t){if(!e){this.clipContextList=new Array,this.glcontext=t.gl,this.dp_webgl=t,this.curFrameNo=0,this.firstError_clipInNotUpdate=!0,this.colorBuffer=0,this.isInitGLFBFunc=!1,this.tmpBoundsOnModel=new P,_t.glContext.length>_t.frameBuffers.length&&(this.curFrameNo=this.getMaskRenderTexture()),this.tmpModelToViewMatrix=new O,this.tmpMatrix2=new O,this.tmpMatrixForMask=new O,this.tmpMatrixForDraw=new O,this.CHANNEL_COLORS=new Array;var i=new E;(i=new E).r=0,i.g=0,i.b=0,i.a=1,this.CHANNEL_COLORS.push(i),(i=new E).r=1,i.g=0,i.b=0,i.a=0,this.CHANNEL_COLORS.push(i),(i=new E).r=0,i.g=1,i.b=0,i.a=0,this.CHANNEL_COLORS.push(i),(i=new E).r=0,i.g=0,i.b=1,i.a=0,this.CHANNEL_COLORS.push(i);for(var r=0;r=0;--t)this.CHANNEL_COLORS.splice(t,1);this.CHANNEL_COLORS=[]}this.releaseShader()},o.prototype.releaseShader=function(){for(var t=_t.frameBuffers.length,i=0;i0){var s=i.gl.getParameter(i.gl.FRAMEBUFFER_BINDING),n=new Array(4);n[0]=0,n[1]=0,n[2]=i.gl.canvas.width,n[3]=i.gl.canvas.height,i.gl.viewport(0,0,_t.clippingMaskBufferSize,_t.clippingMaskBufferSize),this.setupLayoutBounds(e),i.gl.bindFramebuffer(i.gl.FRAMEBUFFER,_t.frameBuffers[this.curFrameNo].framebuffer),i.gl.clearColor(0,0,0,0),i.gl.clear(i.gl.COLOR_BUFFER_BIT);for(r=0;rr?e:r,s=o,n=o,_=0,a=0,h=i.clippedDrawContextList.length,$=0;$_&&(_=P),S>a&&(a=S)}}if(s==o)i.allClippedDrawRect.x=0,i.allClippedDrawRect.y=0,i.allClippedDrawRect.width=0,i.allClippedDrawRect.height=0,i.isUsing=!1;else{var v=_-s,L=a-n;i.allClippedDrawRect.x=s,i.allClippedDrawRect.y=n,i.allClippedDrawRect.width=v,i.allClippedDrawRect.height=L,i.isUsing=!0}},o.prototype.setupLayoutBounds=function(t){var i=t/o.CHANNEL_COUNT,e=t%o.CHANNEL_COUNT;i=~~i,e=~~e;for(var r=0,s=0;s=1)return 1;var u=r*r;return h*(r*u)+$*u+l*r+0},n.prototype._$a0=function(){},n.prototype.setFadeIn=function(t){this._$dP=t},n.prototype.setFadeOut=function(t){this._$eo=t},n.prototype._$pT=function(t){this._$V0=t},n.prototype.getFadeOut=function(){return this._$eo},n.prototype._$4T=function(){return this._$eo},n.prototype._$mT=function(){return this._$V0},n.prototype.getDurationMSec=function(){return-1},n.prototype.getLoopDurationMSec=function(){return-1},n.prototype.updateParam=function(t,i){if(i._$AT&&!i._$9L){var e=I.getUserTimeMSec();if(i._$z2<0){i._$z2=e,i._$bs=e;var r=this.getDurationMSec();i._$Do<0&&(i._$Do=r<=0?-1:i._$z2+r)}var o=this._$V0;0<=(o=o*(0==this._$dP?1:at._$r2((e-i._$bs)/this._$dP))*(0==this._$eo||i._$Do<0?1:at._$r2((i._$Do-e)/this._$eo)))&&o<=1||console.log("### assert!! ### "),this.updateParamExe(t,e,o,i),i._$Do>0&&i._$Do0?console.log("\n"):e%8==0&&e>0&&console.log(" "),console.log("%02X ",255&t[e]);console.log("\n")},_._$nr=function(t,i,e){console.log("%s\n",t);for(var r=i.length,o=0;o=0;--r){this._$lL[r]._$oP(t,this)}this._$oo(t,e),this._$M2=this._$Yb(),this._$9b=(this._$M2-this._$ks)/e,this._$ks=this._$M2}for(r=this._$qP.length-1;r>=0;--r){this._$qP[r]._$YS(t,this)}this._$iT=i},u.prototype._$oo=function(t,i){i<.033&&(i=.033);var e=1/i;this.p1.vx=(this.p1.x-this.p1._$s0)*e,this.p1.vy=(this.p1.y-this.p1._$70)*e,this.p1.ax=(this.p1.vx-this.p1._$7L)*e,this.p1.ay=(this.p1.vy-this.p1._$HL)*e,this.p1.fx=this.p1.ax*this.p1._$p,this.p1.fy=this.p1.ay*this.p1._$p,this.p1._$xT();var r,o,s=-Math.atan2(this.p1.y-this.p2.y,this.p1.x-this.p2.x),n=Math.cos(s),_=Math.sin(s),a=9.8*this.p2._$p,h=this._$Db*vt._$bS,$=a*Math.cos(s-h);r=$*_,o=$*n;var l=-this.p1.fx*_*_,u=-this.p1.fy*_*n,p=-this.p2.vx*this._$L2,c=-this.p2.vy*this._$L2;this.p2.fx=r+l+p,this.p2.fy=o+u+c,this.p2.ax=this.p2.fx/this.p2._$p,this.p2.ay=this.p2.fy/this.p2._$p,this.p2.vx+=this.p2.ax*i,this.p2.vy+=this.p2.ay*i,this.p2.x+=this.p2.vx*i,this.p2.y+=this.p2.vy*i;var f=Math.sqrt((this.p1.x-this.p2.x)*(this.p1.x-this.p2.x)+(this.p1.y-this.p2.y)*(this.p1.y-this.p2.y));this.p2.x=this.p1.x+this._$Fo*(this.p2.x-this.p1.x)/f,this.p2.y=this.p1.y+this._$Fo*(this.p2.y-this.p1.y)/f,this.p2.vx=(this.p2.x-this.p2._$s0)*e,this.p2.vy=(this.p2.y-this.p2._$70)*e,this.p2._$xT()};function p(){this._$p=1,this.x=0,this.y=0,this.vx=0,this.vy=0,this.ax=0,this.ay=0,this.fx=0,this.fy=0,this._$s0=0,this._$70=0,this._$7L=0,this._$HL=0}p.prototype._$xT=function(){this._$s0=this.x,this._$70=this.y,this._$7L=this.vx,this._$HL=this.vy};function c(t,i,e){this._$wL=null,this.scale=null,this._$V0=null,this._$wL=t,this.scale=i,this._$V0=e}c.prototype._$oP=function(t,i){};function f(t,i,e,r){c.prototype.constructor.call(this,i,e,r),this._$tL=null,this._$tL=t}f.prototype=new c,f.prototype._$oP=function(t,i){var e=this.scale*t.getParamFloat(this._$wL),r=i.getPhysicsPoint1();switch(this._$tL){default:case u.Src.SRC_TO_X:r.x=r.x+(e-r.x)*this._$V0;break;case u.Src.SRC_TO_Y:r.y=r.y+(e-r.y)*this._$V0;break;case u.Src.SRC_TO_G_ANGLE:var o=i._$qr();o+=(e-o)*this._$V0,i._$pr(o)}};function g(t,i,e){this._$wL=null,this.scale=null,this._$V0=null,this._$wL=t,this.scale=i,this._$V0=e}g.prototype._$YS=function(t,i){};function y(t,i,e,r){g.prototype.constructor.call(this,i,e,r),this._$YP=null,this._$YP=t}y.prototype=new g,y.prototype._$YS=function(t,i){switch(this._$YP){default:case u.Target.TARGET_FROM_ANGLE:t.setParamFloat(this._$wL,this.scale*i._$5r(),this._$V0);break;case u.Target.TARGET_FROM_ANGLE_V:t.setParamFloat(this._$wL,this.scale*i._$Cs(),this._$V0)}},u.Src=function(){},u.Src.SRC_TO_X="SRC_TO_X",u.Src.SRC_TO_Y="SRC_TO_Y",u.Src.SRC_TO_G_ANGLE="SRC_TO_G_ANGLE",u.Target=function(){},u.Target.TARGET_FROM_ANGLE="TARGET_FROM_ANGLE",u.Target.TARGET_FROM_ANGLE_V="TARGET_FROM_ANGLE_V";function d(){e||(this._$fL=0,this._$gL=0,this._$B0=1,this._$z0=1,this._$qT=0,this.reflectX=!1,this.reflectY=!1)}d.prototype.init=function(t){this._$fL=t._$fL,this._$gL=t._$gL,this._$B0=t._$B0,this._$z0=t._$z0,this._$qT=t._$qT,this.reflectX=t.reflectX,this.reflectY=t.reflectY},d.prototype._$F0=function(t){this._$fL=t._$_T(),this._$gL=t._$_T(),this._$B0=t._$_T(),this._$z0=t._$_T(),this._$qT=t._$_T(),t.getFormatVersion()>=G.LIVE2D_FORMAT_VERSION_V2_10_SDK2&&(this.reflectX=t._$po(),this.reflectY=t._$po())},d.prototype._$e=function(){};var T=function(){};T._$ni=function(t,i,e,r,o,s,n,_,a){var h=n*s-_*o;if(0==h)return null;var $,l=((t-e)*s-(i-r)*o)/h;return $=0!=o?(t-e-l*n)/o:(i-r-l*_)/s,isNaN($)&&($=(t-e-l*n)/o,isNaN($)&&($=(i-r-l*_)/s),isNaN($)&&(console.log("a is NaN @UtVector#_$ni() "),console.log("v1x : "+o),console.log("v1x != 0 ? "+(0!=o)))),null==a?new Array($,l):(a[0]=$,a[1]=l,a)};function P(){e||(this.x=null,this.y=null,this.width=null,this.height=null)}P.prototype._$8P=function(){return this.x+.5*this.width},P.prototype._$6P=function(){return this.y+.5*this.height},P.prototype._$EL=function(){return this.x+this.width},P.prototype._$5T=function(){return this.y+this.height},P.prototype._$jL=function(t,i,e,r){this.x=t,this.y=i,this.width=e,this.height=r},P.prototype._$jL=function(t){this.x=t.x,this.y=t.y,this.width=t.width,this.height=t.height},P.prototype.contains=function(t,i){return this.x<=this.x&&this.y<=this.y&&this.x<=this.x+this.width&&this.y<=this.y+this.height},P.prototype.expand=function(t,i){this.x-=t,this.y-=i,this.width+=2*t,this.height+=2*i};function S(){}S._$Z2=function(t,i,e,r){var o=i._$Q2(t,e),s=t._$vs(),n=t._$Tr();if(i._$zr(s,n,o),o<=0)return r[s[0]];if(1==o){return(_=r[s[0]])+((a=r[s[1]])-_)*(l=n[0])|0}if(2==o){var _=r[s[0]],a=r[s[1]],h=r[s[2]],$=r[s[3]],l=n[0],u=n[1];return(S=_+(a-_)*l|0)+((h+($-h)*l|0)-S)*u|0}if(3==o){var p=r[s[0]],c=r[s[1]],f=r[s[2]],g=r[s[3]],y=r[s[4]],d=r[s[5]],m=r[s[6]],T=r[s[7]],P=(l=n[0],u=n[1],n[2]);return(S=(_=p+(c-p)*l|0)+((a=f+(g-f)*l|0)-_)*u|0)+(((h=y+(d-y)*l|0)+(($=m+(T-m)*l|0)-h)*u|0)-S)*P|0}if(4==o){var S,v=r[s[0]],L=r[s[1]],M=r[s[2]],E=r[s[3]],A=r[s[4]],I=r[s[5]],x=r[s[6]],w=r[s[7]],D=r[s[8]],O=r[s[9]],R=r[s[10]],b=r[s[11]],F=r[s[12]],C=r[s[13]],N=r[s[14]],B=r[s[15]],G=(l=n[0],u=n[1],P=n[2],n[3]);return(S=(_=(p=v+(L-v)*l|0)+((c=M+(E-M)*l|0)-p)*u|0)+((a=(f=A+(I-A)*l|0)+((g=x+(w-x)*l|0)-f)*u|0)-_)*P|0)+(((h=(y=D+(O-D)*l|0)+((d=R+(b-R)*l|0)-y)*u|0)+(($=(m=F+(C-F)*l|0)+((T=N+(B-N)*l|0)-m)*u|0)-h)*P|0)-S)*G|0}for(var U=1<=G._$T7?(this.clipID=t._$nP(),this.clipIDList=this.convertClipIDForV2_11(this.clipID)):this.clipIDList=[],this._$MS(this._$Lb)},L.prototype.getClipIDList=function(){return this.clipIDList},L.prototype.init=function(t){},L.prototype._$Nr=function(t,i){if(i._$IS[0]=!1,i._$Us=S._$Z2(t,this._$GS,i._$IS,this._$Lb),_t._$Zs);else if(i._$IS[0])return;i._$7s=S._$br(t,this._$GS,i._$IS,this._$mS)},L.prototype._$2b=function(t,i){},L.prototype.getDrawDataID=function(){return this._$gP},L.prototype._$j2=function(t){this._$gP=t},L.prototype.getOpacity=function(t,i){return i._$7s},L.prototype._$zS=function(t,i){return i._$Us},L.prototype._$MS=function(t){for(var i=t.length-1;i>=0;--i){var e=t[i];eL._$R2&&(L._$R2=e)}},L.prototype.getTargetBaseDataID=function(){return this._$dr},L.prototype._$gs=function(t){this._$dr=t},L.prototype._$32=function(){return null!=this._$dr&&this._$dr!=yt._$2o()},L.prototype.preDraw=function(t,i,e){},L.prototype.draw=function(t,i,e){},L.prototype.getType=function(){},L.prototype._$B2=function(t,i,e){};function M(){e||(this._$Eb=M._$ps,this._$lT=1,this._$C0=1,this._$tT=1,this._$WL=1,this.culling=!1,this.matrix4x4=new Float32Array(16),this.premultipliedAlpha=!1,this.anisotropy=0,this.clippingProcess=M.CLIPPING_PROCESS_NONE,this.clipBufPre_clipContextMask=null,this.clipBufPre_clipContextDraw=null,this.CHANNEL_COLORS=new Array)}M._$ps=32,M.CLIPPING_PROCESS_NONE=0,M.CLIPPING_PROCESS_OVERWRITE_ALPHA=1,M.CLIPPING_PROCESS_MULTIPLY_ALPHA=2,M.CLIPPING_PROCESS_DRAW=3,M.CLIPPING_PROCESS_CLEAR_ALPHA=4,M.prototype.setChannelFlagAsColor=function(t,i){this.CHANNEL_COLORS[t]=i},M.prototype.getChannelFlagAsColor=function(t){return this.CHANNEL_COLORS[t]},M.prototype._$ZT=function(){},M.prototype._$Uo=function(t,i,e,r,o,s,n){},M.prototype._$Rs=function(){return-1},M.prototype._$Ds=function(t){},M.prototype.setBaseColor=function(t,i,e,r){t<0?t=0:t>1&&(t=1),i<0?i=0:i>1&&(i=1),e<0?e=0:e>1&&(e=1),r<0?r=0:r>1&&(r=1),this._$lT=t,this._$C0=i,this._$tT=e,this._$WL=r},M.prototype._$WP=function(t){this.culling=t},M.prototype.setMatrix=function(t){for(var i=0;i<16;i++)this.matrix4x4[i]=t[i]},M.prototype._$IT=function(){return this.matrix4x4},M.prototype.setPremultipliedAlpha=function(t){this.premultipliedAlpha=t},M.prototype.isPremultipliedAlpha=function(){return this.premultipliedAlpha},M.prototype.setAnisotropy=function(t){this.anisotropy=t},M.prototype.getAnisotropy=function(){return this.anisotropy},M.prototype.getClippingProcess=function(){return this.clippingProcess},M.prototype.setClippingProcess=function(t){this.clippingProcess=t},M.prototype.setClipBufPre_clipContextForMask=function(t){this.clipBufPre_clipContextMask=t},M.prototype.getClipBufPre_clipContextMask=function(){return this.clipBufPre_clipContextMask},M.prototype.setClipBufPre_clipContextForDraw=function(t){this.clipBufPre_clipContextDraw=t},M.prototype.getClipBufPre_clipContextDraw=function(){return this.clipBufPre_clipContextDraw};function E(){e||(this.a=1,this.r=1,this.g=1,this.b=1,this.scale=1,this._$ho=1,this.blendMode=_t.L2D_COLOR_BLEND_MODE_MULT)}function A(){e||(this._$kP=null,this._$dr=null,this._$Ai=!0,this._$mS=null)}A._$ur=-2,A._$c2=1,A._$_b=2,A.prototype._$F0=function(t){this._$kP=t._$nP(),this._$dr=t._$nP()},A.prototype.readV2_opacity=function(t){t.getFormatVersion()>=G.LIVE2D_FORMAT_VERSION_V2_10_SDK2&&(this._$mS=t._$Tb())},A.prototype.init=function(t){},A.prototype._$Nr=function(t,i){},A.prototype.interpolateOpacity=function(t,i,e,r){null==this._$mS?e.setInterpolatedOpacity(1):e.setInterpolatedOpacity(S._$br(t,i,r,this._$mS))},A.prototype._$2b=function(t,i){},A.prototype._$nb=function(t,i,e,r,o,s,n){},A.prototype.getType=function(){},A.prototype._$gs=function(t){this._$dr=t},A.prototype._$a2=function(t){this._$kP=t},A.prototype.getTargetBaseDataID=function(){return this._$dr},A.prototype.getBaseDataID=function(){return this._$kP},A.prototype._$32=function(){return null!=this._$dr&&this._$dr!=yt._$2o()};function I(){}I._$W2=0,I._$CS=I._$W2,I._$Mo=function(){return!0},I._$XP=function(t){try{for(var i=getTimeMSec();getTimeMSec()-i=t.length)return!1;for(var o=i;o=0;--e){var r=this._$Ob[e].getParamIndex(i);if(r==x._$ds&&(r=t.getParamIndex(this._$Ob[e].getParamID())),t._$Xb(r))return!0}return!1},D.prototype._$Q2=function(t,i){for(var e,r,o=this._$Ob.length,s=t._$v2(),n=0,_=0;_B._$Qb&&console.log("err 23245\n");for(var o=this._$Ob.length,s=1,n=1,_=0,a=0;a=0;--s)e[s]=o[s]}else this.mult_fast(t,i,e,r)},O.prototype.mult_fast=function(t,i,e,r){r?(e[0]=t[0]*i[0]+t[4]*i[1]+t[8]*i[2],e[4]=t[0]*i[4]+t[4]*i[5]+t[8]*i[6],e[8]=t[0]*i[8]+t[4]*i[9]+t[8]*i[10],e[12]=t[0]*i[12]+t[4]*i[13]+t[8]*i[14]+t[12],e[1]=t[1]*i[0]+t[5]*i[1]+t[9]*i[2],e[5]=t[1]*i[4]+t[5]*i[5]+t[9]*i[6],e[9]=t[1]*i[8]+t[5]*i[9]+t[9]*i[10],e[13]=t[1]*i[12]+t[5]*i[13]+t[9]*i[14]+t[13],e[2]=t[2]*i[0]+t[6]*i[1]+t[10]*i[2],e[6]=t[2]*i[4]+t[6]*i[5]+t[10]*i[6],e[10]=t[2]*i[8]+t[6]*i[9]+t[10]*i[10],e[14]=t[2]*i[12]+t[6]*i[13]+t[10]*i[14]+t[14],e[3]=e[7]=e[11]=0,e[15]=1):(e[0]=t[0]*i[0]+t[4]*i[1]+t[8]*i[2]+t[12]*i[3],e[4]=t[0]*i[4]+t[4]*i[5]+t[8]*i[6]+t[12]*i[7],e[8]=t[0]*i[8]+t[4]*i[9]+t[8]*i[10]+t[12]*i[11],e[12]=t[0]*i[12]+t[4]*i[13]+t[8]*i[14]+t[12]*i[15],e[1]=t[1]*i[0]+t[5]*i[1]+t[9]*i[2]+t[13]*i[3],e[5]=t[1]*i[4]+t[5]*i[5]+t[9]*i[6]+t[13]*i[7],e[9]=t[1]*i[8]+t[5]*i[9]+t[9]*i[10]+t[13]*i[11],e[13]=t[1]*i[12]+t[5]*i[13]+t[9]*i[14]+t[13]*i[15],e[2]=t[2]*i[0]+t[6]*i[1]+t[10]*i[2]+t[14]*i[3],e[6]=t[2]*i[4]+t[6]*i[5]+t[10]*i[6]+t[14]*i[7],e[10]=t[2]*i[8]+t[6]*i[9]+t[10]*i[10]+t[14]*i[11],e[14]=t[2]*i[12]+t[6]*i[13]+t[10]*i[14]+t[14]*i[15],e[3]=t[3]*i[0]+t[7]*i[1]+t[11]*i[2]+t[15]*i[3],e[7]=t[3]*i[4]+t[7]*i[5]+t[11]*i[6]+t[15]*i[7],e[11]=t[3]*i[8]+t[7]*i[9]+t[11]*i[10]+t[15]*i[11],e[15]=t[3]*i[12]+t[7]*i[13]+t[11]*i[14]+t[15]*i[15])},O.prototype.translate=function(t,i,e){this.m[12]=this.m[0]*t+this.m[4]*i+this.m[8]*e+this.m[12],this.m[13]=this.m[1]*t+this.m[5]*i+this.m[9]*e+this.m[13],this.m[14]=this.m[2]*t+this.m[6]*i+this.m[10]*e+this.m[14],this.m[15]=this.m[3]*t+this.m[7]*i+this.m[11]*e+this.m[15]},O.prototype.scale=function(t,i,e){this.m[0]*=t,this.m[4]*=i,this.m[8]*=e,this.m[1]*=t,this.m[5]*=i,this.m[9]*=e,this.m[2]*=t,this.m[6]*=i,this.m[10]*=e,this.m[3]*=t,this.m[7]*=i,this.m[11]*=e},O.prototype.rotateX=function(t){var i=vt.fcos(t),e=vt._$9(t),r=this.m[4];this.m[4]=r*i+this.m[8]*e,this.m[8]=r*-e+this.m[8]*i,r=this.m[5],this.m[5]=r*i+this.m[9]*e,this.m[9]=r*-e+this.m[9]*i,r=this.m[6],this.m[6]=r*i+this.m[10]*e,this.m[10]=r*-e+this.m[10]*i,r=this.m[7],this.m[7]=r*i+this.m[11]*e,this.m[11]=r*-e+this.m[11]*i},O.prototype.rotateY=function(t){var i=vt.fcos(t),e=vt._$9(t),r=this.m[0];this.m[0]=r*i+this.m[8]*-e,this.m[8]=r*e+this.m[8]*i,r=this.m[1],this.m[1]=r*i+this.m[9]*-e,this.m[9]=r*e+this.m[9]*i,r=m[2],this.m[2]=r*i+this.m[10]*-e,this.m[10]=r*e+this.m[10]*i,r=m[3],this.m[3]=r*i+this.m[11]*-e,this.m[11]=r*e+this.m[11]*i},O.prototype.rotateZ=function(t){var i=vt.fcos(t),e=vt._$9(t),r=this.m[0];this.m[0]=r*i+this.m[4]*e,this.m[4]=r*-e+this.m[4]*i,r=this.m[1],this.m[1]=r*i+this.m[5]*e,this.m[5]=r*-e+this.m[5]*i,r=this.m[2],this.m[2]=r*i+this.m[6]*e,this.m[6]=r*-e+this.m[6]*i,r=this.m[3],this.m[3]=r*i+this.m[7]*e,this.m[7]=r*-e+this.m[7]*i};function R(t){e||et.prototype.constructor.call(this,t)}R.prototype=new et,R._$tP=new Object,R._$27=function(){R._$tP.clear()},R.getID=function(t){var i=R._$tP[t];return null==i&&(i=new R(t),R._$tP[t]=i),i},R.prototype._$3s=function(){return new R};function b(){e||(this._$7=1,this._$f=0,this._$H=0,this._$g=1,this._$k=0,this._$w=0,this._$hi=STATE_IDENTITY,this._$Z=_$pS)}b._$kS=-1,b._$pS=0,b._$hb=1,b.STATE_IDENTITY=0,b._$gb=1,b._$fo=2,b._$go=4,b.prototype.transform=function(t,i,e){var r,o,s,n,_,a,h=0,$=0;switch(this._$hi){default:return;case b._$go|b._$fo|b._$gb:for(r=this._$7,o=this._$H,s=this._$k,n=this._$f,_=this._$g,a=this._$w;--e>=0;){var l=t[h++],u=t[h++];i[$++]=r*l+o*u+s,i[$++]=n*l+_*u+a}return;case b._$go|b._$fo:for(r=this._$7,o=this._$H,n=this._$f,_=this._$g;--e>=0;){l=t[h++],u=t[h++];i[$++]=r*l+o*u,i[$++]=n*l+_*u}return;case b._$go|b._$gb:for(o=this._$H,s=this._$k,n=this._$f,a=this._$w;--e>=0;){l=t[h++];i[$++]=o*t[h++]+s,i[$++]=n*l+a}return;case b._$go:for(o=this._$H,n=this._$f;--e>=0;){l=t[h++];i[$++]=o*t[h++],i[$++]=n*l}return;case b._$fo|b._$gb:for(r=this._$7,s=this._$k,_=this._$g,a=this._$w;--e>=0;)i[$++]=r*t[h++]+s,i[$++]=_*t[h++]+a;return;case b._$fo:for(r=this._$7,_=this._$g;--e>=0;)i[$++]=r*t[h++],i[$++]=_*t[h++];return;case b._$gb:for(s=this._$k,a=this._$w;--e>=0;)i[$++]=t[h++]+s,i[$++]=t[h++]+a;return;case b.STATE_IDENTITY:return void(t==i&&h==$||I._$jT(t,h,i,$,2*e))}},b.prototype.update=function(){0==this._$H&&0==this._$f?1==this._$7&&1==this._$g?0==this._$k&&0==this._$w?(this._$hi=b.STATE_IDENTITY,this._$Z=b._$pS):(this._$hi=b._$gb,this._$Z=b._$hb):0==this._$k&&0==this._$w?(this._$hi=b._$fo,this._$Z=b._$kS):(this._$hi=b._$fo|b._$gb,this._$Z=b._$kS):0==this._$7&&0==this._$g?0==this._$k&&0==this._$w?(this._$hi=b._$go,this._$Z=b._$kS):(this._$hi=b._$go|b._$gb,this._$Z=b._$kS):0==this._$k&&0==this._$w?(this._$hi=b._$go|b._$fo,this._$Z=b._$kS):(this._$hi=b._$go|b._$fo|b._$gb,this._$Z=b._$kS)},b.prototype._$RT=function(t){this._$IT(t);var i=t[0],e=t[2],r=t[1],o=t[3],s=Math.sqrt(i*i+r*r),n=i*o-e*r;0==s?_t._$so&&console.log("affine._$RT() / rt==0"):(t[0]=s,t[1]=n/s,t[2]=(r*o+i*e)/n,t[3]=Math.atan2(r,i))},b.prototype._$ho=function(t,i,e,r){var o=new Float32Array(6),s=new Float32Array(6);t._$RT(o),i._$RT(s);var n=new Float32Array(6);n[0]=o[0]+(s[0]-o[0])*e,n[1]=o[1]+(s[1]-o[1])*e,n[2]=o[2]+(s[2]-o[2])*e,n[3]=o[3]+(s[3]-o[3])*e,n[4]=o[4]+(s[4]-o[4])*e,n[5]=o[5]+(s[5]-o[5])*e,r._$CT(n)},b.prototype._$CT=function(t){var i=Math.cos(t[3]),e=Math.sin(t[3]);this._$7=t[0]*i,this._$f=t[0]*e,this._$H=t[1]*(t[2]*i-e),this._$g=t[1]*(t[2]*e+i),this._$k=t[4],this._$w=t[5],this.update()},b.prototype._$IT=function(t){t[0]=this._$7,t[1]=this._$f,t[2]=this._$H,t[3]=this._$g,t[4]=this._$k,t[5]=this._$w};function F(){e||(n.prototype.constructor.call(this),this.motions=new Array,this._$7r=null,this._$7r=F._$Co++,this._$D0=30,this._$yT=0,this._$E=!0,this.loopFadeIn=!0,this._$AS=-1,_$a0())}F.prototype=new n,F._$cs="VISIBLE:",F._$ar="LAYOUT:",F._$Co=0,F._$D2=[],F._$1T=1,F.loadMotion=function(t){var i=new F,e=[0],r=t.length;i._$yT=0;for(var o=0;o=0){var n=new N;w.startsWith(t,h,F._$cs)?(n._$RP=N._$hs,n._$4P=new String(t,h,$-h)):w.startsWith(t,h,F._$ar)?(n._$4P=new String(t,h+7,$-h-7),w.startsWith(t,h+7,"ANCHOR_X")?n._$RP=N._$xs:w.startsWith(t,h+7,"ANCHOR_Y")?n._$RP=N._$us:w.startsWith(t,h+7,"SCALE_X")?n._$RP=N._$qs:w.startsWith(t,h+7,"SCALE_Y")?n._$RP=N._$Ys:w.startsWith(t,h+7,"X")?n._$RP=N._$ws:w.startsWith(t,h+7,"Y")&&(n._$RP=N._$Ns)):(n._$RP=N._$Fr,n._$4P=new String(t,h,$-h)),i.motions.push(n);var _=0;for(F._$D2.clear(),o=$+1;o0){F._$D2.push(u),_++;var a=e[0];if(ai._$yT&&(i._$yT=_)}}}else{for(var h=o,$=-1;o=0)for($==h+4&&"f"==t[h+1]&&"p"==t[h+2]&&"s"==t[h+3]&&(l=!0),o=$+1;o0&&l&&5=h?h-1:s];t.setParamFloat($,l)}else if(N._$ws<=a._$RP&&a._$RP<=N._$Ys);else{var u=t.getParamFloat($),p=a._$I0[s>=h?h-1:s],c=u+(p+(a._$I0[s+1>=h?h-1:s+1]-p)*n-u)*e;t.setParamFloat($,c)}}s>=this._$yT&&(this._$E?(r._$z2=i,this.loopFadeIn&&(r._$bs=i)):r._$9L=!0)},F.prototype._$r0=function(){return this._$E},F.prototype._$aL=function(t){this._$E=t},F.prototype.isLoopFadeIn=function(){return this.loopFadeIn},F.prototype.setLoopFadeIn=function(t){this.loopFadeIn=t};function C(){this._$P=new Float32Array(100),this.size=0}C.prototype.clear=function(){this.size=0},C.prototype.add=function(t){if(this._$P.length<=this.size){var i=new Float32Array(2*this.size);I._$jT(this._$P,0,i,0,this.size),this._$P=i}this._$P[this.size++]=t},C.prototype._$BL=function(){var t=new Float32Array(this.size);return I._$jT(this._$P,0,t,0,this.size),t};function N(){this._$4P=null,this._$I0=null,this._$RP=null}N._$Fr=0,N._$hs=1,N._$ws=100,N._$Ns=101,N._$xs=102,N._$us=103,N._$qs=104,N._$Ys=105;function B(){}B._$Ms=1,B._$Qs=2,B._$i2=0,B._$No=2,B._$do=B._$Ms,B._$Ls=!0,B._$1r=5,B._$Qb=65,B._$J=1e-4,B._$FT=.001,B._$Ss=3;function G(){}G._$o7=6,G._$S7=7,G._$s7=8,G._$77=9,G.LIVE2D_FORMAT_VERSION_V2_10_SDK2=10,G.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1=11,G._$T7=G.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1,G._$Is=-2004318072,G._$h0=0,G._$4L=23,G._$7P=33,G._$uT=function(t){console.log("_$bo :: _$6 _$mo _$E0 : %d\n",t)},G._$9o=function(t){if(t<40)return G._$uT(t),null;if(t<50)return G._$uT(t),null;if(t<60)return G._$uT(t),null;if(t<100)switch(t){case 65:return new Z;case 66:return new D;case 67:return new x;case 68:return new z;case 69:return new d;case 70:return new $t;default:return G._$uT(t),null}else if(t<150)switch(t){case 131:return new st;case 133:return new tt;case 136:return new l;case 137:return new rt;case 142:return new j}return G._$uT(t),null};function U(t){e||(this._$QT=!0,this._$co=-1,this._$qo=0,this._$pb=new Array(U._$is),this._$_2=new Float32Array(U._$is),this._$vr=new Float32Array(U._$is),this._$Rr=new Float32Array(U._$is),this._$Or=new Float32Array(U._$is),this._$fs=new Float32Array(U._$is),this._$Js=new Array(U._$is),this._$3S=new Array,this._$aS=new Array,this._$Bo=null,this._$F2=new Array,this._$db=new Array,this._$8b=new Array,this._$Hr=new Array,this._$Ws=null,this._$Vs=null,this._$Er=null,this._$Es=new Int16Array(B._$Qb),this._$ZP=new Float32Array(2*B._$1r),this._$Ri=t,this._$b0=U._$HP++,this.clipManager=null,this.dp_webgl=null)}U._$HP=0,U._$_0=!0,U._$V2=-1,U._$W0=-1,U._$jr=!1,U._$ZS=!0,U._$tr=-1e6,U._$lr=1e6,U._$is=32,U._$e=!1,U.prototype.getDrawDataIndex=function(t){for(var i=this._$aS.length-1;i>=0;--i)if(null!=this._$aS[i]&&this._$aS[i].getDrawDataID()==t)return i;return-1},U.prototype.getDrawData=function(t){if(t instanceof R){if(null==this._$Bo){this._$Bo=new Object;for(var i=this._$aS.length,e=0;e0&&this.release();for(var t=this._$Ri.getModelImpl(),i=t._$Xr(),e=i.length,r=new Array,s=new Array,n=0;n=0)&&(this._$3S.push(m),this._$db.push(s[n]),r[n]=null,d=!0)}}if(!d)break}var P=t._$E2();if(null!=P){var S=P._$1s();if(null!=S){var v=S.length;for(n=0;n=0;i--)this._$Js[i]=U._$jr;return this._$QT=!1,U._$e&&_.dump("_$eL"),!1},U.prototype.preDraw=function(t){null!=this.clipManager&&(t._$ZT(),this.clipManager.setupClip(this,t))},U.prototype.draw=function(t){if(null!=this._$Ws){var i=this._$Ws.length;t._$ZT();for(var e=0;e=0;--i)if(this._$pb[i]==t)return i;return this._$02(t,0,U._$tr,U._$lr)},U.prototype._$BS=function(t){return this.getBaseDataIndex(t)},U.prototype.getBaseDataIndex=function(t){for(var i=this._$3S.length-1;i>=0;--i)if(null!=this._$3S[i]&&this._$3S[i].getBaseDataID()==t)return i;return-1},U.prototype._$UT=function(t,i){var e=new Float32Array(i);return I._$jT(t,0,e,0,t.length),e},U.prototype._$02=function(t,i,e,r){if(this._$qo>=this._$pb.length){var o=this._$pb.length,s=new Array(2*o);I._$jT(this._$pb,0,s,0,o),this._$pb=s,this._$_2=this._$UT(this._$_2,2*o),this._$vr=this._$UT(this._$vr,2*o),this._$Rr=this._$UT(this._$Rr,2*o),this._$Or=this._$UT(this._$Or,2*o);var n=new Array;I._$jT(this._$Js,0,n,0,o),this._$Js=n}return this._$pb[this._$qo]=t,this._$_2[this._$qo]=i,this._$vr[this._$qo]=i,this._$Rr[this._$qo]=e,this._$Or[this._$qo]=r,this._$Js[this._$qo]=U._$ZS,this._$qo++},U.prototype._$Zo=function(t,i){this._$3S[t]=i},U.prototype.setParamFloat=function(t,i){ithis._$Or[t]&&(i=this._$Or[t]),this._$_2[t]=i},U.prototype.loadParam=function(){var t=this._$_2.length;t>this._$fs.length&&(t=this._$fs.length),I._$jT(this._$fs,0,this._$_2,0,t)},U.prototype.saveParam=function(){var t=this._$_2.length;t>this._$fs.length&&(this._$fs=new Float32Array(t)),I._$jT(this._$_2,0,this._$fs,0,t)},U.prototype._$v2=function(){return this._$co},U.prototype._$WS=function(){return this._$QT},U.prototype._$Xb=function(t){return this._$Js[t]==U._$ZS},U.prototype._$vs=function(){return this._$Es},U.prototype._$Tr=function(){return this._$ZP},U.prototype.getBaseData=function(t){return this._$3S[t]},U.prototype.getParamFloat=function(t){return this._$_2[t]},U.prototype.getParamMax=function(t){return this._$Or[t]},U.prototype.getParamMin=function(t){return this._$Rr[t]},U.prototype.setPartsOpacity=function(t,i){this._$Hr[t].setPartsOpacity(i)},U.prototype.getPartsOpacity=function(t){return this._$Hr[t].getPartsOpacity()},U.prototype.getPartsDataIndex=function(t){for(var i=this._$F2.length-1;i>=0;--i)if(null!=this._$F2[i]&&this._$F2[i]._$p2()==t)return i;return-1},U.prototype._$q2=function(t){return this._$db[t]},U.prototype._$C2=function(t){return this._$8b[t]},U.prototype._$Bb=function(t){return this._$Hr[t]},U.prototype._$5s=function(t,i){for(var e=this._$Ws.length,r=t,o=0;o0;)s+=i;return r},Y._$C=function(t){var i=null,e=null;try{i=t instanceof Array?t:new _$Xs(t,8192),e=new _$js;for(var r,o=new Int8Array(1e3);(r=i.read(o))>0;)e.write(o,0,r);return e._$TS()}finally{null!=t&&t.close(),null!=e&&(e.flush(),e.close())}};function k(){e||(this._$12=null,this._$bb=null,this._$_L=null,this._$jo=null,this._$iL=null,this._$0L=null,this._$Br=null,this._$Dr=null,this._$Cb=null,this._$mr=null,this._$_L=V.STATE_FIRST,this._$Br=4e3,this._$Dr=100,this._$Cb=50,this._$mr=150,this._$jo=!0,this._$iL="PARAM_EYE_L_OPEN",this._$0L="PARAM_EYE_R_OPEN")}k.prototype._$T2=function(){return I.getUserTimeMSec()+Math._$10()*(2*this._$Br-1)},k.prototype._$uo=function(t){this._$Br=t},k.prototype._$QS=function(t,i,e){this._$Dr=t,this._$Cb=i,this._$mr=e},k.prototype._$7T=function(t){var i,e=I.getUserTimeMSec(),r=0;switch(this._$_L){case STATE_CLOSING:(r=(e-this._$bb)/this._$Dr)>=1&&(r=1,this._$_L=V.STATE_CLOSED,this._$bb=e),i=1-r;break;case STATE_CLOSED:(r=(e-this._$bb)/this._$Cb)>=1&&(this._$_L=V.STATE_OPENING,this._$bb=e),i=0;break;case STATE_OPENING:(r=(e-this._$bb)/this._$mr)>=1&&(r=1,this._$_L=V.STATE_INTERVAL,this._$12=this._$T2()),i=r;break;case STATE_INTERVAL:this._$12.9?_t.EXPAND_W:0;this.gl.drawElements(a,e,r,o,s,h,this.transform,_)}},X.prototype._$Rs=function(){throw new Error("_$Rs")},X.prototype._$Ds=function(t){throw new Error("_$Ds")},X.prototype._$K2=function(){for(var t=0;t=0;--i){var e=t[i];eW._$R2&&(W._$R2=e)}},W._$or=function(){return W._$52},W._$Pr=function(){return W._$R2},W.prototype._$F0=function(t){this._$gP=t._$nP(),this._$dr=t._$nP(),this._$GS=t._$nP(),this._$qb=t._$6L(),this._$Lb=t._$cS(),this._$mS=t._$Tb(),t.getFormatVersion()>=G._$T7?(this.clipID=t._$nP(),this.clipIDList=this.convertClipIDForV2_11(this.clipID)):this.clipIDList=null,W._$Sb(this._$Lb)},W.prototype.getClipIDList=function(){return this.clipIDList},W.prototype._$Nr=function(t,i){if(i._$IS[0]=!1,i._$Us=S._$Z2(t,this._$GS,i._$IS,this._$Lb),_t._$Zs);else if(i._$IS[0])return;i._$7s=S._$br(t,this._$GS,i._$IS,this._$mS)},W.prototype._$2b=function(t){},W.prototype.getDrawDataID=function(){return this._$gP},W.prototype._$j2=function(t){this._$gP=t},W.prototype.getOpacity=function(t,i){return i._$7s},W.prototype._$zS=function(t,i){return i._$Us},W.prototype.getTargetBaseDataID=function(){return this._$dr},W.prototype._$gs=function(t){this._$dr=t},W.prototype._$32=function(){return null!=this._$dr&&this._$dr!=yt._$2o()},W.prototype.getType=function(){};function j(){e||(this._$NL=null,this._$3S=null,this._$aS=null,j._$42++)}j._$42=0,j.prototype._$1b=function(){return this._$3S},j.prototype.getDrawDataList=function(){return this._$aS},j.prototype._$F0=function(t){this._$NL=t._$nP(),this._$aS=t._$nP(),this._$3S=t._$nP()},j.prototype._$kr=function(t){t._$Zo(this._$3S),t._$xo(this._$aS),this._$3S=null,this._$aS=null};function q(){e||(r.prototype.constructor.call(this),this._$zo=new X)}q.prototype=new r,q.loadModel=function(t){var i=new q;return r._$62(i,t),i},q.loadModel=function(t){var i=new q;return r._$62(i,t),i},q._$to=function(){return new q},q._$er=function(t){var i=new _$5("../_$_r/_$t0/_$Ri/_$_P._$d");if(0==i.exists())throw new _$ls("_$t0 _$_ _$6 _$Ui :: "+i._$PL());for(var e=["../_$_r/_$t0/_$Ri/_$_P.512/_$CP._$1","../_$_r/_$t0/_$Ri/_$_P.512/_$vP._$1","../_$_r/_$t0/_$Ri/_$_P.512/_$EP._$1","../_$_r/_$t0/_$Ri/_$_P.512/_$pP._$1"],r=q.loadModel(i._$3b()),o=0;o=0){var _=new N;w.startsWith(t,l,J._$cs)?(_._$RP=N._$hs,_._$4P=w.createString(t,l,u-l)):w.startsWith(t,l,J._$ar)?(_._$4P=w.createString(t,l+7,u-l-7),w.startsWith(t,l+7,"ANCHOR_X")?_._$RP=N._$xs:w.startsWith(t,l+7,"ANCHOR_Y")?_._$RP=N._$us:w.startsWith(t,l+7,"SCALE_X")?_._$RP=N._$qs:w.startsWith(t,l+7,"SCALE_Y")?_._$RP=N._$Ys:w.startsWith(t,l+7,"X")?_._$RP=N._$ws:w.startsWith(t,l+7,"Y")&&(_._$RP=N._$Ns)):(_._$RP=N._$Fr,_._$4P=w.createString(t,l,u-l)),i.motions.push(_);var a=0,h=[];for(o=u+1;o0){h.push(c),a++;var $=e[0];if($i._$yT&&(i._$yT=a)}}}else{for(var l=o,u=-1;o=0)for(u==l+4&&"f"==Q(t,l+1)&&"p"==Q(t,l+2)&&"s"==Q(t,l+3)&&(p=!0),o=u+1;o0&&p&&5=h?h-1:s];t.setParamFloat($,l)}else if(N._$ws<=a._$RP&&a._$RP<=N._$Ys);else{var u=t.getParamIndex($),p=t.getModelContext(),c=.4*(p.getParamMax(u)-p.getParamMin(u)),f=p.getParamFloat(u),g=a._$I0[s>=h?h-1:s],y=a._$I0[s+1>=h?h-1:s+1],d=f+((gc||g>y&&g-y>c?g:g+(y-g)*n)-f)*e;t.setParamFloat($,d)}}s>=this._$yT&&(this._$E?(r._$z2=i,this.loopFadeIn&&(r._$bs=i)):r._$9L=!0),this._$eP=e},J.prototype._$r0=function(){return this._$E},J.prototype._$aL=function(t){this._$E=t},J.prototype._$S0=function(){return this._$D0},J.prototype._$U0=function(t){this._$D0=t},J.prototype.isLoopFadeIn=function(){return this.loopFadeIn},J.prototype.setLoopFadeIn=function(t){this.loopFadeIn=t};function C(){this._$P=new Float32Array(100),this.size=0}C.prototype.clear=function(){this.size=0},C.prototype.add=function(t){if(this._$P.length<=this.size){var i=new Float32Array(2*this.size);I._$jT(this._$P,0,i,0,this.size),this._$P=i}this._$P[this.size++]=t},C.prototype._$BL=function(){var t=new Float32Array(this.size);return I._$jT(this._$P,0,t,0,this.size),t};function N(){this._$4P=null,this._$I0=null,this._$RP=null}N._$Fr=0,N._$hs=1,N._$ws=100,N._$Ns=101,N._$xs=102,N._$us=103,N._$qs=104,N._$Ys=105;function Z(){e||(A.prototype.constructor.call(this),this._$o=0,this._$A=0,this._$GS=null,this._$Eo=null)}Z.prototype=new A,Z._$gT=new Array,Z.prototype._$zP=function(){this._$GS=new D,this._$GS._$zP()},Z.prototype._$F0=function(t){A.prototype._$F0.call(this,t),this._$A=t._$6L(),this._$o=t._$6L(),this._$GS=t._$nP(),this._$Eo=t._$nP(),A.prototype.readV2_opacity.call(this,t)},Z.prototype.init=function(t){var i=new K(this),e=(this._$o+1)*(this._$A+1);return null!=i._$Cr&&(i._$Cr=null),i._$Cr=new Float32Array(2*e),null!=i._$hr&&(i._$hr=null),this._$32()?i._$hr=new Float32Array(2*e):i._$hr=null,i},Z.prototype._$Nr=function(t,i){var e=i;if(this._$GS._$Ur(t)){var r=this._$VT(),o=Z._$gT;o[0]=!1,S._$Vr(t,this._$GS,o,r,this._$Eo,e._$Cr,0,2),i._$Ib(o[0]),this.interpolateOpacity(t,this._$GS,i,o)}},Z.prototype._$2b=function(t,i){var e=i;if(e._$hS(!0),this._$32()){var r=this.getTargetBaseDataID();if(e._$8r==A._$ur&&(e._$8r=t.getBaseDataIndex(r)),e._$8r<0)_t._$so&&_._$li("_$L _$0P _$G :: %s",r),e._$hS(!1);else{var o=t.getBaseData(e._$8r),s=t._$q2(e._$8r);if(null!=o&&s._$yo()){var n=s.getTotalScale();e.setTotalScale_notForClient(n);var a=s.getTotalOpacity();e.setTotalOpacity(a*e.getInterpolatedOpacity()),o._$nb(t,s,e._$Cr,e._$hr,this._$VT(),0,2),e._$hS(!0)}else e._$hS(!1)}}else e.setTotalOpacity(e.getInterpolatedOpacity())},Z.prototype._$nb=function(t,i,e,r,o,s,n){var _=i,a=null!=_._$hr?_._$hr:_._$Cr;Z.transformPoints_sdk2(e,r,o,s,n,a,this._$o,this._$A)},Z.transformPoints_sdk2=function(i,e,r,o,s,n,_,a){for(var h,$,l,u=r*s,p=0,c=0,f=0,g=0,y=0,d=0,m=!1,T=o;T=1){b=n[2*(0+a*M)],F=n[2*(0+a*M)+1],C=p-2*f+1*y,N=c-2*g+1*d,w=p+3*y,D=c+3*d,O=p-2*f+3*y,R=c-2*g+3*d;(B=.5*(v- -2))+(G=.5*(L-1))<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else{(k=0|S)==a&&(k=a-1);var B=.5*(v- -2),G=S-k,U=k/a,Y=(k+1)/a;b=n[2*(0+k*M)],F=n[2*(0+k*M)+1],w=n[2*(0+(k+1)*M)],D=n[2*(0+(k+1)*M)+1],C=p-2*f+U*y,N=c-2*g+U*d,O=p-2*f+Y*y,R=c-2*g+Y*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(1<=v)if(L<=0){O=n[2*(_+0*M)],R=n[2*(_+0*M)+1],w=p+3*f,D=c+3*g,C=p+1*f-2*y,N=c+1*g-2*d,b=p+3*f-2*y,F=c+3*g-2*d;(B=.5*(v-1))+(G=.5*(L- -2))<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(L>=1){C=n[2*(_+a*M)],N=n[2*(_+a*M)+1],b=p+3*f+1*y,F=c+3*g+1*d,O=p+1*f+3*y,R=c+1*g+3*d,w=p+3*f+3*y,D=c+3*g+3*d;(B=.5*(v-1))+(G=.5*(L-1))<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else{var k;(k=0|S)==a&&(k=a-1);B=.5*(v-1),G=S-k,U=k/a,Y=(k+1)/a,C=n[2*(_+k*M)],N=n[2*(_+k*M)+1],O=n[2*(_+(k+1)*M)],R=n[2*(_+(k+1)*M)+1],b=p+3*f+U*y,F=c+3*g+U*d,w=p+3*f+Y*y,D=c+3*g+Y*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(L<=0){(z=0|P)==_&&(z=_-1);B=P-z,G=.5*(L- -2);var V=z/_,X=(z+1)/_;O=n[2*(z+0*M)],R=n[2*(z+0*M)+1],w=n[2*(z+1+0*M)],D=n[2*(z+1+0*M)+1],C=p+V*f-2*y,N=c+V*g-2*d,b=p+X*f-2*y,F=c+X*g-2*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else if(L>=1){var z;(z=0|P)==_&&(z=_-1);B=P-z,G=.5*(L-1),V=z/_,X=(z+1)/_,C=n[2*(z+a*M)],N=n[2*(z+a*M)+1],b=n[2*(z+1+a*M)],F=n[2*(z+1+a*M)+1],O=p+V*f+3*y,R=c+V*g+3*d,w=p+X*f+3*y,D=c+X*g+3*d;B+G<=1?(e[T]=C+(b-C)*B+(O-C)*G,e[T+1]=N+(F-N)*B+(R-N)*G):(e[T]=w+(O-w)*(1-B)+(b-w)*(1-G),e[T+1]=D+(R-D)*(1-B)+(F-D)*(1-G))}else t.err.printf("_$li calc : %.4f , %.4f @@BDBoxGrid\n",v,L);else e[T]=p+v*f+L*y,e[T+1]=c+v*g+L*d}else h=2*((0|P)+(0|S)*(_+1)),($=P-(0|P))+(l=S-(0|S))<1?(e[T]=n[h]*(1-$-l)+n[h+2]*$+n[h+2*(_+1)]*l,e[T+1]=n[h+1]*(1-$-l)+n[h+3]*$+n[h+2*(_+1)+1]*l):(e[T]=n[h+2*(_+1)+2]*($-1+l)+n[h+2*(_+1)]*(1-$)+n[h+2]*(1-l),e[T+1]=n[h+2*(_+1)+3]*($-1+l)+n[h+2*(_+1)+1]*(1-$)+n[h+3]*(1-l))}},Z.prototype.transformPoints_sdk1=function(t,i,e,r,o,s,n){for(var _,a,h,$,l,u,p,c=i,f=this._$o,g=this._$A,y=o*n,d=null!=c._$hr?c._$hr:c._$Cr,m=s;m1&&(_=1),a<0?a=0:a>1&&(a=1),$=0|(a*=g),(h=0|(_*=f))>f-1&&(h=f-1),$>g-1&&($=g-1),u=_-h,p=a-$,l=2*(h+$*(f+1))):(u=(_=e[m]*f)-(0|_),p=(a=e[m+1]*g)-(0|a),l=2*((0|_)+(0|a)*(f+1))),u+p<1?(r[m]=d[l]*(1-u-p)+d[l+2]*u+d[l+2*(f+1)]*p,r[m+1]=d[l+1]*(1-u-p)+d[l+3]*u+d[l+2*(f+1)+1]*p):(r[m]=d[l+2*(f+1)+2]*(u-1+p)+d[l+2*(f+1)]*(1-u)+d[l+2]*(1-p),r[m+1]=d[l+2*(f+1)+3]*(u-1+p)+d[l+2*(f+1)+1]*(1-u)+d[l+3]*(1-p))},Z.prototype._$VT=function(){return(this._$o+1)*(this._$A+1)},Z.prototype.getType=function(){return A._$_b};function K(t){nt.prototype.constructor.call(this,t),this._$8r=A._$ur,this._$Cr=null,this._$hr=null}K.prototype=new nt;function tt(){e||(this.visible=!0,this._$g0=!1,this._$NL=null,this._$3S=null,this._$aS=null,tt._$42++)}tt._$42=0,tt.prototype._$zP=function(){this._$3S=new Array,this._$aS=new Array},tt.prototype._$F0=function(t){this._$g0=t._$8L(),this.visible=t._$8L(),this._$NL=t._$nP(),this._$3S=t._$nP(),this._$aS=t._$nP()},tt.prototype.init=function(t){var i=new it(this);return i.setPartsOpacity(this.isVisible()?1:0),i},tt.prototype._$6o=function(t){if(null==this._$3S)throw new Error("_$3S _$6 _$Wo@_$6o");this._$3S.push(t)},tt.prototype._$3o=function(t){if(null==this._$aS)throw new Error("_$aS _$6 _$Wo@_$3o");this._$aS.push(t)},tt.prototype._$Zo=function(t){this._$3S=t},tt.prototype._$xo=function(t){this._$aS=t},tt.prototype.isVisible=function(){return this.visible},tt.prototype._$uL=function(){return this._$g0},tt.prototype._$KP=function(t){this.visible=t},tt.prototype._$ET=function(t){this._$g0=t},tt.prototype.getBaseData=function(){return this._$3S},tt.prototype.getDrawData=function(){return this._$aS},tt.prototype._$p2=function(){return this._$NL},tt.prototype._$ob=function(t){this._$NL=t},tt.prototype.getPartsID=function(){return this._$NL},tt.prototype._$MP=function(t){this._$NL=t};function it(t){this._$VS=null,this._$e0=null,this._$e0=t}it.prototype=new function(){},it.prototype.getPartsOpacity=function(){return this._$VS},it.prototype.setPartsOpacity=function(t){this._$VS=t};function et(t){e||(this.id=t)}et._$L7=function(){$._$27(),yt._$27(),R._$27(),h._$27()},et.prototype.toString=function(){return this.id};function rt(){e||(this._$4S=null)}rt.prototype._$1s=function(){return this._$4S},rt.prototype._$zP=function(){this._$4S=new Array},rt.prototype._$F0=function(t){this._$4S=t._$nP()},rt.prototype._$Ks=function(t){this._$4S.push(t)};function ot(t,i){this.canvas=t,this.context=i,this.viewport=new Array(0,0,t.width,t.height),this._$6r=1,this._$xP=0,this._$3r=1,this._$uP=0,this._$Qo=-1,this.cacheImages={}}ot.tr=new gt,ot._$50=new gt,ot._$Ti=new Array(0,0),ot._$Pi=new Array(0,0),ot._$B=new Array(0,0),ot.prototype._$lP=function(t,i,e,r){this.viewport=new Array(t,i,e,r)},ot.prototype._$bL=function(){this.context.save();var t=this.viewport;null!=t&&(this.context.beginPath(),this.context._$Li(t[0],t[1],t[2],t[3]),this.context.clip())},ot.prototype._$ei=function(){this.context.restore()},ot.prototype.drawElements=function(t,i,e,r,o,s,n,a){try{o!=this._$Qo&&(this._$Qo=o,this.context.globalAlpha=o);for(var h=i.length,$=t.width,l=t.height,u=this.context,p=this._$xP,c=this._$uP,f=this._$6r,g=this._$3r,y=ot.tr,d=ot._$Ti,m=ot._$Pi,P=ot._$B,S=0;S.02?ot.expandClip(t,i,e,r,$,l,u,p,c,f):ot.clipWithTransform(t,null,o,s,n,_,a,h)},ot.expandClip=function(t,i,e,r,o,s,n,_,a,h){var $=n-o,l=_-s,u=a-o,p=h-s,c=$*p-l*u>0?e:-e,f=-l,g=$,y=a-n,d=h-_,m=-d,T=y,P=Math.sqrt(y*y+d*d),S=-p,v=u,L=Math.sqrt(u*u+p*p),M=o-c*f/r,E=s-c*g/r,A=n-c*f/r,I=_-c*g/r,x=n-c*m/P,w=_-c*T/P,D=a-c*m/P,O=h-c*T/P,R=o+c*S/L,b=s+c*v/L,F=a+c*S/L,C=h+c*v/L,N=ot._$50;return null!=i._$P2(N)&&(ot.clipWithTransform(t,N,M,E,A,I,x,w,D,O,F,C,R,b),!0)},ot.clipWithTransform=function(t,i,e,r,o,s,n,a){if(arguments.length<7)_._$li("err : @LDGL.clip()");else if(arguments[1]instanceof gt){var h=ot._$B,$=i,l=arguments;if(t.beginPath(),$){$._$PS(l[2],l[3],h),t.moveTo(h[0],h[1]);for(var u=4;u1?1:.5-.5*Math.cos(t*vt.PI_F)};function ht(t){e||(this._$ib=t)}ht._$fr=-1,ht.prototype.toString=function(){return this._$ib};function $t(){e||(W.prototype.constructor.call(this),this._$LP=-1,this._$d0=0,this._$Yo=0,this._$JP=null,this._$5P=null,this._$BP=null,this._$Eo=null,this._$Qi=null,this._$6s=$t._$ms,this.culling=!0,this.gl_cacheImage=null,this.instanceNo=$t._$42++)}$t.prototype=new W,$t._$42=0,$t._$Os=30,$t._$ms=0,$t._$ns=1,$t._$_s=2,$t._$gT=new Array,$t.prototype._$_S=function(t){this._$LP=t},$t.prototype.getTextureNo=function(){return this._$LP},$t.prototype._$ZL=function(){return this._$Qi},$t.prototype._$H2=function(){return this._$JP},$t.prototype.getNumPoints=function(){return this._$d0},$t.prototype.getType=function(){return W._$wb},$t.prototype._$B2=function(t,i,e){var r=i,o=null!=r._$hr?r._$hr:r._$Cr;switch(B._$do){default:case B._$Ms:throw new Error("_$L _$ro ");case B._$Qs:for(var s=this._$d0-1;s>=0;--s){o[s*B._$No+4]=e}}},$t.prototype._$zP=function(){this._$GS=new D,this._$GS._$zP()},$t.prototype._$F0=function(t){W.prototype._$F0.call(this,t),this._$LP=t._$6L(),this._$d0=t._$6L(),this._$Yo=t._$6L();var i=t._$nP();this._$BP=new Int16Array(3*this._$Yo);for(var e=3*this._$Yo-1;e>=0;--e)this._$BP[e]=i[e];if(this._$Eo=t._$nP(),this._$Qi=t._$nP(),t.getFormatVersion()>=G._$s7){if(this._$JP=t._$6L(),0!=this._$JP){if(0!=(1&this._$JP)){var r=t._$6L();null==this._$5P&&(this._$5P=new Object),this._$5P._$Hb=parseInt(r)}0!=(this._$JP&$t._$Os)?this._$6s=(this._$JP&$t._$Os)>>1:this._$6s=$t._$ms,0!=(32&this._$JP)&&(this.culling=!1)}}else this._$JP=0},$t.prototype.init=function(t){var i=new lt(this),e=this._$d0*B._$No,r=this._$32();null!=i._$Cr&&(i._$Cr=null),i._$Cr=new Float32Array(e),null!=i._$hr&&(i._$hr=null),i._$hr=r?new Float32Array(e):null;switch(B._$do){default:case B._$Ms:if(B._$Ls)for(var o=this._$d0-1;o>=0;--o){var s=o<<1;this._$Qi[s+1]=1-this._$Qi[s+1]}break;case B._$Qs:for(o=this._$d0-1;o>=0;--o){s=o<<1;var n=o*B._$No,_=this._$Qi[s],a=this._$Qi[s+1];i._$Cr[n]=_,i._$Cr[n+1]=a,i._$Cr[n+4]=0,r&&(i._$hr[n]=_,i._$hr[n+1]=a,i._$hr[n+4]=0)}}return i},$t.prototype._$Nr=function(t,i){var e=i;if(this!=e._$GT()&&console.log("### assert!! ### "),this._$GS._$Ur(t)&&(W.prototype._$Nr.call(this,t,e),!e._$IS[0])){var r=$t._$gT;r[0]=!1,S._$Vr(t,this._$GS,r,this._$d0,this._$Eo,e._$Cr,B._$i2,B._$No)}},$t.prototype._$2b=function(t,i){try{this!=i._$GT()&&console.log("### assert!! ### ");var e=!1;i._$IS[0]&&(e=!0);var r=i;if(!e&&(W.prototype._$2b.call(this,t),this._$32())){var o=this.getTargetBaseDataID();if(r._$8r==W._$ur&&(r._$8r=t.getBaseDataIndex(o)),r._$8r<0)_t._$so&&_._$li("_$L _$0P _$G :: %s",o);else{var s=t.getBaseData(r._$8r),n=t._$q2(r._$8r);null==s||n._$x2()?r._$AT=!1:(s._$nb(t,n,r._$Cr,r._$hr,this._$d0,B._$i2,B._$No),r._$AT=!0),r.baseOpacity=n.getTotalOpacity()}}}catch(t){throw t}},$t.prototype.draw=function(t,i,e){if(this!=e._$GT()&&console.log("### assert!! ### "),!e._$IS[0]){var r=e,o=this._$LP;o<0&&(o=1);var s=this.getOpacity(i,r)*e._$VS*e.baseOpacity,n=null!=r._$hr?r._$hr:r._$Cr;t.setClipBufPre_clipContextForDraw(e.clipBufPre_clipContext),t._$WP(this.culling),t._$Uo(o,3*this._$Yo,this._$BP,n,this._$Qi,s,this._$6s,r)}},$t.prototype.dump=function(){console.log(" _$yi( %d ) , _$d0( %d ) , _$Yo( %d ) \n",this._$LP,this._$d0,this._$Yo),console.log(" _$Oi _$di = { ");for(var t=0;tstartMotion() / start _$K _$3 (m%d)\n",r,e._$sr));if(null==t)return-1;(e=new ft)._$w0=t,this.motions.push(e);var s=e._$sr;return this._$eb&&_._$Ji("MotionQueueManager[size:%2d]->startMotion() / new _$w0 (m%d)\n",r,s),s},ct.prototype.updateParam=function(t){try{for(var i=!1,e=0;eupdateParam() / _$T0 _$w0 (m%d)\n",this.motions.length-1,r._$sr),this.motions.splice(e,1),e--)):(this.motions=this.motions.splice(e,1),e--)}else this.motions.splice(e,1),e--}return i}catch(t){return _._$li(t),!0}},ct.prototype.isFinished=function(t){if(arguments.length>=1){for(var i=0;i.9&&_t.EXPAND_W;var a=this.gl;if(null==this.gl)throw new Error("gl is null");var h=1*this._$C0*s,$=1*this._$tT*s,l=1*this._$WL*s,u=this._$lT*s;if(null!=this.clipBufPre_clipContextMask){a.frontFace(a.CCW),a.useProgram(this.shaderProgram),this._$vS=mt(a,this._$vS,r),this._$no=Tt(a,this._$no,e),a.enableVertexAttribArray(this.a_position_Loc),a.vertexAttribPointer(this.a_position_Loc,2,a.FLOAT,!1,0,0),this._$NT=mt(a,this._$NT,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,this.textures[t]),a.uniform1i(this.s_texture0_Loc,1),a.enableVertexAttribArray(this.a_texCoord_Loc),a.vertexAttribPointer(this.a_texCoord_Loc,2,a.FLOAT,!1,0,0),a.uniformMatrix4fv(this.u_matrix_Loc,!1,this.getClipBufPre_clipContextMask().matrixForMask);var p=this.getClipBufPre_clipContextMask().layoutChannelNo,c=this.getChannelFlagAsColor(p);a.uniform4f(this.u_channelFlag,c.r,c.g,c.b,c.a);var f=this.getClipBufPre_clipContextMask().layoutBounds;a.uniform4f(this.u_baseColor_Loc,2*f.x-1,2*f.y-1,2*f._$EL()-1,2*f._$5T()-1),a.uniform1i(this.u_maskFlag_Loc,!0)}else if(null!=this.getClipBufPre_clipContextDraw()){a.useProgram(this.shaderProgramOff),this._$vS=mt(a,this._$vS,r),this._$no=Tt(a,this._$no,e),a.enableVertexAttribArray(this.a_position_Loc_Off),a.vertexAttribPointer(this.a_position_Loc_Off,2,a.FLOAT,!1,0,0),this._$NT=mt(a,this._$NT,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,this.textures[t]),a.uniform1i(this.s_texture0_Loc_Off,1),a.enableVertexAttribArray(this.a_texCoord_Loc_Off),a.vertexAttribPointer(this.a_texCoord_Loc_Off,2,a.FLOAT,!1,0,0),a.uniformMatrix4fv(this.u_clipMatrix_Loc_Off,!1,this.getClipBufPre_clipContextDraw().matrixForDraw),a.uniformMatrix4fv(this.u_matrix_Loc_Off,!1,this.matrix4x4),a.activeTexture(a.TEXTURE2),a.bindTexture(a.TEXTURE_2D,_t.fTexture[this.glno]),a.uniform1i(this.s_texture1_Loc_Off,2);p=this.getClipBufPre_clipContextDraw().layoutChannelNo,c=this.getChannelFlagAsColor(p);a.uniform4f(this.u_channelFlag_Loc_Off,c.r,c.g,c.b,c.a),a.uniform4f(this.u_baseColor_Loc_Off,h,$,l,u)}else a.useProgram(this.shaderProgram),this._$vS=mt(a,this._$vS,r),this._$no=Tt(a,this._$no,e),a.enableVertexAttribArray(this.a_position_Loc),a.vertexAttribPointer(this.a_position_Loc,2,a.FLOAT,!1,0,0),this._$NT=mt(a,this._$NT,o),a.activeTexture(a.TEXTURE1),a.bindTexture(a.TEXTURE_2D,this.textures[t]),a.uniform1i(this.s_texture0_Loc,1),a.enableVertexAttribArray(this.a_texCoord_Loc),a.vertexAttribPointer(this.a_texCoord_Loc,2,a.FLOAT,!1,0,0),a.uniformMatrix4fv(this.u_matrix_Loc,!1,this.matrix4x4),a.uniform4f(this.u_baseColor_Loc,h,$,l,u),a.uniform1i(this.u_maskFlag_Loc,!1);this.culling?this.gl.enable(a.CULL_FACE):this.gl.disable(a.CULL_FACE),this.gl.enable(a.BLEND);var g,y,d,m;if(null!=this.clipBufPre_clipContextMask)g=a.ONE,y=a.ONE_MINUS_SRC_ALPHA,d=a.ONE,m=a.ONE_MINUS_SRC_ALPHA;else switch(n){case $t._$ms:g=a.ONE,y=a.ONE_MINUS_SRC_ALPHA,d=a.ONE,m=a.ONE_MINUS_SRC_ALPHA;break;case $t._$ns:g=a.ONE,y=a.ONE,d=a.ZERO,m=a.ONE;break;case $t._$_s:g=a.DST_COLOR,y=a.ONE_MINUS_SRC_ALPHA,d=a.ZERO,m=a.ONE}a.blendEquationSeparate(a.FUNC_ADD,a.FUNC_ADD),a.blendFuncSeparate(g,y,d,m),this.anisotropyExt&&a.texParameteri(a.TEXTURE_2D,this.anisotropyExt.TEXTURE_MAX_ANISOTROPY_EXT,this.maxAnisotropy);var T=e.length;a.drawElements(a.TRIANGLES,T,a.UNSIGNED_SHORT,0),a.bindTexture(a.TEXTURE_2D,null)}};function mt(t,i,e){return null==i&&(i=t.createBuffer()),t.bindBuffer(t.ARRAY_BUFFER,i),t.bufferData(t.ARRAY_BUFFER,e,t.DYNAMIC_DRAW),i}function Tt(t,i,e){return null==i&&(i=t.createBuffer()),t.bindBuffer(t.ELEMENT_ARRAY_BUFFER,i),t.bufferData(t.ELEMENT_ARRAY_BUFFER,e,t.DYNAMIC_DRAW),i}dt.prototype._$Rs=function(){throw new Error("_$Rs")},dt.prototype._$Ds=function(t){throw new Error("_$Ds")},dt.prototype._$K2=function(){for(var t=0;t=48){var r=G._$9o(t);return null!=r?(r._$F0(this),r):null}switch(t){case 1:return this._$bT();case 10:return new function(){e||(this.color=null)}(this._$6L(),!0);case 11:return new P(this._$mP(),this._$mP(),this._$mP(),this._$mP());case 12:return new P(this._$_T(),this._$_T(),this._$_T(),this._$_T());case 13:return new v(this._$mP(),this._$mP());case 14:return new v(this._$_T(),this._$_T());case 15:for(var o=this._$3L(),s=new Array(o),n=0;n>7-this._$hL++&1)},Pt.prototype._$zT=function(){0!=this._$hL&&(this._$hL=0)};function vt(){}vt._$2S=Math.PI/180,vt._$bS=Math.PI/180,vt._$wS=180/Math.PI,vt._$NS=180/Math.PI,vt.PI_F=Math.PI,vt._$kT=[0,.012368,.024734,.037097,.049454,.061803,.074143,.086471,.098786,.111087,.12337,.135634,.147877,.160098,.172295,.184465,.196606,.208718,.220798,.232844,.244854,.256827,.268761,.280654,.292503,.304308,.316066,.327776,.339436,.351044,.362598,.374097,.385538,.396921,.408243,.419502,.430697,.441826,.452888,.463881,.474802,.485651,.496425,.507124,.517745,.528287,.538748,.549126,.559421,.56963,.579752,.589785,.599728,.609579,.619337,.629,.638567,.648036,.657406,.666676,.675843,.684908,.693867,.70272,.711466,.720103,.72863,.737045,.745348,.753536,.76161,.769566,.777405,.785125,.792725,.800204,.807561,.814793,.821901,.828884,.835739,.842467,.849066,.855535,.861873,.868079,.874153,.880093,.885898,.891567,.897101,.902497,.907754,.912873,.917853,.922692,.92739,.931946,.936359,.940629,.944755,.948737,.952574,.956265,.959809,.963207,.966457,.96956,.972514,.97532,.977976,.980482,.982839,.985045,.987101,.989006,.990759,.992361,.993811,.995109,.996254,.997248,.998088,.998776,.999312,.999694,.999924,1],vt._$92=function(t,i){var e=Math.atan2(t[1],t[0]),r=Math.atan2(i[1],i[0]);return vt._$tS(e,r)},vt._$tS=function(t,i){for(var e=t-i;e<-Math.PI;)e+=2*Math.PI;for(;e>Math.PI;)e-=2*Math.PI;return e},vt._$9=function(t){return Math.sin(t)},vt.fcos=function(t){return Math.cos(t)};function Lt(t){e||(this._$e0=null,this._$IP=null,this._$Us=null,this._$7s=null,this._$IS=[!1],this._$VS=null,this._$AT=!0,this.baseOpacity=1,this.clipBufPre_clipContext=null,this._$e0=t)}Lt.prototype._$u2=function(){return this._$IS[0]},Lt.prototype._$yo=function(){return this._$AT&&!this._$IS[0]},Lt.prototype._$GT=function(){return this._$e0};function Mt(){}Mt._$W2=0,Mt.SYSTEM_INFO=null,Mt.USER_AGENT=navigator.userAgent,Mt.isIPhone=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isIPhone},Mt.isIOS=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isIPhone||Mt.SYSTEM_INFO._isIPad},Mt.isAndroid=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isAndroid},Mt.getOSVersion=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO.version},Mt.getOS=function(){return Mt.SYSTEM_INFO||Mt.setup(),Mt.SYSTEM_INFO._isIPhone||Mt.SYSTEM_INFO._isIPad?"iOS":Mt.SYSTEM_INFO._isAndroid?"Android":"_$Q0 OS"},Mt.setup=function(){var t=Mt.USER_AGENT;function i(t,i){for(var e=t.substring(i).split(/[ _,;\.]/),r=0,o=0;o<=2&&!isNaN(e[o]);o++){var s=parseInt(e[o]);if(s<0||s>999){_._$li("err : "+s+" @UtHtml5.setup()"),r=0;break}r+=s*Math.pow(1e3,2-o)}return r}var e,r=Mt.SYSTEM_INFO={userAgent:t};if((e=t.indexOf("iPhone OS "))>=0)r.os="iPhone",r._isIPhone=!0,r.version=i(t,e+"iPhone OS ".length);else if((e=t.indexOf("iPad"))>=0){if((e=t.indexOf("CPU OS"))<0)return void _._$li(" err : "+t+" @UtHtml5.setup()");r.os="iPad",r._isIPad=!0,r.version=i(t,e+"CPU OS ".length)}else(e=t.indexOf("Android"))>=0?(r.os="Android",r._isAndroid=!0,r.version=i(t,e+"Android ".length)):(r.os="-",r.version=-1)},_t.init();e=!1;i.UtSystem=I,i.UtDebug=_,i.LDTransform=gt,i.LDGL=ot,i.Live2D=_t,i.Live2DModelWebGL=pt,i.Live2DModelJS=q,i.Live2DMotion=J,i.MotionQueueManager=ct,i.PhysicsHair=u,i.AMotion=n,i.PartsDataID=h,i.DrawDataID=R,i.BaseDataID=yt,i.ParamID=$}).call(i,e(137))},132:function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.L2DBaseModel=i.L2DExpressionMotion=i.L2DExpressionParam=i.L2DEyeBlink=i.EYE_STATE=i.L2DMatrix44=i.L2DModelMatrix=i.L2DMotionManager=i.L2DPhysics=i.L2DPartsParam=i.L2DPose=i.L2DViewMatrix=i.Live2DFramework=i.L2DTargetPoint=void 0;var r=e(131);function o(){this.live2DModel=null,this.modelMatrix=null,this.eyeBlink=null,this.physics=null,this.pose=null,this.debugMode=!1,this.initialized=!1,this.updating=!1,this.alpha=1,this.accAlpha=0,this.lipSync=!1,this.lipSyncValue=0,this.accelX=0,this.accelY=0,this.accelZ=0,this.dragX=0,this.dragY=0,this.startTimeMSec=null,this.mainMotionManager=new u,this.expressionManager=new u,this.motions={},this.expressions={},this.isTexLoaded=!1}var s=0;o.prototype.getModelMatrix=function(){return this.modelMatrix},o.prototype.setAlpha=function(t){t>.999&&(t=1),t<.001&&(t=0),this.alpha=t},o.prototype.getAlpha=function(){return this.alpha},o.prototype.isInitialized=function(){return this.initialized},o.prototype.setInitialized=function(t){this.initialized=t},o.prototype.isUpdating=function(){return this.updating},o.prototype.setUpdating=function(t){this.updating=t},o.prototype.getLive2DModel=function(){return this.live2DModel},o.prototype.setLipSync=function(t){this.lipSync=t},o.prototype.setLipSyncValue=function(t){this.lipSyncValue=t},o.prototype.setAccel=function(t,i,e){this.accelX=t,this.accelY=i,this.accelZ=e},o.prototype.setDrag=function(t,i){this.dragX=t,this.dragY=i},o.prototype.getMainMotionManager=function(){return this.mainMotionManager},o.prototype.getExpressionManager=function(){return this.expressionManager},o.prototype.loadModelData=function(t,i){var e=d.getPlatformManager();this.debugMode&&e.log("Load model : "+t);var o=this;e.loadLive2DModel(t,function(t){o.live2DModel=t,o.live2DModel.saveParam();0==r.Live2D.getError()?(o.modelMatrix=new l(o.live2DModel.getCanvasWidth(),o.live2DModel.getCanvasHeight()),o.modelMatrix.setWidth(2),o.modelMatrix.setCenterPosition(0,0),i(o.live2DModel)):console.error("Error : Failed to loadModelData().")})},o.prototype.loadTexture=function(t,i,e){s++;var r=d.getPlatformManager();this.debugMode&&r.log("Load Texture : "+i);var o=this;r.loadTexture(this.live2DModel,t,i,function(){0==--s&&(o.isTexLoaded=!0),"function"==typeof e&&e()})},o.prototype.loadMotion=function(t,i,e){var o=d.getPlatformManager();this.debugMode&&o.log("Load Motion : "+i);var s=null,n=this;o.loadBytes(i,function(i){s=r.Live2DMotion.loadMotion(i),null!=t&&(n.motions[t]=s),e(s)})},o.prototype.loadExpression=function(t,i,e){var r=d.getPlatformManager();this.debugMode&&r.log("Load Expression : "+i);var o=this;r.loadBytes(i,function(i){null!=t&&(o.expressions[t]=n.loadJson(i)),"function"==typeof e&&e()})},o.prototype.loadPose=function(t,i){var e=d.getPlatformManager();this.debugMode&&e.log("Load Pose : "+t);var r=this;try{e.loadBytes(t,function(t){r.pose=c.load(t),"function"==typeof i&&i()})}catch(t){console.warn(t)}},o.prototype.loadPhysics=function(t){var i=d.getPlatformManager();this.debugMode&&i.log("Load Physics : "+t);var e=this;try{i.loadBytes(t,function(t){e.physics=p.load(t)})}catch(t){console.warn(t)}},o.prototype.hitTestSimple=function(t,i,e){if(null===this.live2DModel)return!1;var r=this.live2DModel.getDrawDataIndex(t);if(r<0)return!1;for(var o=this.live2DModel.getTransformedPoints(r),s=this.live2DModel.getCanvasWidth(),n=0,_=this.live2DModel.getCanvasHeight(),a=0,h=0;hn&&(n=$),l<_&&(_=l),l>a&&(a=l)}var u=this.modelMatrix.invertTransformX(i),p=this.modelMatrix.invertTransformY(e);return s<=u&&u<=n&&_<=p&&p<=a};function n(){r.AMotion.prototype.constructor.call(this),this.paramList=new Array}n.prototype=new r.AMotion,n.EXPRESSION_DEFAULT="DEFAULT",n.TYPE_SET=0,n.TYPE_ADD=1,n.TYPE_MULT=2,n.loadJson=function(t){var i=new n,e=d.getPlatformManager().jsonParseFromBytes(t);if(i.setFadeIn(parseInt(e.fade_in)>0?parseInt(e.fade_in):1e3),i.setFadeOut(parseInt(e.fade_out)>0?parseInt(e.fade_out):1e3),null==e.params)return i;var r=e.params,o=r.length;i.paramList=[];for(var s=0;s=0;--o){var s=this.paramList[o];s.type==n.TYPE_ADD?t.addToParamFloat(s.id,s.value,e):s.type==n.TYPE_MULT?t.multParamFloat(s.id,s.value,e):s.type==n.TYPE_SET&&t.setParamFloat(s.id,s.value,e)}};function _(){this.id="",this.type=-1,this.value=null}function a(){this.nextBlinkTime=null,this.stateStartTime=null,this.blinkIntervalMsec=null,this.eyeState=h.STATE_FIRST,this.blinkIntervalMsec=4e3,this.closingMotionMsec=100,this.closedMotionMsec=50,this.openingMotionMsec=150,this.closeIfZero=!0,this.eyeID_L="PARAM_EYE_L_OPEN",this.eyeID_R="PARAM_EYE_R_OPEN"}a.prototype.calcNextBlink=function(){return r.UtSystem.getUserTimeMSec()+Math.random()*(2*this.blinkIntervalMsec-1)},a.prototype.setInterval=function(t){this.blinkIntervalMsec=t},a.prototype.setEyeMotion=function(t,i,e){this.closingMotionMsec=t,this.closedMotionMsec=i,this.openingMotionMsec=e},a.prototype.updateParam=function(t){var i,e=r.UtSystem.getUserTimeMSec(),o=0;switch(this.eyeState){case h.STATE_CLOSING:(o=(e-this.stateStartTime)/this.closingMotionMsec)>=1&&(o=1,this.eyeState=h.STATE_CLOSED,this.stateStartTime=e),i=1-o;break;case h.STATE_CLOSED:(o=(e-this.stateStartTime)/this.closedMotionMsec)>=1&&(this.eyeState=h.STATE_OPENING,this.stateStartTime=e),i=0;break;case h.STATE_OPENING:(o=(e-this.stateStartTime)/this.openingMotionMsec)>=1&&(o=1,this.eyeState=h.STATE_INTERVAL,this.nextBlinkTime=this.calcNextBlink()),i=o;break;case h.STATE_INTERVAL:this.nextBlinkTime=t)&&(!(this.currentPriority>=t)&&(this.reservePriority=t,!0))},u.prototype.setReservePriority=function(t){this.reservePriority=t},u.prototype.updateParam=function(t){var i=r.MotionQueueManager.prototype.updateParam.call(this,t);return this.isFinished()&&(this.currentPriority=0),i},u.prototype.startMotionPrio=function(t,i){return i==this.reservePriority&&(this.reservePriority=0),this.currentPriority=i,this.startMotion(t,!1)};function p(){this.physicsList=new Array,this.startTimeMSec=r.UtSystem.getUserTimeMSec()}p.load=function(t){for(var i=new p,e=d.getPlatformManager().jsonParseFromBytes(t).physics_hair,o=e.length,s=0;s=0)break;r=s,o=t.getPartsOpacity(n),(o+=e/.5)>1&&(o=1)}}r<0&&(r=0,o=1);for(s=0;s.15&&(a=1-.15/(1-o)),h>a&&(h=a),t.setPartsOpacity(n,h)}}},c.prototype.copyOpacityOtherParts=function(t,i){for(var e=0;eo)&&(h*=o/l,$*=o/l,l=o),this.faceVX+=h,this.faceVY+=$;var u=.5*(Math.sqrt(o*o+16*o*_-8*o*_)-o),p=Math.sqrt(this.faceVX*this.faceVX+this.faceVY*this.faceVY);p>u&&(this.faceVX*=u/p,this.faceVY*=u/p),this.faceX+=this.faceVX,this.faceY+=this.faceVY}}else this.lastTimeSec=r.UtSystem.getUserTimeMSec()};function y(){$.prototype.constructor.call(this),this.screenLeft=null,this.screenRight=null,this.screenTop=null,this.screenBottom=null,this.maxLeft=null,this.maxRight=null,this.maxTop=null,this.maxBottom=null}y.prototype=new $,y.prototype.adjustTranslate=function(t,i){this.tr[0]*this.maxLeft+(this.tr[12]+t)>this.screenLeft&&(t=this.screenLeft-this.tr[0]*this.maxLeft-this.tr[12]),this.tr[0]*this.maxRight+(this.tr[12]+t)this.screenBottom&&(i=this.screenBottom-this.tr[5]*this.maxBottom-this.tr[13]);var e=[1,0,0,0,0,1,0,0,0,0,1,0,t,i,0,1];$.mul(e,this.tr,this.tr)},y.prototype.adjustScale=function(t,i,e){this.tr[0];var r=[1,0,0,0,0,1,0,0,0,0,1,0,t,i,0,1],o=[e,0,0,0,0,e,0,0,0,0,1,0,0,0,0,1],s=[1,0,0,0,0,1,0,0,0,0,1,0,-t,-i,0,1];$.mul(s,this.tr,this.tr),$.mul(o,this.tr,this.tr),$.mul(r,this.tr,this.tr)},y.prototype.setScreenRect=function(t,i,e,r){this.screenLeft=t,this.screenRight=i,this.screenTop=r,this.screenBottom=e},y.prototype.setMaxScreenRect=function(t,i,e,r){this.maxLeft=t,this.maxRight=i,this.maxTop=r,this.maxBottom=e},y.prototype.getScreenLeft=function(){return this.screenLeft},y.prototype.getScreenRight=function(){return this.screenRight},y.prototype.getScreenBottom=function(){return this.screenBottom},y.prototype.getScreenTop=function(){return this.screenTop},y.prototype.getMaxLeft=function(){return this.maxLeft},y.prototype.getMaxRight=function(){return this.maxRight},y.prototype.getMaxBottom=function(){return this.maxBottom},y.prototype.getMaxTop=function(){return this.maxTop};function d(){}d.platformManager=null,d.getPlatformManager=function(){return d.platformManager},d.setPlatformManager=function(t){d.platformManager=t},i.L2DTargetPoint=g,i.Live2DFramework=d,i.L2DViewMatrix=y,i.L2DPose=c,i.L2DPartsParam=f,i.L2DPhysics=p,i.L2DMotionManager=u,i.L2DModelMatrix=l,i.L2DMatrix44=$,i.EYE_STATE=h,i.L2DEyeBlink=a,i.L2DExpressionParam=_,i.L2DExpressionMotion=n,i.L2DBaseModel=o},133:function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0});i.cDefine={VIEW_LOGICAL_LEFT:-1,VIEW_LOGICAL_RIGHT:1,VIEW_LOGICAL_MAX_LEFT:-2,VIEW_LOGICAL_MAX_RIGHT:2,VIEW_LOGICAL_MAX_BOTTOM:-2,VIEW_LOGICAL_MAX_TOP:2,PRIORITY_NONE:0,PRIORITY_IDLE:1,PRIORITY_NORMAL:2,PRIORITY_FORCE:3,MOTION_GROUP_IDLE:"idle",MOTION_GROUP_TAP_BODY:"tap_body",MOTION_GROUP_FLICK_HEAD:"flick_head",MOTION_GROUP_PINCH_IN:"pinch_in",MOTION_GROUP_PINCH_OUT:"pinch_out",MOTION_GROUP_SHAKE:"shake",HIT_AREA_HEAD:"head",HIT_AREA_BODY:"body"}},134:function(t,i,e){"use strict";Object.defineProperty(i,"__esModule",{value:!0}),i.currCanvas=i.currWebGL=i.createElement=void 0;var r,o=e(51),s=e(136),n=(r=s,r&&r.__esModule?r:{default:r});var _=void 0,a=void 0;i.createElement=function(){var t=document.getElementById(o.config.name.div);null!==t&&document.body.removeChild(t);var e=document.createElement("div");e.id=o.config.name.div,e.innerHTML=n.default;var r=document.createElement("canvas");r.setAttribute("id",o.config.name.canvas),r.setAttribute("width",o.config.display.width*o.config.display.superSample),r.setAttribute("height",o.config.display.height*o.config.display.superSample),r.style.setProperty("position","fixed"),r.style.setProperty("width",o.config.display.width),r.style.setProperty("height",o.config.display.height),r.style.setProperty("opacity",o.config.react.opacityDefault),r.style.setProperty(o.config.display.position,o.config.display.hOffset+"px"),r.style.setProperty("bottom",o.config.display.vOffset+"px"),r.style.setProperty("z-index",99999),r.style.setProperty("pointer-events","none"),o.config.dev.border&&r.style.setProperty("border","dashed 1px #CCC"),e.appendChild(r),document.body.appendChild(e),i.currCanvas=a=document.getElementById(o.config.name.canvas),function(){for(var t=["webgl2","webgl","experimental-webgl2","experimental-webgl","webkit-3d","moz-webgl"],e=0;e=this.models.length?null:this.models[t]},_.prototype.releaseModel=function(t,i){this.models.length<=t||(this.models[t].release(i),delete this.models[t],this.models.splice(t,1))},_.prototype.numModels=function(){return this.models.length},_.prototype.setDrag=function(t,i){for(var e=0;e0){s.expressions={};for(var t=0;t range) {\n a = {\n x: a.x / r * range + center.x,\n y: a.y / r * range + center.y\n };\n return a;\n } else {\n return transform;\n }\n}\n*/\nfunction dot(A,B)\n{\n return A.x * B.x + A.y * B.y;\n}\n\nfunction normalize(x,y)\n{\n let length = Math.sqrt(x * x + y * y)\n return {\n x: x / length,\n y: y / length\n }\n}\n\nfunction transformRect(center, transform, rect)\n{\n if (transform.x < rect.left + rect.width && transform.y < rect.top + rect.height &&\n transform.x > rect.left && transform.y > rect.top) return transform;\n let Len_X = center.x - transform.x;\n let Len_Y = center.y - transform.y;\n\n function angle(Len_X, Len_Y)\n {\n return Math.acos(dot({\n x: 0,\n y: 1\n }, normalize(Len_X, Len_Y))) * 180 / Math.PI\n }\n\n let angleTarget = angle(Len_X, Len_Y);\n if (transform.x < center.x) angleTarget = 360 - angleTarget;\n let angleLeftTop = 360 - angle(rect.left - center.x, (rect.top - center.y) * -1);\n let angleLeftBottom = 360 - angle(rect.left - center.x, (rect.top + rect.height - center.y) * -1);\n let angleRightTop = angle(rect.left + rect.width - center.x, (rect.top - center.y) * -1);\n let angleRightBottom = angle(rect.left + rect.width - center.x, (rect.top + rect.height - center.y) * -1);\n let scale = Len_Y / Len_X;\n let res = {};\n\n if (angleTarget < angleRightTop) {\n let y3 = rect.top - center.y;\n let x3 = y3 / scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n } else if(angleTarget < angleRightBottom) {\n let x3 = rect.left + rect.width - center.x;\n let y3 = x3 * scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n } else if (angleTarget < angleLeftBottom) {\n let y3 = rect.top + rect.height - center.y;\n let x3 = y3 / scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n } else if (angleTarget < angleLeftTop) {\n let x3 = center.x - rect.left;\n let y3 = x3 * scale;\n res = {\n y: center.y - y3,\n x: center.x - x3\n }\n } else {\n let y3 = rect.top - center.y;\n let x3 = y3 / scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n }\n\n return res;\n}\n\nfunction modelTurnHead(event)\n{\n drag = true;\n\n let rect = currCanvas.getBoundingClientRect();\n\n let sx = transformScreenX(event.clientX - rect.left);\n let sy = transformScreenY(event.clientY - rect.top);\n let target = transformRect({\n x: rect.left + rect.width / 2,\n y: rect.top + rect.height * headPos\n }, {\n x: event.clientX,\n y: event.clientY\n }, rect)\n let vx = transformViewX(target.x - rect.left);\n let vy = transformViewY(target.y - rect.top);\n\n if (cDefine.DEBUG_MOUSE_LOG)\n console.log(\"modelTurnHead onMouseMove device( x:\" + event.clientX + \" y:\" + event.clientY + \" ) view( x:\" + vx + \" y:\" + vy + \")\");\n\n lastMouseX = sx;\n lastMouseY = sy;\n\n dragMgr.setPoint(vx, vy);\n}\n\nfunction modelTapEvent(event)\n{\n drag = true;\n\n let rect = currCanvas.getBoundingClientRect();\n\n let sx = transformScreenX(event.clientX - rect.left);\n let sy = transformScreenY(event.clientY - rect.top);\n let target = transformRect({\n x: rect.left + rect.width / 2,\n y: rect.top + rect.height * headPos\n }, {\n x: event.clientX,\n y: event.clientY\n }, rect)\n let vx = transformViewX(target.x - rect.left);\n let vy = transformViewY(target.y - rect.top);\n\n if (cDefine.DEBUG_MOUSE_LOG)\n console.log(\"modelTapEvent onMouseDown device( x:\" + event.clientX + \" y:\" + event.clientY + \" ) view( x:\" + vx + \" y:\" + vy + \")\");\n\n lastMouseX = sx;\n lastMouseY = sy;\n\n live2DMgr.tapEvent(vx, vy);\n}\n\nfunction followPointer(event)\n{\n let rect = currCanvas.getBoundingClientRect();\n\n let sx = transformScreenX(event.clientX - rect.left);\n let sy = transformScreenY(event.clientY - rect.top);\n\n // log but seems ok\n // console.log(\"ecx=\" + event.clientX + \" ecy=\" + event.clientY + \" sx=\" + sx + \" sy=\" + sy);\n\n let target = transformRect({// seems ok here\n x: rect.left + rect.width / 2,\n y: rect.top + rect.height * headPos\n }, {\n x: event.clientX,\n y: event.clientY\n }, rect)\n let vx = transformViewX(target.x - rect.left);\n let vy = transformViewY(target.y - rect.top);\n\n if (cDefine.DEBUG_MOUSE_LOG)\n console.log(\"followPointer onMouseMove device( x:\" + event.clientX + \" y:\" + event.clientY + \" ) view( x:\" + vx + \" y:\" + vy + \")\");\n\n if (drag)\n {\n lastMouseX = sx;\n lastMouseY = sy;\n dragMgr.setPoint(vx, vy);\n }\n}\n\nfunction lookFront()\n{\n if (drag) {\n drag = false;\n }\n dragMgr.setPoint(0, 0);\n}\n\nfunction mouseEvent(e)\n{\n //e.preventDefault();\n if (e.type == \"mousedown\") {\n modelTapEvent(e);\n } else if (e.type == \"mousemove\") {\n modelTurnHead(e);\n } else if (e.type == \"mouseup\") {\n if(\"button\" in e && e.button != 0) return;\n // lookFront();\n } else if (e.type == \"mouseleave\") {\n lookFront();\n }\n}\n\nfunction touchEvent(e)\n{\n var touch = e.touches[0];\n if (e.type == \"touchstart\") {\n if (e.touches.length == 1) modelTapEvent(touch);\n // onClick(touch);\n } else if (e.type == \"touchmove\") {\n followPointer(touch);\n } else if (e.type == \"touchend\") {\n lookFront();\n }\n}\n\nfunction transformViewX(deviceX)\n{\n var screenX = deviceToScreen.transformX(deviceX);\n return viewMatrix.invertTransformX(screenX);\n}\n\n\nfunction transformViewY(deviceY)\n{\n var screenY = deviceToScreen.transformY(deviceY);\n return viewMatrix.invertTransformY(screenY);\n}\n\n\nfunction transformScreenX(deviceX)\n{\n return deviceToScreen.transformX(deviceX);\n}\n\n\nfunction transformScreenY(deviceY)\n{\n return deviceToScreen.transformY(deviceY);\n}\n\nexport{\n theRealInit,\n captureFrame,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/cLive2DApp.js","/**\n * ============================================================\n * Live2D Cubism SDK for WebGL Version 2.1.00_1\n *\n * (c) Live2D Inc.\n * ============================================================\n *\n * This is a Software Development Kit (SDK) for developing Live2D-Cubism-powered applications on WebGL.\n * The SDK contains proprietary libraries and sample projects.\n * Read this document when using the SDK.\n *\n * ------------------------------\n * License\n * ------------------------------\n * Read Live2D License Agreement\n * for business\n * http://live2d.com/en/sdk_license_cubism3\n *\n * for indie\n * http://live2d.com/en/sdk_license_cubism_indie\n *\n * After agree and accept Live2D SDK License Agreement, the content in the following folders may be placed in the server which you control.\n * SDK\n * ├─framework\n * │ Live2DFramework.js\n * │\n * ├─lib\n * │ live2d.min.js\n * │\n * └─sample\n */\n\n// Changes have been done and intention:\n// 1. Pretty the code using Chrome for easy editing.\n// 2. Use ES6's module system to prevent functions from exposing to 'window' and easy compatibility for ES6.\n\n\nvar j = true;\nfunction aa() {\n if (j) {\n return;\n }\n this._$MT = null;\n this._$5S = null;\n this._$NP = 0;\n aa._$42++;\n this._$5S = new y(this);\n}\naa._$0s = 1;\naa._$4s = 2;\naa._$42 = 0;\naa._$62 = function(aQ, aU) {\n try {\n if (aU instanceof ArrayBuffer) {\n aU = new DataView(aU);\n }\n if (!(aU instanceof DataView)) {\n throw new J(\"_$SS#loadModel(b) / b _$x be DataView or ArrayBuffer\");\n }\n var aS = new K(aU);\n var aM = aS._$ST();\n var aK = aS._$ST();\n var aJ = aS._$ST();\n var aN;\n if (aM == 109 && aK == 111 && aJ == 99) {\n aN = aS._$ST();\n } else {\n throw new J(\"_$gi _$C _$li , _$Q0 _$P0.\");\n }\n aS._$gr(aN);\n if (aN > ay._$T7) {\n aQ._$NP |= aa._$4s;\n var aR = ay._$T7;\n var aI = \"_$gi _$C _$li , _$n0 _$_ version _$li ( SDK : \" + aR + \" < _$f0 : \" + aN + \" )@_$SS#loadModel()\\n\";\n throw new J(aI);\n }\n var aL = aS._$nP();\n if (aN >= ay._$s7) {\n var aH = aS._$9T();\n var aT = aS._$9T();\n if (aH != -30584 || aT != -30584) {\n aQ._$NP |= aa._$0s;\n throw new J(\"_$gi _$C _$li , _$0 _$6 _$Ui.\");\n }\n }\n aQ._$KS(aL);\n var aP = aQ.getModelContext();\n aP.setDrawParam(aQ.getDrawParam());\n aP.init();\n } catch (aO) {\n q._$Rb(aO);\n }\n}\n;\naa.prototype._$KS = function(aH) {\n this._$MT = aH;\n}\n;\naa.prototype.getModelImpl = function() {\n if (this._$MT == null) {\n this._$MT = new w();\n this._$MT._$zP();\n }\n return this._$MT;\n}\n;\naa.prototype.getCanvasWidth = function() {\n if (this._$MT == null) {\n return 0;\n }\n return this._$MT.getCanvasWidth();\n}\n;\naa.prototype.getCanvasHeight = function() {\n if (this._$MT == null) {\n return 0;\n }\n return this._$MT.getCanvasHeight();\n}\n;\naa.prototype.getParamFloat = function(aH) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n return this._$5S.getParamFloat(aH);\n}\n;\naa.prototype.setParamFloat = function(aH, aJ, aI) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n if (arguments.length < 3) {\n aI = 1;\n }\n this._$5S.setParamFloat(aH, this._$5S.getParamFloat(aH) * (1 - aI) + aJ * aI);\n}\n;\naa.prototype.addToParamFloat = function(aH, aJ, aI) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n if (arguments.length < 3) {\n aI = 1;\n }\n this._$5S.setParamFloat(aH, this._$5S.getParamFloat(aH) + aJ * aI);\n}\n;\naa.prototype.multParamFloat = function(aH, aJ, aI) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n if (arguments.length < 3) {\n aI = 1;\n }\n this._$5S.setParamFloat(aH, this._$5S.getParamFloat(aH) * (1 + (aJ - 1) * aI));\n}\n;\naa.prototype.getParamIndex = function(aH) {\n return this._$5S.getParamIndex(z.getID(aH));\n}\n;\naa.prototype.loadParam = function() {\n this._$5S.loadParam();\n}\n;\naa.prototype.saveParam = function() {\n this._$5S.saveParam();\n}\n;\naa.prototype.init = function() {\n this._$5S.init();\n}\n;\naa.prototype.update = function() {\n this._$5S.update();\n}\n;\naa.prototype._$Rs = function() {\n q._$li(\"_$60 _$PT _$Rs()\");\n return -1;\n}\n;\naa.prototype._$Ds = function(aH) {\n q._$li(\"_$60 _$PT _$SS#_$Ds() \\n\");\n}\n;\naa.prototype._$K2 = function() {}\n;\naa.prototype.draw = function() {}\n;\naa.prototype.getModelContext = function() {\n return this._$5S;\n}\n;\naa.prototype._$s2 = function() {\n return this._$NP;\n}\n;\naa.prototype._$P7 = function(aK, aR, aH, a0) {\n var aU = -1;\n var aY = 0;\n var aM = this;\n var aJ = 0.5;\n var aI = 0.15;\n var aX = true;\n if (aH == 0) {\n for (var aV = 0; aV < aK.length; aV++) {\n var aP = aK[aV];\n var aO = aR[aV];\n var aS = (aM.getParamFloat(aP) != 0);\n aM.setPartsOpacity(aO, (aS ? 1 : 0));\n }\n return;\n } else {\n if (aK.length == 1) {\n var aP = aK[0];\n var aT = (aM.getParamFloat(aP) != 0);\n var aO = aR[0];\n var aQ = aM.getPartsOpacity(aO);\n var aW = aH / a0;\n if (aT) {\n aQ += aW;\n if (aQ > 1) {\n aQ = 1;\n }\n } else {\n aQ -= aW;\n if (aQ < 0) {\n aQ = 0;\n }\n }\n aM.setPartsOpacity(aO, aQ);\n } else {\n for (var aV = 0; aV < aK.length; aV++) {\n var aP = aK[aV];\n var aS = (aM.getParamFloat(aP) != 0);\n if (aS) {\n if (aU >= 0) {\n break;\n }\n aU = aV;\n var aO = aR[aV];\n aY = aM.getPartsOpacity(aO);\n aY += aH / a0;\n if (aY > 1) {\n aY = 1;\n }\n }\n }\n if (aU < 0) {\n console.log(\"No _$wi _$q0/ _$U default[%s]\", aK[0]);\n aU = 0;\n aY = 1;\n aM.loadParam();\n aM.setParamFloat(aK[aU], aY);\n aM.saveParam();\n }\n for (var aV = 0; aV < aK.length; aV++) {\n var aO = aR[aV];\n if (aU == aV) {\n aM.setPartsOpacity(aO, aY);\n } else {\n var aL = aM.getPartsOpacity(aO);\n var aZ;\n if (aY < aJ) {\n aZ = aY * (aJ - 1) / aJ + 1;\n } else {\n aZ = (1 - aY) * aJ / (1 - aJ);\n }\n if (aX) {\n var aN = (1 - aZ) * (1 - aY);\n if (aN > aI) {\n aZ = 1 - aI / (1 - aY);\n }\n }\n if (aL > aZ) {\n aL = aZ;\n }\n aM.setPartsOpacity(aO, aL);\n }\n }\n }\n }\n}\n;\naa.prototype.setPartsOpacity = function(aI, aH) {\n if (typeof aI != \"number\") {\n aI = this._$5S.getPartsDataIndex(i.getID(aI));\n }\n this._$5S.setPartsOpacity(aI, aH);\n}\n;\naa.prototype.getPartsDataIndex = function(aH) {\n if (!(aH instanceof i)) {\n aH = i.getID(aH);\n }\n return this._$5S.getPartsDataIndex(aH);\n}\n;\naa.prototype.getPartsOpacity = function(aH) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getPartsDataIndex(i.getID(aH));\n }\n if (aH < 0) {\n return 0;\n }\n return this._$5S.getPartsOpacity(aH);\n}\n;\naa.prototype.getDrawParam = function() {}\n;\naa.prototype.getDrawDataIndex = function(aH) {\n return this._$5S.getDrawDataIndex(Z.getID(aH));\n}\n;\naa.prototype.getDrawData = function(aH) {\n return this._$5S.getDrawData(aH);\n}\n;\naa.prototype.getTransformedPoints = function(aH) {\n var aI = this._$5S._$C2(aH);\n if (aI instanceof ag) {\n return (aI).getTransformedPoints();\n }\n return null;\n}\n;\naa.prototype.getIndexArray = function(aI) {\n if (aI < 0 || aI >= this._$5S._$aS.length) {\n return null;\n }\n var aH = this._$5S._$aS[aI];\n if (aH != null && aH.getType() == a._$wb) {\n if (aH instanceof b) {\n return aH.getIndexArray();\n }\n }\n return null;\n}\n;\nfunction W(aJ) {\n if (j) {\n return;\n }\n this.clipContextList = new Array();\n this.glcontext = aJ.gl;\n this.dp_webgl = aJ;\n this.curFrameNo = 0;\n this.firstError_clipInNotUpdate = true;\n this.colorBuffer = 0;\n this.isInitGLFBFunc = false;\n this.tmpBoundsOnModel = new av();\n if (Q.glContext.length > Q.frameBuffers.length) {\n this.curFrameNo = this.getMaskRenderTexture();\n } else {}\n this.tmpModelToViewMatrix = new ac();\n this.tmpMatrix2 = new ac();\n this.tmpMatrixForMask = new ac();\n this.tmpMatrixForDraw = new ac();\n this.CHANNEL_COLORS = new Array();\n var aI = new o();\n aI = new o();\n aI.r = 0;\n aI.g = 0;\n aI.b = 0;\n aI.a = 1;\n this.CHANNEL_COLORS.push(aI);\n aI = new o();\n aI.r = 1;\n aI.g = 0;\n aI.b = 0;\n aI.a = 0;\n this.CHANNEL_COLORS.push(aI);\n aI = new o();\n aI.r = 0;\n aI.g = 1;\n aI.b = 0;\n aI.a = 0;\n this.CHANNEL_COLORS.push(aI);\n aI = new o();\n aI.r = 0;\n aI.g = 0;\n aI.b = 1;\n aI.a = 0;\n this.CHANNEL_COLORS.push(aI);\n for (var aH = 0; aH < this.CHANNEL_COLORS.length; aH++) {\n this.dp_webgl.setChannelFlagAsColor(aH, this.CHANNEL_COLORS[aH]);\n }\n}\nW.CHANNEL_COUNT = 4;\nW.RENDER_TEXTURE_USE_MIPMAP = false;\nW.NOT_USED_FRAME = -100;\nW.prototype._$L7 = function() {\n if (this.tmpModelToViewMatrix) {\n this.tmpModelToViewMatrix = null;\n }\n if (this.tmpMatrix2) {\n this.tmpMatrix2 = null;\n }\n if (this.tmpMatrixForMask) {\n this.tmpMatrixForMask = null;\n }\n if (this.tmpMatrixForDraw) {\n this.tmpMatrixForDraw = null;\n }\n if (this.tmpBoundsOnModel) {\n this.tmpBoundsOnModel = null;\n }\n if (this.CHANNEL_COLORS) {\n for (var aH = this.CHANNEL_COLORS.length - 1; aH >= 0; --aH) {\n this.CHANNEL_COLORS.splice(aH, 1);\n }\n this.CHANNEL_COLORS = [];\n }\n this.releaseShader();\n}\n;\nW.prototype.releaseShader = function() {\n var aI = Q.frameBuffers.length;\n for (var aH = 0; aH < aI; aH++) {\n this.gl.deleteFramebuffer(Q.frameBuffers[aH].framebuffer);\n }\n Q.frameBuffers = [];\n Q.glContext = [];\n}\n;\nW.prototype.init = function(aO, aN, aL) {\n for (var aM = 0; aM < aN.length; aM++) {\n var aH = aN[aM].getClipIDList();\n if (aH == null) {\n continue;\n }\n var aJ = this.findSameClip(aH);\n if (aJ == null) {\n aJ = new U(this,aO,aH);\n this.clipContextList.push(aJ);\n }\n var aI = aN[aM].getDrawDataID();\n var aK = aO.getDrawDataIndex(aI);\n aJ.addClippedDrawData(aI, aK);\n var aP = aL[aM];\n aP.clipBufPre_clipContext = aJ;\n }\n}\n;\nW.prototype.getMaskRenderTexture = function() {\n var aH = null;\n aH = this.dp_webgl.createFramebuffer();\n Q.frameBuffers[this.dp_webgl.glno] = aH;\n return this.dp_webgl.glno;\n}\n;\nW.prototype.setupClip = function(a1, aQ) {\n var aK = 0;\n for (var aO = 0; aO < this.clipContextList.length; aO++) {\n var aP = this.clipContextList[aO];\n this.calcClippedDrawTotalBounds(a1, aP);\n if (aP.isUsing) {\n aK++;\n }\n }\n if (aK > 0) {\n var aM = aQ.gl.getParameter(aQ.gl.FRAMEBUFFER_BINDING);\n var aW = new Array(4);\n aW[0] = 0;\n aW[1] = 0;\n aW[2] = aQ.gl.canvas.width;\n aW[3] = aQ.gl.canvas.height;\n aQ.gl.viewport(0, 0, Q.clippingMaskBufferSize, Q.clippingMaskBufferSize);\n this.setupLayoutBounds(aK);\n aQ.gl.bindFramebuffer(aQ.gl.FRAMEBUFFER, Q.frameBuffers[this.curFrameNo].framebuffer);\n aQ.gl.clearColor(0, 0, 0, 0);\n aQ.gl.clear(aQ.gl.COLOR_BUFFER_BIT);\n for (var aO = 0; aO < this.clipContextList.length; aO++) {\n var aP = this.clipContextList[aO];\n var aT = aP.allClippedDrawRect;\n var aN = aP.layoutChannelNo;\n var aV = aP.layoutBounds;\n var aJ = 0.05;\n this.tmpBoundsOnModel._$jL(aT);\n this.tmpBoundsOnModel.expand(aT.width * aJ, aT.height * aJ);\n var aZ = aV.width / this.tmpBoundsOnModel.width;\n var aY = aV.height / this.tmpBoundsOnModel.height;\n this.tmpMatrix2.identity();\n this.tmpMatrix2.translate(-1, -1, 0);\n this.tmpMatrix2.scale(2, 2, 1);\n this.tmpMatrix2.translate(aV.x, aV.y, 0);\n this.tmpMatrix2.scale(aZ, aY, 1);\n this.tmpMatrix2.translate(-this.tmpBoundsOnModel.x, -this.tmpBoundsOnModel.y, 0);\n this.tmpMatrixForMask.setMatrix(this.tmpMatrix2.m);\n this.tmpMatrix2.identity();\n this.tmpMatrix2.translate(aV.x, aV.y, 0);\n this.tmpMatrix2.scale(aZ, aY, 1);\n this.tmpMatrix2.translate(-this.tmpBoundsOnModel.x, -this.tmpBoundsOnModel.y, 0);\n this.tmpMatrixForDraw.setMatrix(this.tmpMatrix2.m);\n var aH = this.tmpMatrixForMask.getArray();\n for (var aX = 0; aX < 16; aX++) {\n aP.matrixForMask[aX] = aH[aX];\n }\n var a0 = this.tmpMatrixForDraw.getArray();\n for (var aX = 0; aX < 16; aX++) {\n aP.matrixForDraw[aX] = a0[aX];\n }\n var aS = aP.clippingMaskDrawIndexList.length;\n for (var aU = 0; aU < aS; aU++) {\n var aR = aP.clippingMaskDrawIndexList[aU];\n var aI = a1.getDrawData(aR);\n var aL = a1._$C2(aR);\n aQ.setClipBufPre_clipContextForMask(aP);\n aI.draw(aQ, a1, aL);\n }\n }\n aQ.gl.bindFramebuffer(aQ.gl.FRAMEBUFFER, aM);\n aQ.setClipBufPre_clipContextForMask(null);\n aQ.gl.viewport(aW[0], aW[1], aW[2], aW[3]);\n }\n}\n;\nW.prototype.getColorBuffer = function() {\n return this.colorBuffer;\n}\n;\nW.prototype.findSameClip = function(aK) {\n for (var aN = 0; aN < this.clipContextList.length; aN++) {\n var aO = this.clipContextList[aN];\n var aH = aO.clipIDList.length;\n if (aH != aK.length) {\n continue;\n }\n var aI = 0;\n for (var aM = 0; aM < aH; aM++) {\n var aL = aO.clipIDList[aM];\n for (var aJ = 0; aJ < aH; aJ++) {\n if (aK[aJ] == aL) {\n aI++;\n break;\n }\n }\n }\n if (aI == aH) {\n return aO;\n }\n }\n return null;\n}\n;\nW.prototype.calcClippedDrawTotalBounds = function(a6, aV) {\n var aU = a6._$Ri.getModelImpl().getCanvasWidth();\n var a5 = a6._$Ri.getModelImpl().getCanvasHeight();\n var aJ = aU > a5 ? aU : a5;\n var aT = aJ;\n var aR = aJ;\n var aS = 0;\n var aP = 0;\n var aL = aV.clippedDrawContextList.length;\n for (var aM = 0; aM < aL; aM++) {\n var aW = aV.clippedDrawContextList[aM];\n var aN = aW.drawDataIndex;\n var aK = a6._$C2(aN);\n if (aK._$yo()) {\n var aX = aK.getTransformedPoints();\n var a4 = aX.length;\n var aI = [];\n var aH = [];\n var aO = 0;\n for (var a3 = aw._$i2; a3 < a4; a3 += aw._$No) {\n aI[aO] = aX[a3];\n aH[aO] = aX[a3 + 1];\n aO++;\n }\n var a2 = Math.min.apply(null, aI);\n var a1 = Math.min.apply(null, aH);\n var a0 = Math.max.apply(null, aI);\n var aZ = Math.max.apply(null, aH);\n if (a2 < aT) {\n aT = a2;\n }\n if (a1 < aR) {\n aR = a1;\n }\n if (a0 > aS) {\n aS = a0;\n }\n if (aZ > aP) {\n aP = aZ;\n }\n }\n }\n if (aT == aJ) {\n aV.allClippedDrawRect.x = 0;\n aV.allClippedDrawRect.y = 0;\n aV.allClippedDrawRect.width = 0;\n aV.allClippedDrawRect.height = 0;\n aV.isUsing = false;\n } else {\n var aQ = aS - aT;\n var aY = aP - aR;\n aV.allClippedDrawRect.x = aT;\n aV.allClippedDrawRect.y = aR;\n aV.allClippedDrawRect.width = aQ;\n aV.allClippedDrawRect.height = aY;\n aV.isUsing = true;\n }\n}\n;\nW.prototype.setupLayoutBounds = function(aQ) {\n var aI = aQ / W.CHANNEL_COUNT;\n var aP = aQ % W.CHANNEL_COUNT;\n aI = ~~aI;\n aP = ~~aP;\n var aH = 0;\n for (var aJ = 0; aJ < W.CHANNEL_COUNT; aJ++) {\n var aM = aI + (aJ < aP ? 1 : 0);\n if (aM == 0) {} else {\n if (aM == 1) {\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = 0;\n aL.layoutBounds.y = 0;\n aL.layoutBounds.width = 1;\n aL.layoutBounds.height = 1;\n } else {\n if (aM == 2) {\n for (var aO = 0; aO < aM; aO++) {\n var aN = aO % 2;\n var aK = 0;\n aN = ~~aN;\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = aN * 0.5;\n aL.layoutBounds.y = 0;\n aL.layoutBounds.width = 0.5;\n aL.layoutBounds.height = 1;\n }\n } else {\n if (aM <= 4) {\n for (var aO = 0; aO < aM; aO++) {\n var aN = aO % 2;\n var aK = aO / 2;\n aN = ~~aN;\n aK = ~~aK;\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = aN * 0.5;\n aL.layoutBounds.y = aK * 0.5;\n aL.layoutBounds.width = 0.5;\n aL.layoutBounds.height = 0.5;\n }\n } else {\n if (aM <= 9) {\n for (var aO = 0; aO < aM; aO++) {\n var aN = aO % 3;\n var aK = aO / 3;\n aN = ~~aN;\n aK = ~~aK;\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = aN / 3;\n aL.layoutBounds.y = aK / 3;\n aL.layoutBounds.width = 1 / 3;\n aL.layoutBounds.height = 1 / 3;\n }\n } else {\n q._$li(\"_$6 _$0P mask count : %d\", aM);\n }\n }\n }\n }\n }\n }\n}\n;\nfunction U(aH, aK, aI) {\n this.clipIDList = new Array();\n this.clipIDList = aI;\n this.clippingMaskDrawIndexList = new Array();\n for (var aJ = 0; aJ < aI.length; aJ++) {\n this.clippingMaskDrawIndexList.push(aK.getDrawDataIndex(aI[aJ]));\n }\n this.clippedDrawContextList = new Array();\n this.isUsing = true;\n this.layoutChannelNo = 0;\n this.layoutBounds = new av();\n this.allClippedDrawRect = new av();\n this.matrixForMask = new Float32Array(16);\n this.matrixForDraw = new Float32Array(16);\n this.owner = aH;\n}\nU.prototype.addClippedDrawData = function(aJ, aI) {\n var aH = new R(aJ,aI);\n this.clippedDrawContextList.push(aH);\n}\n;\nfunction R(aI, aH) {\n this._$gP = aI;\n this.drawDataIndex = aH;\n}\nfunction I() {\n if (j) {\n return;\n }\n this.color = null;\n}\nfunction ah() {\n if (j) {\n return;\n }\n this._$dP = null;\n this._$eo = null;\n this._$V0 = null;\n this._$dP = 1000;\n this._$eo = 1000;\n this._$V0 = 1;\n this._$a0();\n}\nah._$JT = function(aP, aN, aO) {\n var aQ = aP / aN;\n var a1 = aO / aN;\n var aU = a1;\n var aZ = 1 / 3;\n var aR = 2 / 3;\n var a0 = 1 - (1 - a1) * (1 - a1);\n var a2 = 1 - (1 - aU) * (1 - aU);\n var aM = 0;\n var aL = ((1 - a1) * aZ) * a0 + (aU * aR + (1 - aU) * aZ) * (1 - a0);\n var aK = (aU + (1 - aU) * aR) * a2 + (a1 * aZ + (1 - a1) * aR) * (1 - a2);\n var aJ = 1;\n var aY = aJ - 3 * aK + 3 * aL - aM;\n var aX = 3 * aK - 6 * aL + 3 * aM;\n var aW = 3 * aL - 3 * aM;\n var aV = aM;\n if (aQ <= 0) {\n return 0;\n } else {\n if (aQ >= 1) {\n return 1;\n }\n }\n var aS = aQ;\n var aI = aS * aS;\n var aH = aS * aI;\n var aT = aY * aH + aX * aI + aW * aS + aV;\n return aT;\n}\n;\nah.prototype._$a0 = function() {}\n;\nah.prototype.setFadeIn = function(aH) {\n this._$dP = aH;\n}\n;\nah.prototype.setFadeOut = function(aH) {\n this._$eo = aH;\n}\n;\nah.prototype._$pT = function(aH) {\n this._$V0 = aH;\n}\n;\nah.prototype.getFadeOut = function() {\n return this._$eo;\n}\n;\nah.prototype._$4T = function() {\n return this._$eo;\n}\n;\nah.prototype._$mT = function() {\n return this._$V0;\n}\n;\nah.prototype.getDurationMSec = function() {\n return -1;\n}\n;\nah.prototype.getLoopDurationMSec = function() {\n return -1;\n}\n;\nah.prototype.updateParam = function(aJ, aN) {\n if (!aN._$AT || aN._$9L) {\n return;\n }\n var aL = P.getUserTimeMSec();\n if (aN._$z2 < 0) {\n aN._$z2 = aL;\n aN._$bs = aL;\n var aM = this.getDurationMSec();\n if (aN._$Do < 0) {\n aN._$Do = (aM <= 0) ? -1 : aN._$z2 + aM;\n }\n }\n var aI = this._$V0;\n var aH = (this._$dP == 0) ? 1 : A._$r2(((aL - aN._$bs) / (this._$dP)));\n var aK = (this._$eo == 0 || aN._$Do < 0) ? 1 : A._$r2(((aN._$Do - aL) / (this._$eo)));\n aI = aI * aH * aK;\n if (!((0 <= aI && aI <= 1))) {\n console.log(\"### assert!! ### \");\n }\n this.updateParamExe(aJ, aL, aI, aN);\n if (aN._$Do > 0 && aN._$Do < aL) {\n aN._$9L = true;\n }\n}\n;\nah.prototype.updateParamExe = function(aH, aI, aJ, aK) {}\n;\nfunction q() {}\nq._$8s = 0;\nq._$fT = new Object();\nq.start = function(aI) {\n var aH = q._$fT[aI];\n if (aH == null) {\n aH = new af();\n aH._$r = aI;\n q._$fT[aI] = aH;\n }\n aH._$0S = P.getSystemTimeMSec();\n}\n;\nq.dump = function(aJ) {\n var aH = q._$fT[aJ];\n if (aH != null) {\n var aI = P.getSystemTimeMSec();\n var aK = aI - aH._$0S;\n console.log(aJ + \" : \" + aK + \"ms\");\n return aK;\n } else {\n return -1;\n }\n}\n;\nq.end = function(aJ) {\n var aH = q._$fT[aJ];\n if (aH != null) {\n var aI = P.getSystemTimeMSec();\n return aI - aH._$0S;\n } else {\n return -1;\n }\n}\n;\nq._$li = function(aI, aH) {\n console.log(\"_$li : \" + aI + \"\\n\", aH);\n}\n;\nq._$Ji = function(aI, aH) {\n console.log(aI, aH);\n}\n;\nq._$dL = function(aI, aH) {\n console.log(aI, aH);\n console.log(\"\\n\");\n}\n;\nq._$KL = function(aJ, aI) {\n for (var aH = 0; aH < aI; aH++) {\n if (aH % 16 == 0 && aH > 0) {\n console.log(\"\\n\");\n } else {\n if (aH % 8 == 0 && aH > 0) {\n console.log(\" \");\n }\n }\n console.log(\"%02X \", (aJ[aH] & 255));\n }\n console.log(\"\\n\");\n}\n;\nq._$nr = function(aL, aI, aK) {\n console.log(\"%s\\n\", aL);\n var aH = aI.length;\n for (var aJ = 0; aJ < aH; ++aJ) {\n console.log(\"%5d\", aI[aJ]);\n console.log(\"%s\\n\", aK);\n console.log(\",\");\n }\n console.log(\"\\n\");\n}\n;\nq._$Rb = function(aH) {\n console.log(\"dump exception : \" + aH);\n console.log(\"stack :: \" + aH.stack);\n}\n;\nfunction af() {\n this._$r = null;\n this._$0S = null;\n}\nfunction F() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n this.width = null;\n this.height = null;\n}\nF.prototype._$8P = function() {\n return 0.5 * (this.x + this.x + this.width);\n}\n;\nF.prototype._$6P = function() {\n return 0.5 * (this.y + this.y + this.height);\n}\n;\nF.prototype._$EL = function() {\n return this.x + this.width;\n}\n;\nF.prototype._$5T = function() {\n return this.y + this.height;\n}\n;\nF.prototype._$jL = function(aI, aK, aJ, aH) {\n this.x = aI;\n this.y = aK;\n this.width = aJ;\n this.height = aH;\n}\n;\nF.prototype._$jL = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n this.width = aH.width;\n this.height = aH.height;\n}\n;\nfunction i(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\ni.prototype = new ak();\ni._$tP = new Object();\ni._$27 = function() {\n i._$tP.clear();\n}\n;\ni.getID = function(aH) {\n var aI = i._$tP[aH];\n if (aI == null) {\n aI = new i(aH);\n i._$tP[aH] = aI;\n }\n return aI;\n}\n;\ni.prototype._$3s = function() {\n return new i();\n}\n;\nfunction S() {}\nfunction z(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\nz.prototype = new ak();\nz._$tP = new Object();\nz._$27 = function() {\n z._$tP.clear();\n}\n;\nz.getID = function(aH) {\n var aI = z._$tP[aH];\n if (aI == null) {\n aI = new z(aH);\n z._$tP[aH] = aI;\n }\n return aI;\n}\n;\nz.prototype._$3s = function() {\n return new z();\n}\n;\nfunction w() {\n if (j) {\n return;\n }\n this._$vo = null;\n this._$F2 = null;\n this._$ao = 400;\n this._$1S = 400;\n w._$42++;\n}\nw._$42 = 0;\nw.prototype._$zP = function() {\n if (this._$vo == null) {\n this._$vo = new an();\n }\n if (this._$F2 == null) {\n this._$F2 = new Array();\n }\n}\n;\nw.prototype.getCanvasWidth = function() {\n return this._$ao;\n}\n;\nw.prototype.getCanvasHeight = function() {\n return this._$1S;\n}\n;\nw.prototype._$F0 = function(aH) {\n this._$vo = aH._$nP();\n this._$F2 = aH._$nP();\n this._$ao = aH._$6L();\n this._$1S = aH._$6L();\n}\n;\nw.prototype._$6S = function(aH) {\n this._$F2.push(aH);\n}\n;\nw.prototype._$Xr = function() {\n return this._$F2;\n}\n;\nw.prototype._$E2 = function() {\n return this._$vo;\n}\n;\nfunction u() {\n if (j) {\n return;\n }\n this.p1 = new N();\n this.p2 = new N();\n this._$Fo = 0;\n this._$Db = 0;\n this._$L2 = 0;\n this._$M2 = 0;\n this._$ks = 0;\n this._$9b = 0;\n this._$iP = 0;\n this._$iT = 0;\n this._$lL = new Array();\n this._$qP = new Array();\n this.setup(0.3, 0.5, 0.1);\n}\nu.prototype.setup = function(aJ, aI, aH) {\n this._$ks = this._$Yb();\n this.p2._$xT();\n if (arguments.length == 3) {\n this._$Fo = aJ;\n this._$L2 = aI;\n this.p1._$p = aH;\n this.p2._$p = aH;\n this.p2.y = aJ;\n this.setup();\n }\n}\n;\nu.prototype.getPhysicsPoint1 = function() {\n return this.p1;\n}\n;\nu.prototype.getPhysicsPoint2 = function() {\n return this.p2;\n}\n;\nu.prototype._$qr = function() {\n return this._$Db;\n}\n;\nu.prototype._$pr = function(aH) {\n this._$Db = aH;\n}\n;\nu.prototype._$5r = function() {\n return this._$M2;\n}\n;\nu.prototype._$Cs = function() {\n return this._$9b;\n}\n;\nu.prototype._$Yb = function() {\n return (-180 * (Math.atan2(this.p1.x - this.p2.x, -(this.p1.y - this.p2.y))) / Math.PI);\n}\n;\nu.prototype.addSrcParam = function(aJ, aH, aL, aI) {\n var aK = new h(aJ,aH,aL,aI);\n this._$lL.push(aK);\n}\n;\nu.prototype.addTargetParam = function(aJ, aH, aK, aI) {\n var aL = new aF(aJ,aH,aK,aI);\n this._$qP.push(aL);\n}\n;\nu.prototype.update = function(aI, aL) {\n if (this._$iP == 0) {\n this._$iP = this._$iT = aL;\n this._$Fo = (Math.sqrt((this.p1.x - this.p2.x) * (this.p1.x - this.p2.x) + (this.p1.y - this.p2.y) * (this.p1.y - this.p2.y)));\n return;\n }\n var aK = (aL - this._$iT) / 1000;\n if (aK != 0) {\n for (var aJ = this._$lL.length - 1; aJ >= 0; --aJ) {\n var aM = this._$lL[aJ];\n aM._$oP(aI, this);\n }\n this._$oo(aI, aK);\n this._$M2 = this._$Yb();\n this._$9b = (this._$M2 - this._$ks) / aK;\n this._$ks = this._$M2;\n }\n for (var aJ = this._$qP.length - 1; aJ >= 0; --aJ) {\n var aH = this._$qP[aJ];\n aH._$YS(aI, this);\n }\n this._$iT = aL;\n}\n;\nu.prototype._$oo = function(aN, aI) {\n if (aI < 0.033) {\n aI = 0.033;\n }\n var aU = 1 / aI;\n this.p1.vx = (this.p1.x - this.p1._$s0) * aU;\n this.p1.vy = (this.p1.y - this.p1._$70) * aU;\n this.p1.ax = (this.p1.vx - this.p1._$7L) * aU;\n this.p1.ay = (this.p1.vy - this.p1._$HL) * aU;\n this.p1.fx = this.p1.ax * this.p1._$p;\n this.p1.fy = this.p1.ay * this.p1._$p;\n this.p1._$xT();\n var aM = -(Math.atan2((this.p1.y - this.p2.y), this.p1.x - this.p2.x));\n var aL;\n var aV;\n var aR = Math.cos(aM);\n var aH = Math.sin(aM);\n var aW = 9.8 * this.p2._$p;\n var aQ = (this._$Db * aC._$bS);\n var aP = (aW * Math.cos(aM - aQ));\n aL = (aP * aH);\n aV = (aP * aR);\n var aK = (-this.p1.fx * aH * aH);\n var aT = (-this.p1.fy * aH * aR);\n var aJ = ((-this.p2.vx * this._$L2));\n var aS = ((-this.p2.vy * this._$L2));\n this.p2.fx = ((aL + aK + aJ));\n this.p2.fy = ((aV + aT + aS));\n this.p2.ax = this.p2.fx / this.p2._$p;\n this.p2.ay = this.p2.fy / this.p2._$p;\n this.p2.vx += this.p2.ax * aI;\n this.p2.vy += this.p2.ay * aI;\n this.p2.x += this.p2.vx * aI;\n this.p2.y += this.p2.vy * aI;\n var aO = (Math.sqrt((this.p1.x - this.p2.x) * (this.p1.x - this.p2.x) + (this.p1.y - this.p2.y) * (this.p1.y - this.p2.y)));\n this.p2.x = this.p1.x + this._$Fo * (this.p2.x - this.p1.x) / aO;\n this.p2.y = this.p1.y + this._$Fo * (this.p2.y - this.p1.y) / aO;\n this.p2.vx = (this.p2.x - this.p2._$s0) * aU;\n this.p2.vy = (this.p2.y - this.p2._$70) * aU;\n this.p2._$xT();\n}\n;\nfunction N() {\n this._$p = 1;\n this.x = 0;\n this.y = 0;\n this.vx = 0;\n this.vy = 0;\n this.ax = 0;\n this.ay = 0;\n this.fx = 0;\n this.fy = 0;\n this._$s0 = 0;\n this._$70 = 0;\n this._$7L = 0;\n this._$HL = 0;\n}\nN.prototype._$xT = function() {\n this._$s0 = this.x;\n this._$70 = this.y;\n this._$7L = this.vx;\n this._$HL = this.vy;\n}\n;\nfunction at(aJ, aI, aH) {\n this._$wL = null;\n this.scale = null;\n this._$V0 = null;\n this._$wL = aJ;\n this.scale = aI;\n this._$V0 = aH;\n}\nat.prototype._$oP = function(aI, aH) {}\n;\nfunction h(aJ, aK, aI, aH) {\n at.prototype.constructor.call(this, aK, aI, aH);\n this._$tL = null;\n this._$tL = aJ;\n}\nh.prototype = new at();\nh.prototype._$oP = function(aJ, aH) {\n var aK = this.scale * aJ.getParamFloat(this._$wL);\n var aL = aH.getPhysicsPoint1();\n switch (this._$tL) {\n default:\n case u.Src.SRC_TO_X:\n aL.x = aL.x + (aK - aL.x) * this._$V0;\n break;\n case u.Src.SRC_TO_Y:\n aL.y = aL.y + (aK - aL.y) * this._$V0;\n break;\n case u.Src.SRC_TO_G_ANGLE:\n var aI = aH._$qr();\n aI = aI + (aK - aI) * this._$V0;\n aH._$pr(aI);\n break;\n }\n}\n;\nfunction d(aJ, aI, aH) {\n this._$wL = null;\n this.scale = null;\n this._$V0 = null;\n this._$wL = aJ;\n this.scale = aI;\n this._$V0 = aH;\n}\nd.prototype._$YS = function(aI, aH) {}\n;\nfunction aF(aI, aK, aJ, aH) {\n d.prototype.constructor.call(this, aK, aJ, aH);\n this._$YP = null;\n this._$YP = aI;\n}\naF.prototype = new d();\naF.prototype._$YS = function(aI, aH) {\n switch (this._$YP) {\n default:\n case u.Target.TARGET_FROM_ANGLE:\n aI.setParamFloat(this._$wL, this.scale * aH._$5r(), this._$V0);\n break;\n case u.Target.TARGET_FROM_ANGLE_V:\n aI.setParamFloat(this._$wL, this.scale * aH._$Cs(), this._$V0);\n break;\n }\n}\n;\nu.Src = function() {}\n;\nu.Src.SRC_TO_X = \"SRC_TO_X\";\nu.Src.SRC_TO_Y = \"SRC_TO_Y\";\nu.Src.SRC_TO_G_ANGLE = \"SRC_TO_G_ANGLE\";\nu.Target = function() {}\n;\nu.Target.TARGET_FROM_ANGLE = \"TARGET_FROM_ANGLE\";\nu.Target.TARGET_FROM_ANGLE_V = \"TARGET_FROM_ANGLE_V\";\nfunction X() {\n if (j) {\n return;\n }\n this._$fL = 0;\n this._$gL = 0;\n this._$B0 = 1;\n this._$z0 = 1;\n this._$qT = 0;\n this.reflectX = false;\n this.reflectY = false;\n}\nX.prototype.init = function(aH) {\n this._$fL = aH._$fL;\n this._$gL = aH._$gL;\n this._$B0 = aH._$B0;\n this._$z0 = aH._$z0;\n this._$qT = aH._$qT;\n this.reflectX = aH.reflectX;\n this.reflectY = aH.reflectY;\n}\n;\nX.prototype._$F0 = function(aH) {\n this._$fL = aH._$_T();\n this._$gL = aH._$_T();\n this._$B0 = aH._$_T();\n this._$z0 = aH._$_T();\n this._$qT = aH._$_T();\n if (aH.getFormatVersion() >= ay.LIVE2D_FORMAT_VERSION_V2_10_SDK2) {\n this.reflectX = aH._$po();\n this.reflectY = aH._$po();\n }\n}\n;\nX.prototype._$e = function() {}\n;\nvar ad = function() {};\nad._$ni = function(aL, aJ, aR, aQ, aK, aI, aH, aS, aN) {\n var aM = (aH * aI - aS * aK);\n if (aM == 0) {\n return null;\n } else {\n var aO = ((aL - aR) * aI - (aJ - aQ) * aK) / aM;\n var aP;\n if (aK != 0) {\n aP = (aL - aR - aO * aH) / aK;\n } else {\n aP = (aJ - aQ - aO * aS) / aI;\n }\n if (isNaN(aP)) {\n aP = (aL - aR - aO * aH) / aK;\n if (isNaN(aP)) {\n aP = (aJ - aQ - aO * aS) / aI;\n }\n if (isNaN(aP)) {\n console.log(\"a is NaN @UtVector#_$ni() \");\n console.log(\"v1x : \" + aK);\n console.log(\"v1x != 0 ? \" + (aK != 0));\n }\n }\n if (aN == null) {\n return new Array(aP,aO);\n } else {\n aN[0] = aP;\n aN[1] = aO;\n return aN;\n }\n }\n}\n;\nfunction av() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n this.width = null;\n this.height = null;\n}\nav.prototype._$8P = function() {\n return this.x + 0.5 * this.width;\n}\n;\nav.prototype._$6P = function() {\n return this.y + 0.5 * this.height;\n}\n;\nav.prototype._$EL = function() {\n return this.x + this.width;\n}\n;\nav.prototype._$5T = function() {\n return this.y + this.height;\n}\n;\nav.prototype._$jL = function(aI, aK, aJ, aH) {\n this.x = aI;\n this.y = aK;\n this.width = aJ;\n this.height = aH;\n}\n;\nav.prototype._$jL = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n this.width = aH.width;\n this.height = aH.height;\n}\n;\nav.prototype.contains = function(aH, aI) {\n return this.x <= this.x && this.y <= this.y && (this.x <= this.x + this.width) && (this.y <= this.y + this.height);\n}\n;\nav.prototype.expand = function(aH, aI) {\n this.x -= aH;\n this.y -= aI;\n this.width += aH * 2;\n this.height += aI * 2;\n}\n;\nfunction aG() {}\naG._$Z2 = function(bb, bo, bp, a2) {\n var a1 = bo._$Q2(bb, bp);\n var a3 = bb._$vs();\n var ba = bb._$Tr();\n bo._$zr(a3, ba, a1);\n if (a1 <= 0) {\n return a2[a3[0]];\n } else {\n if (a1 == 1) {\n var bj = a2[a3[0]];\n var bi = a2[a3[1]];\n var a9 = ba[0];\n return (bj + (bi - bj) * a9) | 0;\n } else {\n if (a1 == 2) {\n var bj = a2[a3[0]];\n var bi = a2[a3[1]];\n var a0 = a2[a3[2]];\n var aZ = a2[a3[3]];\n var a9 = ba[0];\n var a8 = ba[1];\n var br = (bj + (bi - bj) * a9) | 0;\n var bq = (a0 + (aZ - a0) * a9) | 0;\n return (br + (bq - br) * a8) | 0;\n } else {\n if (a1 == 3) {\n var aP = a2[a3[0]];\n var aO = a2[a3[1]];\n var bn = a2[a3[2]];\n var bm = a2[a3[3]];\n var aK = a2[a3[4]];\n var aJ = a2[a3[5]];\n var bg = a2[a3[6]];\n var bf = a2[a3[7]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var bj = (aP + (aO - aP) * a9) | 0;\n var bi = (bn + (bm - bn) * a9) | 0;\n var a0 = (aK + (aJ - aK) * a9) | 0;\n var aZ = (bg + (bf - bg) * a9) | 0;\n var br = (bj + (bi - bj) * a8) | 0;\n var bq = (a0 + (aZ - a0) * a8) | 0;\n return (br + (bq - br) * a6) | 0;\n } else {\n if (a1 == 4) {\n var aT = a2[a3[0]];\n var aS = a2[a3[1]];\n var bu = a2[a3[2]];\n var bt = a2[a3[3]];\n var aN = a2[a3[4]];\n var aM = a2[a3[5]];\n var bl = a2[a3[6]];\n var bk = a2[a3[7]];\n var be = a2[a3[8]];\n var bc = a2[a3[9]];\n var aX = a2[a3[10]];\n var aW = a2[a3[11]];\n var a7 = a2[a3[12]];\n var a5 = a2[a3[13]];\n var aR = a2[a3[14]];\n var aQ = a2[a3[15]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var a4 = ba[3];\n var aP = (aT + (aS - aT) * a9) | 0;\n var aO = (bu + (bt - bu) * a9) | 0;\n var bn = (aN + (aM - aN) * a9) | 0;\n var bm = (bl + (bk - bl) * a9) | 0;\n var aK = (be + (bc - be) * a9) | 0;\n var aJ = (aX + (aW - aX) * a9) | 0;\n var bg = (a7 + (a5 - a7) * a9) | 0;\n var bf = (aR + (aQ - aR) * a9) | 0;\n var bj = (aP + (aO - aP) * a8) | 0;\n var bi = (bn + (bm - bn) * a8) | 0;\n var a0 = (aK + (aJ - aK) * a8) | 0;\n var aZ = (bg + (bf - bg) * a8) | 0;\n var br = (bj + (bi - bj) * a6) | 0;\n var bq = (a0 + (aZ - a0) * a6) | 0;\n return (br + (bq - br) * a4) | 0;\n } else {\n var aV = 1 << a1;\n var aY = new Float32Array(aV);\n for (var bh = 0; bh < aV; bh++) {\n var aI = bh;\n var aH = 1;\n for (var aL = 0; aL < a1; aL++) {\n aH *= (aI % 2 == 0) ? (1 - ba[aL]) : ba[aL];\n aI /= 2;\n }\n aY[bh] = aH;\n }\n var bs = new Float32Array(aV);\n for (var aU = 0; aU < aV; aU++) {\n bs[aU] = a2[a3[aU]];\n }\n var bd = 0;\n for (var aU = 0; aU < aV; aU++) {\n bd += aY[aU] * bs[aU];\n }\n return (bd + 0.5) | 0;\n }\n }\n }\n }\n }\n}\n;\naG._$br = function(ba, bo, bp, bg) {\n var a1 = bo._$Q2(ba, bp);\n var a2 = ba._$vs();\n var a9 = ba._$Tr();\n bo._$zr(a2, a9, a1);\n if (a1 <= 0) {\n return bg[a2[0]];\n } else {\n if (a1 == 1) {\n var bj = bg[a2[0]];\n var bi = bg[a2[1]];\n var a8 = a9[0];\n return bj + (bi - bj) * a8;\n } else {\n if (a1 == 2) {\n var bj = bg[a2[0]];\n var bi = bg[a2[1]];\n var a0 = bg[a2[2]];\n var aZ = bg[a2[3]];\n var a8 = a9[0];\n var a7 = a9[1];\n return (1 - a7) * (bj + (bi - bj) * a8) + a7 * (a0 + (aZ - a0) * a8);\n } else {\n if (a1 == 3) {\n var aP = bg[a2[0]];\n var aO = bg[a2[1]];\n var bn = bg[a2[2]];\n var bm = bg[a2[3]];\n var aK = bg[a2[4]];\n var aJ = bg[a2[5]];\n var bf = bg[a2[6]];\n var be = bg[a2[7]];\n var a8 = a9[0];\n var a7 = a9[1];\n var a5 = a9[2];\n return (1 - a5) * ((1 - a7) * (aP + (aO - aP) * a8) + a7 * (bn + (bm - bn) * a8)) + a5 * ((1 - a7) * (aK + (aJ - aK) * a8) + a7 * (bf + (be - bf) * a8));\n } else {\n if (a1 == 4) {\n var aT = bg[a2[0]];\n var aS = bg[a2[1]];\n var bs = bg[a2[2]];\n var br = bg[a2[3]];\n var aN = bg[a2[4]];\n var aM = bg[a2[5]];\n var bl = bg[a2[6]];\n var bk = bg[a2[7]];\n var bd = bg[a2[8]];\n var bb = bg[a2[9]];\n var aX = bg[a2[10]];\n var aW = bg[a2[11]];\n var a6 = bg[a2[12]];\n var a4 = bg[a2[13]];\n var aR = bg[a2[14]];\n var aQ = bg[a2[15]];\n var a8 = a9[0];\n var a7 = a9[1];\n var a5 = a9[2];\n var a3 = a9[3];\n return (1 - a3) * ((1 - a5) * ((1 - a7) * (aT + (aS - aT) * a8) + a7 * (bs + (br - bs) * a8)) + a5 * ((1 - a7) * (aN + (aM - aN) * a8) + a7 * (bl + (bk - bl) * a8))) + a3 * ((1 - a5) * ((1 - a7) * (bd + (bb - bd) * a8) + a7 * (aX + (aW - aX) * a8)) + a5 * ((1 - a7) * (a6 + (a4 - a6) * a8) + a7 * (aR + (aQ - aR) * a8)));\n } else {\n var aV = 1 << a1;\n var aY = new Float32Array(aV);\n for (var bh = 0; bh < aV; bh++) {\n var aI = bh;\n var aH = 1;\n for (var aL = 0; aL < a1; aL++) {\n aH *= (aI % 2 == 0) ? (1 - a9[aL]) : a9[aL];\n aI /= 2;\n }\n aY[bh] = aH;\n }\n var bq = new Float32Array(aV);\n for (var aU = 0; aU < aV; aU++) {\n bq[aU] = bg[a2[aU]];\n }\n var bc = 0;\n for (var aU = 0; aU < aV; aU++) {\n bc += aY[aU] * bq[aU];\n }\n return bc;\n }\n }\n }\n }\n }\n}\n;\naG._$Vr = function(bV, bW, a5, aI, bC, a3, bX, bH) {\n var aN = bW._$Q2(bV, a5);\n var bw = bV._$vs();\n var a2 = bV._$Tr();\n bW._$zr(bw, a2, aN);\n var aJ = aI * 2;\n var aQ = bX;\n if (aN <= 0) {\n var bI = bw[0];\n var bq = bC[bI];\n if (bH == 2 && bX == 0) {\n P._$jT(bq, 0, a3, 0, aJ);\n } else {\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = bq[bt++];\n a3[aQ + 1] = bq[bt++];\n aQ += bH;\n }\n }\n } else {\n if (aN == 1) {\n var bq = bC[bw[0]];\n var bp = bC[bw[1]];\n var b3 = a2[0];\n var bT = 1 - b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = bq[bt] * bT + bp[bt] * b3;\n ++bt;\n a3[aQ + 1] = bq[bt] * bT + bp[bt] * b3;\n ++bt;\n aQ += bH;\n }\n } else {\n if (aN == 2) {\n var bq = bC[bw[0]];\n var bp = bC[bw[1]];\n var aZ = bC[bw[2]];\n var aY = bC[bw[3]];\n var b3 = a2[0];\n var b1 = a2[1];\n var bT = 1 - b3;\n var bP = 1 - b1;\n var b2 = bP * bT;\n var b0 = bP * b3;\n var bM = b1 * bT;\n var bL = b1 * b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = b2 * bq[bt] + b0 * bp[bt] + bM * aZ[bt] + bL * aY[bt];\n ++bt;\n a3[aQ + 1] = b2 * bq[bt] + b0 * bp[bt] + bM * aZ[bt] + bL * aY[bt];\n ++bt;\n aQ += bH;\n }\n } else {\n if (aN == 3) {\n var ba = bC[bw[0]];\n var a9 = bC[bw[1]];\n var aP = bC[bw[2]];\n var aO = bC[bw[3]];\n var a6 = bC[bw[4]];\n var a4 = bC[bw[5]];\n var aL = bC[bw[6]];\n var aK = bC[bw[7]];\n var b3 = a2[0];\n var b1 = a2[1];\n var bZ = a2[2];\n var bT = 1 - b3;\n var bP = 1 - b1;\n var bN = 1 - bZ;\n var b8 = bN * bP * bT;\n var b7 = bN * bP * b3;\n var bU = bN * b1 * bT;\n var bS = bN * b1 * b3;\n var b6 = bZ * bP * bT;\n var b5 = bZ * bP * b3;\n var bQ = bZ * b1 * bT;\n var bO = bZ * b1 * b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = b8 * ba[bt] + b7 * a9[bt] + bU * aP[bt] + bS * aO[bt] + b6 * a6[bt] + b5 * a4[bt] + bQ * aL[bt] + bO * aK[bt];\n ++bt;\n a3[aQ + 1] = b8 * ba[bt] + b7 * a9[bt] + bU * aP[bt] + bS * aO[bt] + b6 * a6[bt] + b5 * a4[bt] + bQ * aL[bt] + bO * aK[bt];\n ++bt;\n aQ += bH;\n }\n } else {\n if (aN == 4) {\n var bD = bC[bw[0]];\n var bB = bC[bw[1]];\n var bo = bC[bw[2]];\n var bm = bC[bw[3]];\n var by = bC[bw[4]];\n var bx = bC[bw[5]];\n var be = bC[bw[6]];\n var bd = bC[bw[7]];\n var bG = bC[bw[8]];\n var bE = bC[bw[9]];\n var bv = bC[bw[10]];\n var bu = bC[bw[11]];\n var bA = bC[bw[12]];\n var bz = bC[bw[13]];\n var bn = bC[bw[14]];\n var bl = bC[bw[15]];\n var b3 = a2[0];\n var b1 = a2[1];\n var bZ = a2[2];\n var bY = a2[3];\n var bT = 1 - b3;\n var bP = 1 - b1;\n var bN = 1 - bZ;\n var bK = 1 - bY;\n var bk = bK * bN * bP * bT;\n var bi = bK * bN * bP * b3;\n var aW = bK * bN * b1 * bT;\n var aV = bK * bN * b1 * b3;\n var bc = bK * bZ * bP * bT;\n var bb = bK * bZ * bP * b3;\n var aS = bK * bZ * b1 * bT;\n var aR = bK * bZ * b1 * b3;\n var bs = bY * bN * bP * bT;\n var br = bY * bN * bP * b3;\n var a1 = bY * bN * b1 * bT;\n var a0 = bY * bN * b1 * b3;\n var bh = bY * bZ * bP * bT;\n var bf = bY * bZ * bP * b3;\n var aU = bY * bZ * b1 * bT;\n var aT = bY * bZ * b1 * b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = bk * bD[bt] + bi * bB[bt] + aW * bo[bt] + aV * bm[bt] + bc * by[bt] + bb * bx[bt] + aS * be[bt] + aR * bd[bt] + bs * bG[bt] + br * bE[bt] + a1 * bv[bt] + a0 * bu[bt] + bh * bA[bt] + bf * bz[bt] + aU * bn[bt] + aT * bl[bt];\n ++bt;\n a3[aQ + 1] = bk * bD[bt] + bi * bB[bt] + aW * bo[bt] + aV * bm[bt] + bc * by[bt] + bb * bx[bt] + aS * be[bt] + aR * bd[bt] + bs * bG[bt] + br * bE[bt] + a1 * bv[bt] + a0 * bu[bt] + bh * bA[bt] + bf * bz[bt] + aU * bn[bt] + aT * bl[bt];\n ++bt;\n aQ += bH;\n }\n } else {\n var b4 = 1 << aN;\n var bJ = new Float32Array(b4);\n for (var bj = 0; bj < b4; bj++) {\n var aH = bj;\n var aM = 1;\n for (var bF = 0; bF < aN; bF++) {\n aM *= (aH % 2 == 0) ? (1 - a2[bF]) : a2[bF];\n aH /= 2;\n }\n bJ[bj] = aM;\n }\n var bg = new Float32Array(b4);\n for (var aX = 0; aX < b4; aX++) {\n bg[aX] = bC[bw[aX]];\n }\n for (var bt = 0; bt < aJ; ) {\n var a8 = 0\n , a7 = 0;\n var bR = bt + 1;\n for (var aX = 0; aX < b4; aX++) {\n a8 += bJ[aX] * bg[aX][bt];\n a7 += bJ[aX] * bg[aX][bR];\n }\n bt += 2;\n a3[aQ] = a8;\n a3[aQ + 1] = a7;\n aQ += bH;\n }\n }\n }\n }\n }\n }\n}\n;\nfunction e() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n}\ne.prototype._$HT = function(aH, aI) {\n this.x = aH;\n this.y = aI;\n}\n;\ne.prototype._$HT = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n}\n;\nfunction ae() {\n if (j) {\n return;\n }\n this._$gP = null;\n this._$dr = null;\n this._$GS = null;\n this._$qb = null;\n this._$Lb = null;\n this._$mS = null;\n this.clipID = null;\n this.clipIDList = new Array();\n}\nae._$ur = -2;\nae._$ES = 500;\nae._$wb = 2;\nae._$8S = 3;\nae._$52 = ae._$ES;\nae._$R2 = ae._$ES;\nae._$or = function() {\n return ae._$52;\n}\n;\nae._$Pr = function() {\n return ae._$R2;\n}\n;\nae.prototype.convertClipIDForV2_11 = function(aI) {\n var aH = [];\n if (aI == null) {\n return null;\n }\n if (aI.length == 0) {\n return null;\n }\n if (!/,/.test(aI)) {\n aH.push(aI.id);\n return aH;\n }\n aH = aI.id.split(\",\");\n return aH;\n}\n;\nae.prototype._$F0 = function(aH) {\n this._$gP = aH._$nP();\n this._$dr = aH._$nP();\n this._$GS = aH._$nP();\n this._$qb = aH._$6L();\n this._$Lb = aH._$cS();\n this._$mS = aH._$Tb();\n if (aH.getFormatVersion() >= ay._$T7) {\n this.clipID = aH._$nP();\n this.clipIDList = this.convertClipIDForV2_11(this.clipID);\n } else {\n this.clipIDList = [];\n }\n this._$MS(this._$Lb);\n}\n;\nae.prototype.getClipIDList = function() {\n return this.clipIDList;\n}\n;\nae.prototype.init = function(aH) {}\n;\nae.prototype._$Nr = function(aH, aI) {\n aI._$IS[0] = false;\n aI._$Us = aG._$Z2(aH, this._$GS, aI._$IS, this._$Lb);\n if (Q._$Zs) {} else {\n if (aI._$IS[0]) {\n return;\n }\n }\n aI._$7s = aG._$br(aH, this._$GS, aI._$IS, this._$mS);\n}\n;\nae.prototype._$2b = function(aH, aI) {}\n;\nae.prototype.getDrawDataID = function() {\n return this._$gP;\n}\n;\nae.prototype._$j2 = function(aH) {\n this._$gP = aH;\n}\n;\nae.prototype.getOpacity = function(aH, aI) {\n return aI._$7s;\n}\n;\nae.prototype._$zS = function(aH, aI) {\n return aI._$Us;\n}\n;\nae.prototype._$MS = function(aJ) {\n for (var aI = aJ.length - 1; aI >= 0; --aI) {\n var aH = aJ[aI];\n if (aH < ae._$52) {\n ae._$52 = aH;\n } else {\n if (aH > ae._$R2) {\n ae._$R2 = aH;\n }\n }\n }\n}\n;\nae.prototype.getTargetBaseDataID = function() {\n return this._$dr;\n}\n;\nae.prototype._$gs = function(aH) {\n this._$dr = aH;\n}\n;\nae.prototype._$32 = function() {\n return (this._$dr != null && (this._$dr != n._$2o()));\n}\n;\nae.prototype.preDraw = function(aJ, aH, aI) {}\n;\nae.prototype.draw = function(aJ, aH, aI) {}\n;\nae.prototype.getType = function() {}\n;\nae.prototype._$B2 = function(aI, aH, aJ) {}\n;\nfunction ax() {\n if (j) {\n return;\n }\n this._$Eb = ax._$ps;\n this._$lT = 1;\n this._$C0 = 1;\n this._$tT = 1;\n this._$WL = 1;\n this.culling = false;\n this.matrix4x4 = new Float32Array(16);\n this.premultipliedAlpha = false;\n this.anisotropy = 0;\n this.clippingProcess = ax.CLIPPING_PROCESS_NONE;\n this.clipBufPre_clipContextMask = null;\n this.clipBufPre_clipContextDraw = null;\n this.CHANNEL_COLORS = new Array();\n}\nax._$ps = 32;\nax.CLIPPING_PROCESS_NONE = 0;\nax.CLIPPING_PROCESS_OVERWRITE_ALPHA = 1;\nax.CLIPPING_PROCESS_MULTIPLY_ALPHA = 2;\nax.CLIPPING_PROCESS_DRAW = 3;\nax.CLIPPING_PROCESS_CLEAR_ALPHA = 4;\nax.prototype.setChannelFlagAsColor = function(aH, aI) {\n this.CHANNEL_COLORS[aH] = aI;\n}\n;\nax.prototype.getChannelFlagAsColor = function(aH) {\n return this.CHANNEL_COLORS[aH];\n}\n;\nax.prototype._$ZT = function() {}\n;\nax.prototype._$Uo = function(aM, aK, aJ, aL, aN, aI, aH) {}\n;\nax.prototype._$Rs = function() {\n return -1;\n}\n;\nax.prototype._$Ds = function(aH) {}\n;\nax.prototype.setBaseColor = function(aK, aJ, aI, aH) {\n if (aK < 0) {\n aK = 0;\n } else {\n if (aK > 1) {\n aK = 1;\n }\n }\n if (aJ < 0) {\n aJ = 0;\n } else {\n if (aJ > 1) {\n aJ = 1;\n }\n }\n if (aI < 0) {\n aI = 0;\n } else {\n if (aI > 1) {\n aI = 1;\n }\n }\n if (aH < 0) {\n aH = 0;\n } else {\n if (aH > 1) {\n aH = 1;\n }\n }\n this._$lT = aK;\n this._$C0 = aJ;\n this._$tT = aI;\n this._$WL = aH;\n}\n;\nax.prototype._$WP = function(aH) {\n this.culling = aH;\n}\n;\nax.prototype.setMatrix = function(aH) {\n for (var aI = 0; aI < 16; aI++) {\n this.matrix4x4[aI] = aH[aI];\n }\n}\n;\nax.prototype._$IT = function() {\n return this.matrix4x4;\n}\n;\nax.prototype.setPremultipliedAlpha = function(aH) {\n this.premultipliedAlpha = aH;\n}\n;\nax.prototype.isPremultipliedAlpha = function() {\n return this.premultipliedAlpha;\n}\n;\nax.prototype.setAnisotropy = function(aH) {\n this.anisotropy = aH;\n}\n;\nax.prototype.getAnisotropy = function() {\n return this.anisotropy;\n}\n;\nax.prototype.getClippingProcess = function() {\n return this.clippingProcess;\n}\n;\nax.prototype.setClippingProcess = function(aH) {\n this.clippingProcess = aH;\n}\n;\nax.prototype.setClipBufPre_clipContextForMask = function(aH) {\n this.clipBufPre_clipContextMask = aH;\n}\n;\nax.prototype.getClipBufPre_clipContextMask = function() {\n return this.clipBufPre_clipContextMask;\n}\n;\nax.prototype.setClipBufPre_clipContextForDraw = function(aH) {\n this.clipBufPre_clipContextDraw = aH;\n}\n;\nax.prototype.getClipBufPre_clipContextDraw = function() {\n return this.clipBufPre_clipContextDraw;\n}\n;\nfunction o() {\n if (j) {\n return;\n }\n this.a = 1;\n this.r = 1;\n this.g = 1;\n this.b = 1;\n this.scale = 1;\n this._$ho = 1;\n this.blendMode = Q.L2D_COLOR_BLEND_MODE_MULT;\n}\nfunction c() {\n if (j) {\n return;\n }\n this._$kP = null;\n this._$dr = null;\n this._$Ai = true;\n this._$mS = null;\n}\nc._$ur = -2;\nc._$c2 = 1;\nc._$_b = 2;\nc.prototype._$F0 = function(aH) {\n this._$kP = aH._$nP();\n this._$dr = aH._$nP();\n}\n;\nc.prototype.readV2_opacity = function(aH) {\n if (aH.getFormatVersion() >= ay.LIVE2D_FORMAT_VERSION_V2_10_SDK2) {\n this._$mS = aH._$Tb();\n }\n}\n;\nc.prototype.init = function(aH) {}\n;\nc.prototype._$Nr = function(aI, aH) {}\n;\nc.prototype.interpolateOpacity = function(aJ, aK, aI, aH) {\n if (this._$mS == null) {\n aI.setInterpolatedOpacity(1);\n } else {\n aI.setInterpolatedOpacity(aG._$br(aJ, aK, aH, this._$mS));\n }\n}\n;\nc.prototype._$2b = function(aI, aH) {}\n;\nc.prototype._$nb = function(aL, aK, aM, aH, aI, aJ, aN) {}\n;\nc.prototype.getType = function() {}\n;\nc.prototype._$gs = function(aH) {\n this._$dr = aH;\n}\n;\nc.prototype._$a2 = function(aH) {\n this._$kP = aH;\n}\n;\nc.prototype.getTargetBaseDataID = function() {\n return this._$dr;\n}\n;\nc.prototype.getBaseDataID = function() {\n return this._$kP;\n}\n;\nc.prototype._$32 = function() {\n return (this._$dr != null && (this._$dr != n._$2o()));\n}\n;\nfunction P() {}\nP._$W2 = 0;\nP._$CS = P._$W2;\nP._$Mo = function() {\n return true;\n}\n;\nP._$XP = function(aI) {\n try {\n var aJ = getTimeMSec();\n while (getTimeMSec() - aJ < aI) {}\n } catch (aH) {\n aH._$Rb();\n }\n}\n;\nP.getUserTimeMSec = function() {\n return (P._$CS == P._$W2) ? P.getSystemTimeMSec() : P._$CS;\n}\n;\nP.setUserTimeMSec = function(aH) {\n P._$CS = aH;\n}\n;\nP.updateUserTimeMSec = function() {\n return (P._$CS = P.getSystemTimeMSec());\n}\n;\nP.getTimeMSec = function() {\n return new Date().getTime();\n}\n;\nP.getSystemTimeMSec = function() {\n return new Date().getTime();\n}\n;\nP._$Q = function(aH) {}\n;\nP._$jT = function(aM, aJ, aI, aL, aH) {\n for (var aK = 0; aK < aH; aK++) {\n aI[aL + aK] = aM[aJ + aK];\n }\n}\n;\nfunction aA() {\n if (j) {\n return;\n }\n this._$VP = 0;\n this._$wL = null;\n this._$GP = null;\n this._$8o = aA._$ds;\n this._$2r = -1;\n this._$O2 = 0;\n this._$ri = 0;\n}\naA._$ds = -2;\naA.prototype._$F0 = function(aH) {\n this._$wL = aH._$nP();\n this._$VP = aH._$6L();\n this._$GP = aH._$nP();\n}\n;\naA.prototype.getParamIndex = function(aH) {\n if (this._$2r != aH) {\n this._$8o = aA._$ds;\n }\n return this._$8o;\n}\n;\naA.prototype._$Pb = function(aI, aH) {\n this._$8o = aI;\n this._$2r = aH;\n}\n;\naA.prototype.getParamID = function() {\n return this._$wL;\n}\n;\naA.prototype._$yP = function(aH) {\n this._$wL = aH;\n}\n;\naA.prototype._$N2 = function() {\n return this._$VP;\n}\n;\naA.prototype._$d2 = function() {\n return this._$GP;\n}\n;\naA.prototype._$t2 = function(aI, aH) {\n this._$VP = aI;\n this._$GP = aH;\n}\n;\naA.prototype._$Lr = function() {\n return this._$O2;\n}\n;\naA.prototype._$wr = function(aH) {\n this._$O2 = aH;\n}\n;\naA.prototype._$SL = function() {\n return this._$ri;\n}\n;\naA.prototype._$AL = function(aH) {\n this._$ri = aH;\n}\n;\nfunction G() {}\nG.startsWith = function(aJ, aL, aK) {\n var aH = aL + aK.length;\n if (aH >= aJ.length) {\n return false;\n }\n for (var aI = aL; aI < aH; aI++) {\n if (G.getChar(aJ, aI) != aK.charAt(aI - aL)) {\n return false;\n }\n }\n return true;\n}\n;\nG.getChar = function(aI, aH) {\n return String.fromCharCode(aI.getUint8(aH));\n}\n;\nG.createString = function(aM, aL, aJ) {\n var aH = new ArrayBuffer(aJ * 2);\n var aK = new Uint16Array(aH);\n for (var aI = 0; aI < aJ; aI++) {\n aK[aI] = aM.getUint8(aL + aI);\n }\n return String.fromCharCode.apply(null, aK);\n}\n;\nG._$LS = function(aP, aM, aR, aK) {\n if (aP instanceof ArrayBuffer) {\n aP = new DataView(aP);\n }\n var aL = aR;\n var aJ = false;\n var aQ = false;\n var aS = 0;\n var aO = G.getChar(aP, aL);\n if (aO == \"-\") {\n aJ = true;\n aL++;\n }\n var aN = false;\n for (; aL < aM; aL++) {\n aO = G.getChar(aP, aL);\n switch (aO) {\n case \"0\":\n aS = aS * 10;\n break;\n case \"1\":\n aS = aS * 10 + 1;\n break;\n case \"2\":\n aS = aS * 10 + 2;\n break;\n case \"3\":\n aS = aS * 10 + 3;\n break;\n case \"4\":\n aS = aS * 10 + 4;\n break;\n case \"5\":\n aS = aS * 10 + 5;\n break;\n case \"6\":\n aS = aS * 10 + 6;\n break;\n case \"7\":\n aS = aS * 10 + 7;\n break;\n case \"8\":\n aS = aS * 10 + 8;\n break;\n case \"9\":\n aS = aS * 10 + 9;\n break;\n case \".\":\n aQ = true;\n aL++;\n aN = true;\n break;\n default:\n aN = true;\n break;\n }\n if (aN) {\n break;\n }\n }\n if (aQ) {\n var aI = 0.1;\n var aH = false;\n for (; aL < aM; aL++) {\n aO = G.getChar(aP, aL);\n switch (aO) {\n case \"0\":\n break;\n case \"1\":\n aS += aI * 1;\n break;\n case \"2\":\n aS += aI * 2;\n break;\n case \"3\":\n aS += aI * 3;\n break;\n case \"4\":\n aS += aI * 4;\n break;\n case \"5\":\n aS += aI * 5;\n break;\n case \"6\":\n aS += aI * 6;\n break;\n case \"7\":\n aS += aI * 7;\n break;\n case \"8\":\n aS += aI * 8;\n break;\n case \"9\":\n aS += aI * 9;\n break;\n default:\n aH = true;\n break;\n }\n aI *= 0.1;\n if (aH) {\n break;\n }\n }\n }\n if (aJ) {\n aS = -aS;\n }\n aK[0] = aL;\n return aS;\n}\n;\nfunction g() {\n if (j) {\n return;\n }\n this._$Ob = null;\n}\ng.prototype._$zP = function() {\n this._$Ob = new Array();\n}\n;\ng.prototype._$F0 = function(aH) {\n this._$Ob = aH._$nP();\n}\n;\ng.prototype._$Ur = function(aK) {\n if (aK._$WS()) {\n return true;\n }\n var aH = aK._$v2();\n for (var aJ = this._$Ob.length - 1; aJ >= 0; --aJ) {\n var aI = this._$Ob[aJ].getParamIndex(aH);\n if (aI == aA._$ds) {\n aI = aK.getParamIndex(this._$Ob[aJ].getParamID());\n }\n if (aK._$Xb(aI)) {\n return true;\n }\n }\n return false;\n}\n;\ng.prototype._$Q2 = function(aL, aV) {\n var aX = this._$Ob.length;\n var aJ = aL._$v2();\n var aN = 0;\n var aI;\n var aQ;\n for (var aK = 0; aK < aX; aK++) {\n var aH = this._$Ob[aK];\n aI = aH.getParamIndex(aJ);\n if (aI == aA._$ds) {\n aI = aL.getParamIndex(aH.getParamID());\n aH._$Pb(aI, aJ);\n }\n if (aI < 0) {\n throw new Exception(\"err 23242 : \" + aH.getParamID());\n }\n var aU = aI < 0 ? 0 : aL.getParamFloat(aI);\n aQ = aH._$N2();\n var aM = aH._$d2();\n var aP = -1;\n var aT = 0;\n var aS;\n var aR;\n if (aQ < 1) {} else {\n if (aQ == 1) {\n aS = aM[0];\n if (aS - aw._$J < aU && aU < aS + aw._$J) {\n aP = 0;\n aT = 0;\n } else {\n aP = 0;\n aV[0] = true;\n }\n } else {\n aS = aM[0];\n if (aU < aS - aw._$J) {\n aP = 0;\n aV[0] = true;\n } else {\n if (aU < aS + aw._$J) {\n aP = 0;\n } else {\n var aW = false;\n for (var aO = 1; aO < aQ; ++aO) {\n aR = aM[aO];\n if (aU < aR + aw._$J) {\n if (aR - aw._$J < aU) {\n aP = aO;\n } else {\n aP = aO - 1;\n aT = (aU - aS) / (aR - aS);\n aN++;\n }\n aW = true;\n break;\n }\n aS = aR;\n }\n if (!aW) {\n aP = aQ - 1;\n aT = 0;\n aV[0] = true;\n }\n }\n }\n }\n }\n aH._$wr(aP);\n aH._$AL(aT);\n }\n return aN;\n}\n;\ng.prototype._$zr = function(aN, aT, aP) {\n var aR = 1 << aP;\n if (aR + 1 > aw._$Qb) {\n console.log(\"err 23245\\n\");\n }\n var aS = this._$Ob.length;\n var aK = 1;\n var aH = 1;\n var aJ = 0;\n for (var aQ = 0; aQ < aR; ++aQ) {\n aN[aQ] = 0;\n }\n for (var aL = 0; aL < aS; ++aL) {\n var aI = this._$Ob[aL];\n if (aI._$SL() == 0) {\n var aO = aI._$Lr() * aK;\n if (aO < 0 && Q._$3T) {\n throw new Exception(\"err 23246\");\n }\n for (var aQ = 0; aQ < aR; ++aQ) {\n aN[aQ] += aO;\n }\n } else {\n var aO = aK * aI._$Lr();\n var aM = aK * (aI._$Lr() + 1);\n for (var aQ = 0; aQ < aR; ++aQ) {\n aN[aQ] += ((aQ / aH | 0) % 2 == 0) ? aO : aM;\n }\n aT[aJ++] = aI._$SL();\n aH *= 2;\n }\n aK *= aI._$N2();\n }\n aN[aR] = 65535;\n aT[aJ] = -1;\n}\n;\ng.prototype._$h2 = function(aJ, aH, aK) {\n var aM = new Float32Array(aH);\n for (var aL = 0; aL < aH; ++aL) {\n aM[aL] = aK[aL];\n }\n var aI = new aA();\n aI._$yP(aJ);\n aI._$t2(aH, aM);\n this._$Ob.push(aI);\n}\n;\ng.prototype._$J2 = function(aO) {\n var aN = aO;\n var aM = this._$Ob.length;\n for (var aK = 0; aK < aM; ++aK) {\n var aI = this._$Ob[aK];\n var aH = aI._$N2();\n var aJ = aN % aI._$N2();\n var aL = aI._$d2()[aJ];\n console.log(\"%s[%d]=%7.2f / \", aI.getParamID(), aJ, aL);\n aN /= aH;\n }\n console.log(\"\\n\");\n}\n;\ng.prototype.getParamCount = function() {\n return this._$Ob.length;\n}\n;\ng.prototype._$zs = function() {\n return this._$Ob;\n}\n;\nfunction ac() {\n this.m = new Float32Array(16);\n this.identity();\n}\nac.prototype.identity = function() {\n for (var aH = 0; aH < 16; aH++) {\n this.m[aH] = ((aH % 5) == 0) ? 1 : 0;\n }\n}\n;\nac.prototype.getArray = function() {\n return this.m;\n}\n;\nac.prototype.getCopyMatrix = function() {\n return new Float32Array(this.m);\n}\n;\nac.prototype.setMatrix = function(aI) {\n if (aI == null || aI.length != 16) {\n return;\n }\n for (var aH = 0; aH < 16; aH++) {\n this.m[aH] = aI[aH];\n }\n}\n;\nac.prototype.mult = function(aH, aJ, aI) {\n if (aJ == null) {\n return null;\n }\n if (this == aJ) {\n this.mult_safe(this.m, aH.m, aJ.m, aI);\n } else {\n this.mult_fast(this.m, aH.m, aJ.m, aI);\n }\n return aJ;\n}\n;\nac.prototype.mult_safe = function(aI, aH, aM, aJ) {\n if (aI == aM) {\n var aL = new Array(16);\n this.mult_fast(aI, aH, aL, aJ);\n for (var aK = 15; aK >= 0; --aK) {\n aM[aK] = aL[aK];\n }\n } else {\n this.mult_fast(aI, aH, aM, aJ);\n }\n}\n;\nac.prototype.mult_fast = function(aI, aH, aK, aJ) {\n if (aJ) {\n aK[0] = aI[0] * aH[0] + aI[4] * aH[1] + aI[8] * aH[2];\n aK[4] = aI[0] * aH[4] + aI[4] * aH[5] + aI[8] * aH[6];\n aK[8] = aI[0] * aH[8] + aI[4] * aH[9] + aI[8] * aH[10];\n aK[12] = aI[0] * aH[12] + aI[4] * aH[13] + aI[8] * aH[14] + aI[12];\n aK[1] = aI[1] * aH[0] + aI[5] * aH[1] + aI[9] * aH[2];\n aK[5] = aI[1] * aH[4] + aI[5] * aH[5] + aI[9] * aH[6];\n aK[9] = aI[1] * aH[8] + aI[5] * aH[9] + aI[9] * aH[10];\n aK[13] = aI[1] * aH[12] + aI[5] * aH[13] + aI[9] * aH[14] + aI[13];\n aK[2] = aI[2] * aH[0] + aI[6] * aH[1] + aI[10] * aH[2];\n aK[6] = aI[2] * aH[4] + aI[6] * aH[5] + aI[10] * aH[6];\n aK[10] = aI[2] * aH[8] + aI[6] * aH[9] + aI[10] * aH[10];\n aK[14] = aI[2] * aH[12] + aI[6] * aH[13] + aI[10] * aH[14] + aI[14];\n aK[3] = aK[7] = aK[11] = 0;\n aK[15] = 1;\n } else {\n aK[0] = aI[0] * aH[0] + aI[4] * aH[1] + aI[8] * aH[2] + aI[12] * aH[3];\n aK[4] = aI[0] * aH[4] + aI[4] * aH[5] + aI[8] * aH[6] + aI[12] * aH[7];\n aK[8] = aI[0] * aH[8] + aI[4] * aH[9] + aI[8] * aH[10] + aI[12] * aH[11];\n aK[12] = aI[0] * aH[12] + aI[4] * aH[13] + aI[8] * aH[14] + aI[12] * aH[15];\n aK[1] = aI[1] * aH[0] + aI[5] * aH[1] + aI[9] * aH[2] + aI[13] * aH[3];\n aK[5] = aI[1] * aH[4] + aI[5] * aH[5] + aI[9] * aH[6] + aI[13] * aH[7];\n aK[9] = aI[1] * aH[8] + aI[5] * aH[9] + aI[9] * aH[10] + aI[13] * aH[11];\n aK[13] = aI[1] * aH[12] + aI[5] * aH[13] + aI[9] * aH[14] + aI[13] * aH[15];\n aK[2] = aI[2] * aH[0] + aI[6] * aH[1] + aI[10] * aH[2] + aI[14] * aH[3];\n aK[6] = aI[2] * aH[4] + aI[6] * aH[5] + aI[10] * aH[6] + aI[14] * aH[7];\n aK[10] = aI[2] * aH[8] + aI[6] * aH[9] + aI[10] * aH[10] + aI[14] * aH[11];\n aK[14] = aI[2] * aH[12] + aI[6] * aH[13] + aI[10] * aH[14] + aI[14] * aH[15];\n aK[3] = aI[3] * aH[0] + aI[7] * aH[1] + aI[11] * aH[2] + aI[15] * aH[3];\n aK[7] = aI[3] * aH[4] + aI[7] * aH[5] + aI[11] * aH[6] + aI[15] * aH[7];\n aK[11] = aI[3] * aH[8] + aI[7] * aH[9] + aI[11] * aH[10] + aI[15] * aH[11];\n aK[15] = aI[3] * aH[12] + aI[7] * aH[13] + aI[11] * aH[14] + aI[15] * aH[15];\n }\n}\n;\nac.prototype.translate = function(aH, aJ, aI) {\n this.m[12] = this.m[0] * aH + this.m[4] * aJ + this.m[8] * aI + this.m[12];\n this.m[13] = this.m[1] * aH + this.m[5] * aJ + this.m[9] * aI + this.m[13];\n this.m[14] = this.m[2] * aH + this.m[6] * aJ + this.m[10] * aI + this.m[14];\n this.m[15] = this.m[3] * aH + this.m[7] * aJ + this.m[11] * aI + this.m[15];\n}\n;\nac.prototype.scale = function(aJ, aI, aH) {\n this.m[0] *= aJ;\n this.m[4] *= aI;\n this.m[8] *= aH;\n this.m[1] *= aJ;\n this.m[5] *= aI;\n this.m[9] *= aH;\n this.m[2] *= aJ;\n this.m[6] *= aI;\n this.m[10] *= aH;\n this.m[3] *= aJ;\n this.m[7] *= aI;\n this.m[11] *= aH;\n}\n;\nac.prototype.rotateX = function(aH) {\n var aK = aC.fcos(aH);\n var aJ = aC._$9(aH);\n var aI = this.m[4];\n this.m[4] = aI * aK + this.m[8] * aJ;\n this.m[8] = aI * -aJ + this.m[8] * aK;\n aI = this.m[5];\n this.m[5] = aI * aK + this.m[9] * aJ;\n this.m[9] = aI * -aJ + this.m[9] * aK;\n aI = this.m[6];\n this.m[6] = aI * aK + this.m[10] * aJ;\n this.m[10] = aI * -aJ + this.m[10] * aK;\n aI = this.m[7];\n this.m[7] = aI * aK + this.m[11] * aJ;\n this.m[11] = aI * -aJ + this.m[11] * aK;\n}\n;\nac.prototype.rotateY = function(aH) {\n var aK = aC.fcos(aH);\n var aJ = aC._$9(aH);\n var aI = this.m[0];\n this.m[0] = aI * aK + this.m[8] * -aJ;\n this.m[8] = aI * aJ + this.m[8] * aK;\n aI = this.m[1];\n this.m[1] = aI * aK + this.m[9] * -aJ;\n this.m[9] = aI * aJ + this.m[9] * aK;\n aI = m[2];\n this.m[2] = aI * aK + this.m[10] * -aJ;\n this.m[10] = aI * aJ + this.m[10] * aK;\n aI = m[3];\n this.m[3] = aI * aK + this.m[11] * -aJ;\n this.m[11] = aI * aJ + this.m[11] * aK;\n}\n;\nac.prototype.rotateZ = function(aH) {\n var aK = aC.fcos(aH);\n var aJ = aC._$9(aH);\n var aI = this.m[0];\n this.m[0] = aI * aK + this.m[4] * aJ;\n this.m[4] = aI * -aJ + this.m[4] * aK;\n aI = this.m[1];\n this.m[1] = aI * aK + this.m[5] * aJ;\n this.m[5] = aI * -aJ + this.m[5] * aK;\n aI = this.m[2];\n this.m[2] = aI * aK + this.m[6] * aJ;\n this.m[6] = aI * -aJ + this.m[6] * aK;\n aI = this.m[3];\n this.m[3] = aI * aK + this.m[7] * aJ;\n this.m[7] = aI * -aJ + this.m[7] * aK;\n}\n;\nfunction Z(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\nZ.prototype = new ak();\nZ._$tP = new Object();\nZ._$27 = function() {\n Z._$tP.clear();\n}\n;\nZ.getID = function(aH) {\n var aI = Z._$tP[aH];\n if (aI == null) {\n aI = new Z(aH);\n Z._$tP[aH] = aI;\n }\n return aI;\n}\n;\nZ.prototype._$3s = function() {\n return new Z();\n}\n;\nfunction aD() {\n if (j) {\n return;\n }\n this._$7 = 1;\n this._$f = 0;\n this._$H = 0;\n this._$g = 1;\n this._$k = 0;\n this._$w = 0;\n this._$hi = STATE_IDENTITY;\n this._$Z = _$pS;\n}\naD._$kS = -1;\naD._$pS = 0;\naD._$hb = 1;\naD.STATE_IDENTITY = 0;\naD._$gb = 1;\naD._$fo = 2;\naD._$go = 4;\naD.prototype.transform = function(aK, aI, aH) {\n var aT, aS, aR, aM, aL, aJ;\n var aQ = 0;\n var aN = 0;\n switch (this._$hi) {\n default:\n return;\n case (aD._$go | aD._$fo | aD._$gb):\n aT = this._$7;\n aS = this._$H;\n aR = this._$k;\n aM = this._$f;\n aL = this._$g;\n aJ = this._$w;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n var aO = aK[aQ++];\n aI[aN++] = (aT * aP + aS * aO + aR);\n aI[aN++] = (aM * aP + aL * aO + aJ);\n }\n return;\n case (aD._$go | aD._$fo):\n aT = this._$7;\n aS = this._$H;\n aM = this._$f;\n aL = this._$g;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n var aO = aK[aQ++];\n aI[aN++] = (aT * aP + aS * aO);\n aI[aN++] = (aM * aP + aL * aO);\n }\n return;\n case (aD._$go | aD._$gb):\n aS = this._$H;\n aR = this._$k;\n aM = this._$f;\n aJ = this._$w;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n aI[aN++] = (aS * aK[aQ++] + aR);\n aI[aN++] = (aM * aP + aJ);\n }\n return;\n case (aD._$go):\n aS = this._$H;\n aM = this._$f;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n aI[aN++] = (aS * aK[aQ++]);\n aI[aN++] = (aM * aP);\n }\n return;\n case (aD._$fo | aD._$gb):\n aT = this._$7;\n aR = this._$k;\n aL = this._$g;\n aJ = this._$w;\n while (--aH >= 0) {\n aI[aN++] = (aT * aK[aQ++] + aR);\n aI[aN++] = (aL * aK[aQ++] + aJ);\n }\n return;\n case (aD._$fo):\n aT = this._$7;\n aL = this._$g;\n while (--aH >= 0) {\n aI[aN++] = (aT * aK[aQ++]);\n aI[aN++] = (aL * aK[aQ++]);\n }\n return;\n case (aD._$gb):\n aR = this._$k;\n aJ = this._$w;\n while (--aH >= 0) {\n aI[aN++] = (aK[aQ++] + aR);\n aI[aN++] = (aK[aQ++] + aJ);\n }\n return;\n case (aD.STATE_IDENTITY):\n if (aK != aI || aQ != aN) {\n P._$jT(aK, aQ, aI, aN, aH * 2);\n }\n return;\n }\n}\n;\naD.prototype.update = function() {\n if (this._$H == 0 && this._$f == 0) {\n if (this._$7 == 1 && this._$g == 1) {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = aD.STATE_IDENTITY;\n this._$Z = aD._$pS;\n } else {\n this._$hi = aD._$gb;\n this._$Z = aD._$hb;\n }\n } else {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = aD._$fo;\n this._$Z = aD._$kS;\n } else {\n this._$hi = (aD._$fo | aD._$gb);\n this._$Z = aD._$kS;\n }\n }\n } else {\n if (this._$7 == 0 && this._$g == 0) {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = aD._$go;\n this._$Z = aD._$kS;\n } else {\n this._$hi = (aD._$go | aD._$gb);\n this._$Z = aD._$kS;\n }\n } else {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = (aD._$go | aD._$fo);\n this._$Z = aD._$kS;\n } else {\n this._$hi = (aD._$go | aD._$fo | aD._$gb);\n this._$Z = aD._$kS;\n }\n }\n }\n}\n;\naD.prototype._$RT = function(aK) {\n this._$IT(aK);\n var aJ = aK[0];\n var aH = aK[2];\n var aN = aK[1];\n var aM = aK[3];\n var aI = Math.sqrt(aJ * aJ + aN * aN);\n var aL = aJ * aM - aH * aN;\n if (aI == 0) {\n if (Q._$so) {\n console.log(\"affine._$RT() / rt==0\");\n }\n } else {\n aK[0] = aI;\n aK[1] = aL / aI;\n aK[2] = (aN * aM + aJ * aH) / aL;\n aK[3] = Math.atan2(aN, aJ);\n }\n}\n;\naD.prototype._$ho = function(aN, aM, aI, aH) {\n var aL = new Float32Array(6);\n var aK = new Float32Array(6);\n aN._$RT(aL);\n aM._$RT(aK);\n var aJ = new Float32Array(6);\n aJ[0] = aL[0] + (aK[0] - aL[0]) * aI;\n aJ[1] = aL[1] + (aK[1] - aL[1]) * aI;\n aJ[2] = aL[2] + (aK[2] - aL[2]) * aI;\n aJ[3] = aL[3] + (aK[3] - aL[3]) * aI;\n aJ[4] = aL[4] + (aK[4] - aL[4]) * aI;\n aJ[5] = aL[5] + (aK[5] - aL[5]) * aI;\n aH._$CT(aJ);\n}\n;\naD.prototype._$CT = function(aJ) {\n var aI = Math.cos(aJ[3]);\n var aH = Math.sin(aJ[3]);\n this._$7 = aJ[0] * aI;\n this._$f = aJ[0] * aH;\n this._$H = aJ[1] * (aJ[2] * aI - aH);\n this._$g = aJ[1] * (aJ[2] * aH + aI);\n this._$k = aJ[4];\n this._$w = aJ[5];\n this.update();\n}\n;\naD.prototype._$IT = function(aH) {\n aH[0] = this._$7;\n aH[1] = this._$f;\n aH[2] = this._$H;\n aH[3] = this._$g;\n aH[4] = this._$k;\n aH[5] = this._$w;\n}\n;\nfunction Y() {\n if (j) {\n return;\n }\n ah.prototype.constructor.call(this);\n this.motions = new Array();\n this._$7r = null;\n this._$7r = Y._$Co++;\n this._$D0 = 30;\n this._$yT = 0;\n this._$E = true;\n this.loopFadeIn = true;\n this._$AS = -1;\n _$a0();\n}\nY.prototype = new ah();\nY._$cs = \"VISIBLE:\";\nY._$ar = \"LAYOUT:\";\nY._$Co = 0;\nY._$D2 = [];\nY._$1T = 1;\nY.loadMotion = function(aR) {\n var aM = new Y();\n var aI = [0];\n var aP = aR.length;\n aM._$yT = 0;\n for (var aJ = 0; aJ < aP; ++aJ) {\n var aQ = (aR[aJ] & 255);\n if (aQ == \"\\n\" || aQ == \"\\r\") {\n continue;\n }\n if (aQ == \"#\") {\n for (; aJ < aP; ++aJ) {\n if (aR[aJ] == \"\\n\" || aR[aJ] == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if (aQ == \"$\") {\n var aT = aJ;\n var aK = -1;\n for (; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \"=\") {\n aK = aJ;\n break;\n }\n }\n var aO = false;\n if (aK >= 0) {\n if (aK == aT + 4 && aR[aT + 1] == \"f\" && aR[aT + 2] == \"p\" && aR[aT + 3] == \"s\") {\n aO = true;\n }\n for (aJ = aK + 1; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \",\" || aQ == \" \" || aQ == \"\\t\") {\n continue;\n }\n var aL = G._$LS(aR, aP, aJ, aI);\n if (aI[0] > 0) {\n if (aO && 5 < aL && aL < 121) {\n aM._$D0 = aL;\n }\n }\n aJ = aI[0];\n }\n }\n for (; aJ < aP; ++aJ) {\n if (aR[aJ] == \"\\n\" || aR[aJ] == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if ((\"a\" <= aQ && aQ <= \"z\") || (\"A\" <= aQ && aQ <= \"Z\") || aQ == \"_\") {\n var aT = aJ;\n var aK = -1;\n for (; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \"=\") {\n aK = aJ;\n break;\n }\n }\n if (aK >= 0) {\n var aN = new t();\n if (G.startsWith(aR, aT, Y._$cs)) {\n aN._$RP = t._$hs;\n aN._$4P = new String(aR,aT,aK - aT);\n } else {\n if (G.startsWith(aR, aT, Y._$ar)) {\n aN._$4P = new String(aR,aT + 7,aK - aT - 7);\n if (G.startsWith(aR, aT + 7, \"ANCHOR_X\")) {\n aN._$RP = t._$xs;\n } else {\n if (G.startsWith(aR, aT + 7, \"ANCHOR_Y\")) {\n aN._$RP = t._$us;\n } else {\n if (G.startsWith(aR, aT + 7, \"SCALE_X\")) {\n aN._$RP = t._$qs;\n } else {\n if (G.startsWith(aR, aT + 7, \"SCALE_Y\")) {\n aN._$RP = t._$Ys;\n } else {\n if (G.startsWith(aR, aT + 7, \"X\")) {\n aN._$RP = t._$ws;\n } else {\n if (G.startsWith(aR, aT + 7, \"Y\")) {\n aN._$RP = t._$Ns;\n }\n }\n }\n }\n }\n }\n } else {\n aN._$RP = t._$Fr;\n aN._$4P = new String(aR,aT,aK - aT);\n }\n }\n aM.motions.push(aN);\n var aS = 0;\n Y._$D2.clear();\n for (aJ = aK + 1; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \",\" || aQ == \" \" || aQ == \"\\t\") {\n continue;\n }\n var aL = G._$LS(aR, aP, aJ, aI);\n if (aI[0] > 0) {\n Y._$D2.push(aL);\n aS++;\n var aH = aI[0];\n if (aH < aJ) {\n console.log(\"_$n0 _$hi . @Live2DMotion loadMotion()\\n\");\n break;\n }\n aJ = aH;\n }\n }\n aN._$I0 = Y._$D2._$BL();\n if (aS > aM._$yT) {\n aM._$yT = aS;\n }\n }\n }\n }\n aM._$AS = ((1000 * aM._$yT) / aM._$D0) | 0;\n return aM;\n}\n;\nY.prototype.getDurationMSec = function() {\n return this._$AS;\n}\n;\nY.prototype.dump = function() {\n for (var aJ = 0; aJ < this.motions.length; aJ++) {\n var aH = this.motions[aJ];\n console.log(\"_$wL[%s] [%d]. \", aH._$4P, aH._$I0.length);\n for (var aI = 0; aI < aH._$I0.length && aI < 10; aI++) {\n console.log(\"%5.2f ,\", aH._$I0[aI]);\n }\n console.log(\"\\n\");\n }\n}\n;\nY.prototype.updateParamExe = function(aH, aL, aO, aX) {\n var aM = aL - aX._$z2;\n var aV = aM * this._$D0 / 1000;\n var aJ = aV | 0;\n var aP = aV - aJ;\n for (var aU = 0; aU < this.motions.length; aU++) {\n var aS = this.motions[aU];\n var aK = aS._$I0.length;\n var aQ = aS._$4P;\n if (aS._$RP == t._$hs) {\n var aT = aS._$I0[(aJ >= aK ? aK - 1 : aJ)];\n aH.setParamFloat(aQ, aT);\n } else {\n if (t._$ws <= aS._$RP && aS._$RP <= t._$Ys) {} else {\n var aR = aH.getParamFloat(aQ);\n var aY = aS._$I0[(aJ >= aK ? aK - 1 : aJ)];\n var aW = aS._$I0[(aJ + 1 >= aK ? aK - 1 : aJ + 1)];\n var aI = aY + (aW - aY) * aP;\n var aN = aR + (aI - aR) * aO;\n aH.setParamFloat(aQ, aN);\n }\n }\n }\n if (aJ >= this._$yT) {\n if (this._$E) {\n aX._$z2 = aL;\n if (this.loopFadeIn) {\n aX._$bs = aL;\n }\n } else {\n aX._$9L = true;\n }\n }\n}\n;\nY.prototype._$r0 = function() {\n return this._$E;\n}\n;\nY.prototype._$aL = function(aH) {\n this._$E = aH;\n}\n;\nY.prototype.isLoopFadeIn = function() {\n return this.loopFadeIn;\n}\n;\nY.prototype.setLoopFadeIn = function(aH) {\n this.loopFadeIn = aH;\n}\n;\nfunction aE() {\n this._$P = new Float32Array(100);\n this.size = 0;\n}\naE.prototype.clear = function() {\n this.size = 0;\n}\n;\naE.prototype.add = function(aI) {\n if (this._$P.length <= this.size) {\n var aH = new Float32Array(this.size * 2);\n P._$jT(this._$P, 0, aH, 0, this.size);\n this._$P = aH;\n }\n this._$P[this.size++] = aI;\n}\n;\naE.prototype._$BL = function() {\n var aH = new Float32Array(this.size);\n P._$jT(this._$P, 0, aH, 0, this.size);\n return aH;\n}\n;\nfunction t() {\n this._$4P = null;\n this._$I0 = null;\n this._$RP = null;\n}\nt._$Fr = 0;\nt._$hs = 1;\nt._$ws = 100;\nt._$Ns = 101;\nt._$xs = 102;\nt._$us = 103;\nt._$qs = 104;\nt._$Ys = 105;\nfunction aw() {}\naw._$Ms = 1;\naw._$Qs = 2;\naw._$i2 = 0;\naw._$No = 2;\naw._$do = aw._$Ms;\naw._$Ls = true;\naw._$1r = 5;\naw._$Qb = 65;\naw._$J = 0.0001;\naw._$FT = 0.001;\naw._$Ss = 3;\nfunction ay() {}\nay._$o7 = 6;\nay._$S7 = 7;\nay._$s7 = 8;\nay._$77 = 9;\nay.LIVE2D_FORMAT_VERSION_V2_10_SDK2 = 10;\nay.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1 = 11;\nay._$T7 = ay.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1;\nay._$Is = -2004318072;\nay._$h0 = 0;\nay._$4L = 23;\nay._$7P = 33;\nay._$uT = function(aH) {\n console.log(\"_$bo :: _$6 _$mo _$E0 : %d\\n\", aH);\n}\n;\nay._$9o = function(aH) {\n if (aH < 40) {\n ay._$uT(aH);\n return null;\n } else {\n if (aH < 50) {\n ay._$uT(aH);\n return null;\n } else {\n if (aH < 60) {\n ay._$uT(aH);\n return null;\n } else {\n if (aH < 100) {\n switch (aH) {\n case 65:\n return new E();\n case 66:\n return new g();\n case 67:\n return new aA();\n case 68:\n return new ab();\n case 69:\n return new X();\n case 70:\n return new b();\n default:\n ay._$uT(aH);\n return null;\n }\n } else {\n if (aH < 150) {\n switch (aH) {\n case 131:\n return new f();\n case 133:\n return new s();\n case 136:\n return new w();\n case 137:\n return new an();\n case 142:\n return new aq();\n }\n }\n }\n }\n }\n }\n ay._$uT(aH);\n return null;\n}\n;\nfunction y(aH) {\n if (j) {\n return;\n }\n this._$QT = true;\n this._$co = -1;\n this._$qo = 0;\n this._$pb = new Array(y._$is);\n this._$_2 = new Float32Array(y._$is);\n this._$vr = new Float32Array(y._$is);\n this._$Rr = new Float32Array(y._$is);\n this._$Or = new Float32Array(y._$is);\n this._$fs = new Float32Array(y._$is);\n this._$Js = new Array(y._$is);\n this._$3S = new Array();\n this._$aS = new Array();\n this._$Bo = null;\n this._$F2 = new Array();\n this._$db = new Array();\n this._$8b = new Array();\n this._$Hr = new Array();\n this._$Ws = null;\n this._$Vs = null;\n this._$Er = null;\n this._$Es = new Int16Array(aw._$Qb);\n this._$ZP = new Float32Array(aw._$1r * 2);\n this._$Ri = aH;\n this._$b0 = y._$HP++;\n this.clipManager = null;\n this.dp_webgl = null;\n}\ny._$HP = 0;\ny._$_0 = true;\ny._$V2 = -1;\ny._$W0 = -1;\ny._$jr = false;\ny._$ZS = true;\ny._$tr = (-1000000);\ny._$lr = (1000000);\ny._$is = 32;\ny._$e = false;\ny.prototype.getDrawDataIndex = function(aI) {\n for (var aH = this._$aS.length - 1; aH >= 0; --aH) {\n if (this._$aS[aH] != null && this._$aS[aH].getDrawDataID() == aI) {\n return aH;\n }\n }\n return -1;\n}\n;\ny.prototype.getDrawData = function(aH) {\n if (aH instanceof Z) {\n if (this._$Bo == null) {\n this._$Bo = new Object();\n var aJ = this._$aS.length;\n for (var aI = 0; aI < aJ; aI++) {\n var aL = this._$aS[aI];\n var aK = aL.getDrawDataID();\n if (aK == null) {\n continue;\n }\n this._$Bo[aK] = aL;\n }\n }\n return this._$Bo[id];\n } else {\n if (aH < this._$aS.length) {\n return this._$aS[aH];\n } else {\n return null;\n }\n }\n}\n;\ny.prototype.release = function() {\n this._$3S.clear();\n this._$aS.clear();\n this._$F2.clear();\n if (this._$Bo != null) {\n this._$Bo.clear();\n }\n this._$db.clear();\n this._$8b.clear();\n this._$Hr.clear();\n}\n;\ny.prototype.init = function() {\n this._$co++;\n if (this._$F2.length > 0) {\n this.release();\n }\n var aO = this._$Ri.getModelImpl();\n var aT = aO._$Xr();\n var aS = aT.length;\n var aH = new Array();\n var a3 = new Array();\n for (var aV = 0; aV < aS; ++aV) {\n var a4 = aT[aV];\n this._$F2.push(a4);\n this._$Hr.push(a4.init(this));\n var aK = a4.getBaseData();\n var aR = aK.length;\n for (var aU = 0; aU < aR; ++aU) {\n aH.push(aK[aU]);\n }\n for (var aU = 0; aU < aR; ++aU) {\n var aM = aK[aU].init(this);\n aM._$l2(aV);\n a3.push(aM);\n }\n var a1 = a4.getDrawData();\n var aP = a1.length;\n for (var aU = 0; aU < aP; ++aU) {\n var aZ = a1[aU];\n var a0 = aZ.init(this);\n a0._$IP = aV;\n this._$aS.push(aZ);\n this._$8b.push(a0);\n }\n }\n var aY = aH.length;\n var aN = n._$2o();\n while (true) {\n var aX = false;\n for (var aV = 0; aV < aY; ++aV) {\n var aL = aH[aV];\n if (aL == null) {\n continue;\n }\n var a2 = aL.getTargetBaseDataID();\n if (a2 == null || a2 == aN || this.getBaseDataIndex(a2) >= 0) {\n this._$3S.push(aL);\n this._$db.push(a3[aV]);\n aH[aV] = null;\n aX = true;\n }\n }\n if (!aX) {\n break;\n }\n }\n var aI = aO._$E2();\n if (aI != null) {\n var aJ = aI._$1s();\n if (aJ != null) {\n var aW = aJ.length;\n for (var aV = 0; aV < aW; ++aV) {\n var aQ = aJ[aV];\n if (aQ == null) {\n continue;\n }\n this._$02(aQ.getParamID(), aQ.getDefaultValue(), aQ.getMinValue(), aQ.getMaxValue());\n }\n }\n }\n this.clipManager = new W(this.dp_webgl);\n this.clipManager.init(this, this._$aS, this._$8b);\n this._$QT = true;\n}\n;\ny.prototype.update = function() {\n if (y._$e) {\n q.start(\"_$zL\");\n }\n var aK = this._$_2.length;\n for (var aW = 0; aW < aK; aW++) {\n if (this._$_2[aW] != this._$vr[aW]) {\n this._$Js[aW] = y._$ZS;\n this._$vr[aW] = this._$_2[aW];\n }\n }\n var aX = false;\n var aQ = this._$3S.length;\n var aN = this._$aS.length;\n var aS = a._$or();\n var aZ = a._$Pr();\n var aU = aZ - aS + 1;\n if (this._$Ws == null || this._$Ws.length < aU) {\n this._$Ws = new Int16Array(aU);\n this._$Vs = new Int16Array(aU);\n }\n for (var aW = 0; aW < aU; aW++) {\n this._$Ws[aW] = y._$V2;\n this._$Vs[aW] = y._$V2;\n }\n if (this._$Er == null || this._$Er.length < aN) {\n this._$Er = new Int16Array(aN);\n }\n for (var aW = 0; aW < aN; aW++) {\n this._$Er[aW] = y._$W0;\n }\n if (y._$e) {\n q.dump(\"_$zL\");\n }\n if (y._$e) {\n q.start(\"_$UL\");\n }\n var aL = null;\n for (var aV = 0; aV < aQ; ++aV) {\n var aJ = this._$3S[aV];\n var aH = this._$db[aV];\n try {\n aJ._$Nr(this, aH);\n aJ._$2b(this, aH);\n } catch (aY) {\n if (aL == null) {\n aL = aY;\n }\n }\n }\n if (aL != null) {\n if (y._$_0) {\n q._$Rb(aL);\n }\n }\n if (y._$e) {\n q.dump(\"_$UL\");\n }\n if (y._$e) {\n q.start(\"_$DL\");\n }\n var aR = null;\n for (var aO = 0; aO < aN; ++aO) {\n var aM = this._$aS[aO];\n var aI = this._$8b[aO];\n try {\n aM._$Nr(this, aI);\n if (aI._$u2()) {\n continue;\n }\n aM._$2b(this, aI);\n var aT = Math.floor(aM._$zS(this, aI) - aS);\n var aP;\n try {\n aP = this._$Vs[aT];\n } catch (aY) {\n console.log(\"_$li :: %s / %s @@_$fS\\n\", aY.toString(), aM.getDrawDataID().toString());\n aT = Math.floor(aM._$zS(this, aI) - aS);\n continue;\n }\n if (aP == y._$V2) {\n this._$Ws[aT] = aO;\n } else {\n this._$Er[aP] = aO;\n }\n this._$Vs[aT] = aO;\n } catch (aY) {\n if (aR == null) {\n aR = aY;\n Q._$sT(Q._$H7);\n }\n }\n }\n if (aR != null) {\n if (y._$_0) {\n q._$Rb(aR);\n }\n }\n if (y._$e) {\n q.dump(\"_$DL\");\n }\n if (y._$e) {\n q.start(\"_$eL\");\n }\n for (var aW = this._$Js.length - 1; aW >= 0; aW--) {\n this._$Js[aW] = y._$jr;\n }\n this._$QT = false;\n if (y._$e) {\n q.dump(\"_$eL\");\n }\n return aX;\n}\n;\ny.prototype.preDraw = function(aH) {\n if (this.clipManager != null) {\n aH._$ZT();\n this.clipManager.setupClip(this, aH);\n }\n}\n;\ny.prototype.draw = function(aM) {\n if (this._$Ws == null) {\n q._$li(\"call _$Ri.update() before _$Ri.draw() \");\n return;\n }\n var aP = this._$Ws.length;\n aM._$ZT();\n for (var aK = 0; aK < aP; ++aK) {\n var aN = this._$Ws[aK];\n if (aN == y._$V2) {\n continue;\n }\n do {\n var aH = this._$aS[aN];\n var aI = this._$8b[aN];\n if (aI._$yo()) {\n var aJ = aI._$IP;\n var aL = this._$Hr[aJ];\n aI._$VS = aL.getPartsOpacity();\n aH.draw(aM, this, aI);\n }\n var aO = this._$Er[aN];\n if (aO <= aN || aO == y._$W0) {\n break;\n }\n aN = aO;\n } while (true);\n }\n}\n;\ny.prototype.getParamIndex = function(aH) {\n for (var aI = this._$pb.length - 1; aI >= 0; --aI) {\n if (this._$pb[aI] == aH) {\n return aI;\n }\n }\n return this._$02(aH, 0, y._$tr, y._$lr);\n}\n;\ny.prototype._$BS = function(aH) {\n return this.getBaseDataIndex(aH);\n}\n;\ny.prototype.getBaseDataIndex = function(aH) {\n for (var aI = this._$3S.length - 1; aI >= 0; --aI) {\n if (this._$3S[aI] != null && this._$3S[aI].getBaseDataID() == aH) {\n return aI;\n }\n }\n return -1;\n}\n;\ny.prototype._$UT = function(aJ, aH) {\n var aI = new Float32Array(aH);\n P._$jT(aJ, 0, aI, 0, aJ.length);\n return aI;\n}\n;\ny.prototype._$02 = function(aN, aM, aL, aH) {\n if (this._$qo >= this._$pb.length) {\n var aK = this._$pb.length;\n var aJ = new Array(aK * 2);\n P._$jT(this._$pb, 0, aJ, 0, aK);\n this._$pb = aJ;\n this._$_2 = this._$UT(this._$_2, aK * 2);\n this._$vr = this._$UT(this._$vr, aK * 2);\n this._$Rr = this._$UT(this._$Rr, aK * 2);\n this._$Or = this._$UT(this._$Or, aK * 2);\n var aI = new Array();\n P._$jT(this._$Js, 0, aI, 0, aK);\n this._$Js = aI;\n }\n this._$pb[this._$qo] = aN;\n this._$_2[this._$qo] = aM;\n this._$vr[this._$qo] = aM;\n this._$Rr[this._$qo] = aL;\n this._$Or[this._$qo] = aH;\n this._$Js[this._$qo] = y._$ZS;\n return this._$qo++;\n}\n;\ny.prototype._$Zo = function(aI, aH) {\n this._$3S[aI] = aH;\n}\n;\ny.prototype.setParamFloat = function(aH, aI) {\n if (aI < this._$Rr[aH]) {\n aI = this._$Rr[aH];\n }\n if (aI > this._$Or[aH]) {\n aI = this._$Or[aH];\n }\n this._$_2[aH] = aI;\n}\n;\ny.prototype.loadParam = function() {\n var aH = this._$_2.length;\n if (aH > this._$fs.length) {\n aH = this._$fs.length;\n }\n P._$jT(this._$fs, 0, this._$_2, 0, aH);\n}\n;\ny.prototype.saveParam = function() {\n var aH = this._$_2.length;\n if (aH > this._$fs.length) {\n this._$fs = new Float32Array(aH);\n }\n P._$jT(this._$_2, 0, this._$fs, 0, aH);\n}\n;\ny.prototype._$v2 = function() {\n return this._$co;\n}\n;\ny.prototype._$WS = function() {\n return this._$QT;\n}\n;\ny.prototype._$Xb = function(aH) {\n return this._$Js[aH] == y._$ZS;\n}\n;\ny.prototype._$vs = function() {\n return this._$Es;\n}\n;\ny.prototype._$Tr = function() {\n return this._$ZP;\n}\n;\ny.prototype.getBaseData = function(aH) {\n return this._$3S[aH];\n}\n;\ny.prototype.getParamFloat = function(aH) {\n return this._$_2[aH];\n}\n;\ny.prototype.getParamMax = function(aH) {\n return this._$Or[aH];\n}\n;\ny.prototype.getParamMin = function(aH) {\n return this._$Rr[aH];\n}\n;\ny.prototype.setPartsOpacity = function(aJ, aH) {\n var aI = this._$Hr[aJ];\n aI.setPartsOpacity(aH);\n}\n;\ny.prototype.getPartsOpacity = function(aI) {\n var aH = this._$Hr[aI];\n return aH.getPartsOpacity();\n}\n;\ny.prototype.getPartsDataIndex = function(aI) {\n for (var aH = this._$F2.length - 1; aH >= 0; --aH) {\n if (this._$F2[aH] != null && this._$F2[aH]._$p2() == aI) {\n return aH;\n }\n }\n return -1;\n}\n;\ny.prototype._$q2 = function(aH) {\n return this._$db[aH];\n}\n;\ny.prototype._$C2 = function(aH) {\n return this._$8b[aH];\n}\n;\ny.prototype._$Bb = function(aH) {\n return this._$Hr[aH];\n}\n;\ny.prototype._$5s = function(aO, aK) {\n var aJ = this._$Ws.length;\n var aN = aO;\n for (var aL = 0; aL < aJ; ++aL) {\n var aI = this._$Ws[aL];\n if (aI == y._$V2) {\n continue;\n }\n do {\n var aM = this._$8b[aI];\n if (aM._$yo()) {\n aM._$GT()._$B2(this, aM, aN);\n aN += aK;\n }\n var aH = this._$Er[aI];\n if (aH <= aI || aH == y._$W0) {\n break;\n }\n aI = aH;\n } while (true);\n }\n}\n;\ny.prototype.setDrawParam = function(aH) {\n this.dp_webgl = aH;\n}\n;\ny.prototype.getDrawParam = function() {\n return this.dp_webgl;\n}\n;\nfunction ap() {}\nap._$0T = function(aH) {\n return ap._$0T(new _$5(aH));\n}\n;\nap._$0T = function(aJ) {\n if (!aJ.exists()) {\n throw new _$ls(aJ._$3b());\n }\n var aH = aJ.length();\n var aI = new Int8Array(aH);\n var aM = new _$Xs(new _$kb(aJ),8192);\n var aK;\n var aL = 0;\n while ((aK = aM.read(aI, aL, aH - aL)) > 0) {\n aL += aK;\n }\n return aI;\n}\n;\nap._$C = function(aJ) {\n var aI = null;\n var aL = null;\n try {\n aI = (aJ instanceof Array) ? aJ : new _$Xs(aJ,8192);\n aL = new _$js();\n var aM = 1000;\n var aK;\n var aH = new Int8Array(aM);\n while ((aK = aI.read(aH)) > 0) {\n aL.write(aH, 0, aK);\n }\n return aL._$TS();\n } finally {\n if (aJ != null) {\n aJ.close();\n }\n if (aL != null) {\n aL.flush();\n aL.close();\n }\n }\n}\n;\nfunction ar() {\n if (j) {\n return;\n }\n this._$12 = null;\n this._$bb = null;\n this._$_L = null;\n this._$jo = null;\n this._$iL = null;\n this._$0L = null;\n this._$Br = null;\n this._$Dr = null;\n this._$Cb = null;\n this._$mr = null;\n this._$_L = az.STATE_FIRST;\n this._$Br = 4000;\n this._$Dr = 100;\n this._$Cb = 50;\n this._$mr = 150;\n this._$jo = true;\n this._$iL = \"PARAM_EYE_L_OPEN\";\n this._$0L = \"PARAM_EYE_R_OPEN\";\n}\nar.prototype._$T2 = function() {\n var aI = P.getUserTimeMSec();\n var aH = Math._$10();\n return (aI + aH * (2 * this._$Br - 1));\n}\n;\nar.prototype._$uo = function(aH) {\n this._$Br = aH;\n}\n;\nar.prototype._$QS = function(aI, aH, aJ) {\n this._$Dr = aI;\n this._$Cb = aH;\n this._$mr = aJ;\n}\n;\nar.prototype._$7T = function(aI) {\n var aK = P.getUserTimeMSec();\n var aH;\n var aJ = 0;\n switch (this._$_L) {\n case STATE_CLOSING:\n aJ = (aK - this._$bb) / this._$Dr;\n if (aJ >= 1) {\n aJ = 1;\n this._$_L = az.STATE_CLOSED;\n this._$bb = aK;\n }\n aH = 1 - aJ;\n break;\n case STATE_CLOSED:\n aJ = (aK - this._$bb) / this._$Cb;\n if (aJ >= 1) {\n this._$_L = az.STATE_OPENING;\n this._$bb = aK;\n }\n aH = 0;\n break;\n case STATE_OPENING:\n aJ = (aK - this._$bb) / this._$mr;\n if (aJ >= 1) {\n aJ = 1;\n this._$_L = az.STATE_INTERVAL;\n this._$12 = this._$T2();\n }\n aH = aJ;\n break;\n case STATE_INTERVAL:\n if (this._$12 < aK) {\n this._$_L = az.STATE_CLOSING;\n this._$bb = aK;\n }\n aH = 1;\n break;\n case STATE_FIRST:\n default:\n this._$_L = az.STATE_INTERVAL;\n this._$12 = this._$T2();\n aH = 1;\n break;\n }\n if (!this._$jo) {\n aH = -aH;\n }\n aI.setParamFloat(this._$iL, aH);\n aI.setParamFloat(this._$0L, aH);\n}\n;\nvar az = function() {};\naz.STATE_FIRST = \"STATE_FIRST\";\naz.STATE_INTERVAL = \"STATE_INTERVAL\";\naz.STATE_CLOSING = \"STATE_CLOSING\";\naz.STATE_CLOSED = \"STATE_CLOSED\";\naz.STATE_OPENING = \"STATE_OPENING\";\nfunction x() {\n if (j) {\n return;\n }\n ax.prototype.constructor.call(this);\n this._$sb = new Int32Array(x._$As);\n this._$U2 = new Array();\n this.transform = null;\n this.gl = null;\n if (x._$NT == null) {\n x._$NT = x._$9r(256);\n x._$vS = x._$9r(256);\n x._$no = x._$vb(256);\n }\n}\nx.prototype = new ax();\nx._$As = 32;\nx._$Gr = false;\nx._$NT = null;\nx._$vS = null;\nx._$no = null;\nx._$9r = function(aH) {\n var aI = new Float32Array(aH);\n return aI;\n}\n;\nx._$vb = function(aH) {\n var aI = new Int16Array(aH);\n return aI;\n}\n;\nx._$cr = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = x._$9r(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nx._$mb = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = x._$vb(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nx._$Hs = function() {\n return x._$Gr;\n}\n;\nx._$as = function(aH) {\n x._$Gr = aH;\n}\n;\nx.prototype.setGL = function(aH) {\n this.gl = aH;\n}\n;\nx.prototype.setTransform = function(aH) {\n this.transform = aH;\n}\n;\nx.prototype._$ZT = function() {}\n;\nx.prototype._$Uo = function(aO, aH, aP, aI, aQ, aM, aK, aJ) {\n if (aM < 0.01) {\n return;\n }\n var aL = this._$U2[aO];\n var aN = aM > 0.9 ? Q.EXPAND_W : 0;\n this.gl.drawElements(aL, aP, aI, aQ, aM, aN, this.transform, aJ);\n}\n;\nx.prototype._$Rs = function() {\n throw new Error(\"_$Rs\");\n}\n;\nx.prototype._$Ds = function(aH) {\n throw new Error(\"_$Ds\");\n}\n;\nx.prototype._$K2 = function() {\n for (var aH = 0; aH < this._$sb.length; aH++) {\n var aI = this._$sb[aH];\n if (aI != 0) {\n this.gl._$Sr(1, this._$sb, aH);\n this._$sb[aH] = 0;\n }\n }\n}\n;\nx.prototype.setTexture = function(aI, aH) {\n if (this._$sb.length < aI + 1) {\n this._$nS(aI);\n }\n this._$sb[aI] = aH;\n}\n;\nx.prototype.setTexture = function(aH, aI) {\n if (this._$sb.length < aH + 1) {\n this._$nS(aH);\n }\n this._$U2[aH] = aI;\n}\n;\nx.prototype._$nS = function(aH) {\n var aK = Math.max(this._$sb.length * 2, aH + 1 + 10);\n var aI = new Int32Array(aK);\n P._$jT(this._$sb, 0, aI, 0, this._$sb.length);\n this._$sb = aI;\n var aJ = new Array();\n P._$jT(this._$U2, 0, aJ, 0, this._$U2.length);\n this._$U2 = aJ;\n}\n;\nfunction ab() {\n if (j) {\n return;\n }\n c.prototype.constructor.call(this);\n this._$GS = null;\n this._$Y0 = null;\n}\nab.prototype = new c();\nab._$Xo = new Float32Array(2);\nab._$io = new Float32Array(2);\nab._$0o = new Float32Array(2);\nab._$Lo = new Float32Array(2);\nab._$To = new Float32Array(2);\nab._$Po = new Float32Array(2);\nab._$gT = new Array();\nab.prototype._$zP = function() {\n this._$GS = new g();\n this._$GS._$zP();\n this._$Y0 = new Array();\n}\n;\nab.prototype.getType = function() {\n return c._$c2;\n}\n;\nab.prototype._$F0 = function(aH) {\n c.prototype._$F0.call(this, aH);\n this._$GS = aH._$nP();\n this._$Y0 = aH._$nP();\n c.prototype.readV2_opacity.call(this, aH);\n}\n;\nab.prototype.init = function(aH) {\n var aI = new al(this);\n aI._$Yr = new X();\n if (this._$32()) {\n aI._$Wr = new X();\n }\n return aI;\n}\n;\nab.prototype._$Nr = function(bf, bx) {\n if (!((this == bx._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var bm = bx;\n if (!this._$GS._$Ur(bf)) {\n return;\n }\n var bw = ab._$gT;\n bw[0] = false;\n var a2 = this._$GS._$Q2(bf, bw);\n bx._$Ib(bw[0]);\n this.interpolateOpacity(bf, this._$GS, bx, bw);\n var a3 = bf._$vs();\n var ba = bf._$Tr();\n this._$GS._$zr(a3, ba, a2);\n if (a2 <= 0) {\n var bn = this._$Y0[a3[0]];\n bm._$Yr.init(bn);\n } else {\n if (a2 == 1) {\n var bn = this._$Y0[a3[0]];\n var bl = this._$Y0[a3[1]];\n var a9 = ba[0];\n bm._$Yr._$fL = bn._$fL + (bl._$fL - bn._$fL) * a9;\n bm._$Yr._$gL = bn._$gL + (bl._$gL - bn._$gL) * a9;\n bm._$Yr._$B0 = bn._$B0 + (bl._$B0 - bn._$B0) * a9;\n bm._$Yr._$z0 = bn._$z0 + (bl._$z0 - bn._$z0) * a9;\n bm._$Yr._$qT = bn._$qT + (bl._$qT - bn._$qT) * a9;\n } else {\n if (a2 == 2) {\n var bn = this._$Y0[a3[0]];\n var bl = this._$Y0[a3[1]];\n var a1 = this._$Y0[a3[2]];\n var a0 = this._$Y0[a3[3]];\n var a9 = ba[0];\n var a8 = ba[1];\n var bC = bn._$fL + (bl._$fL - bn._$fL) * a9;\n var bB = a1._$fL + (a0._$fL - a1._$fL) * a9;\n bm._$Yr._$fL = bC + (bB - bC) * a8;\n bC = bn._$gL + (bl._$gL - bn._$gL) * a9;\n bB = a1._$gL + (a0._$gL - a1._$gL) * a9;\n bm._$Yr._$gL = bC + (bB - bC) * a8;\n bC = bn._$B0 + (bl._$B0 - bn._$B0) * a9;\n bB = a1._$B0 + (a0._$B0 - a1._$B0) * a9;\n bm._$Yr._$B0 = bC + (bB - bC) * a8;\n bC = bn._$z0 + (bl._$z0 - bn._$z0) * a9;\n bB = a1._$z0 + (a0._$z0 - a1._$z0) * a9;\n bm._$Yr._$z0 = bC + (bB - bC) * a8;\n bC = bn._$qT + (bl._$qT - bn._$qT) * a9;\n bB = a1._$qT + (a0._$qT - a1._$qT) * a9;\n bm._$Yr._$qT = bC + (bB - bC) * a8;\n } else {\n if (a2 == 3) {\n var aP = this._$Y0[a3[0]];\n var aO = this._$Y0[a3[1]];\n var bu = this._$Y0[a3[2]];\n var bs = this._$Y0[a3[3]];\n var aK = this._$Y0[a3[4]];\n var aJ = this._$Y0[a3[5]];\n var bj = this._$Y0[a3[6]];\n var bi = this._$Y0[a3[7]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var bC = aP._$fL + (aO._$fL - aP._$fL) * a9;\n var bB = bu._$fL + (bs._$fL - bu._$fL) * a9;\n var bz = aK._$fL + (aJ._$fL - aK._$fL) * a9;\n var by = bj._$fL + (bi._$fL - bj._$fL) * a9;\n bm._$Yr._$fL = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$gL + (aO._$gL - aP._$gL) * a9;\n bB = bu._$gL + (bs._$gL - bu._$gL) * a9;\n bz = aK._$gL + (aJ._$gL - aK._$gL) * a9;\n by = bj._$gL + (bi._$gL - bj._$gL) * a9;\n bm._$Yr._$gL = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$B0 + (aO._$B0 - aP._$B0) * a9;\n bB = bu._$B0 + (bs._$B0 - bu._$B0) * a9;\n bz = aK._$B0 + (aJ._$B0 - aK._$B0) * a9;\n by = bj._$B0 + (bi._$B0 - bj._$B0) * a9;\n bm._$Yr._$B0 = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$z0 + (aO._$z0 - aP._$z0) * a9;\n bB = bu._$z0 + (bs._$z0 - bu._$z0) * a9;\n bz = aK._$z0 + (aJ._$z0 - aK._$z0) * a9;\n by = bj._$z0 + (bi._$z0 - bj._$z0) * a9;\n bm._$Yr._$z0 = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$qT + (aO._$qT - aP._$qT) * a9;\n bB = bu._$qT + (bs._$qT - bu._$qT) * a9;\n bz = aK._$qT + (aJ._$qT - aK._$qT) * a9;\n by = bj._$qT + (bi._$qT - bj._$qT) * a9;\n bm._$Yr._$qT = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n } else {\n if (a2 == 4) {\n var aT = this._$Y0[a3[0]];\n var aS = this._$Y0[a3[1]];\n var bE = this._$Y0[a3[2]];\n var bD = this._$Y0[a3[3]];\n var aN = this._$Y0[a3[4]];\n var aM = this._$Y0[a3[5]];\n var bp = this._$Y0[a3[6]];\n var bo = this._$Y0[a3[7]];\n var bh = this._$Y0[a3[8]];\n var bg = this._$Y0[a3[9]];\n var aY = this._$Y0[a3[10]];\n var aW = this._$Y0[a3[11]];\n var a7 = this._$Y0[a3[12]];\n var a5 = this._$Y0[a3[13]];\n var aR = this._$Y0[a3[14]];\n var aQ = this._$Y0[a3[15]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var a4 = ba[3];\n var bC = aT._$fL + (aS._$fL - aT._$fL) * a9;\n var bB = bE._$fL + (bD._$fL - bE._$fL) * a9;\n var bz = aN._$fL + (aM._$fL - aN._$fL) * a9;\n var by = bp._$fL + (bo._$fL - bp._$fL) * a9;\n var bv = bh._$fL + (bg._$fL - bh._$fL) * a9;\n var bt = aY._$fL + (aW._$fL - aY._$fL) * a9;\n var br = a7._$fL + (a5._$fL - a7._$fL) * a9;\n var bq = aR._$fL + (aQ._$fL - aR._$fL) * a9;\n bm._$Yr._$fL = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$gL + (aS._$gL - aT._$gL) * a9;\n bB = bE._$gL + (bD._$gL - bE._$gL) * a9;\n bz = aN._$gL + (aM._$gL - aN._$gL) * a9;\n by = bp._$gL + (bo._$gL - bp._$gL) * a9;\n bv = bh._$gL + (bg._$gL - bh._$gL) * a9;\n bt = aY._$gL + (aW._$gL - aY._$gL) * a9;\n br = a7._$gL + (a5._$gL - a7._$gL) * a9;\n bq = aR._$gL + (aQ._$gL - aR._$gL) * a9;\n bm._$Yr._$gL = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$B0 + (aS._$B0 - aT._$B0) * a9;\n bB = bE._$B0 + (bD._$B0 - bE._$B0) * a9;\n bz = aN._$B0 + (aM._$B0 - aN._$B0) * a9;\n by = bp._$B0 + (bo._$B0 - bp._$B0) * a9;\n bv = bh._$B0 + (bg._$B0 - bh._$B0) * a9;\n bt = aY._$B0 + (aW._$B0 - aY._$B0) * a9;\n br = a7._$B0 + (a5._$B0 - a7._$B0) * a9;\n bq = aR._$B0 + (aQ._$B0 - aR._$B0) * a9;\n bm._$Yr._$B0 = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$z0 + (aS._$z0 - aT._$z0) * a9;\n bB = bE._$z0 + (bD._$z0 - bE._$z0) * a9;\n bz = aN._$z0 + (aM._$z0 - aN._$z0) * a9;\n by = bp._$z0 + (bo._$z0 - bp._$z0) * a9;\n bv = bh._$z0 + (bg._$z0 - bh._$z0) * a9;\n bt = aY._$z0 + (aW._$z0 - aY._$z0) * a9;\n br = a7._$z0 + (a5._$z0 - a7._$z0) * a9;\n bq = aR._$z0 + (aQ._$z0 - aR._$z0) * a9;\n bm._$Yr._$z0 = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$qT + (aS._$qT - aT._$qT) * a9;\n bB = bE._$qT + (bD._$qT - bE._$qT) * a9;\n bz = aN._$qT + (aM._$qT - aN._$qT) * a9;\n by = bp._$qT + (bo._$qT - bp._$qT) * a9;\n bv = bh._$qT + (bg._$qT - bh._$qT) * a9;\n bt = aY._$qT + (aW._$qT - aY._$qT) * a9;\n br = a7._$qT + (a5._$qT - a7._$qT) * a9;\n bq = aR._$qT + (aQ._$qT - aR._$qT) * a9;\n bm._$Yr._$qT = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n } else {\n var aV = Math.pow(2, a2) | 0;\n var aZ = new Float32Array(aV);\n for (var bk = 0; bk < aV; bk++) {\n var aI = bk;\n var aH = 1;\n for (var aL = 0; aL < a2; aL++) {\n aH *= (aI % 2 == 0) ? (1 - ba[aL]) : ba[aL];\n aI /= 2;\n }\n aZ[bk] = aH;\n }\n var bA = new Array();\n for (var aU = 0; aU < aV; aU++) {\n bA[aU] = this._$Y0[a3[aU]];\n }\n var be = 0\n , bc = 0\n , bd = 0\n , bb = 0\n , aX = 0;\n for (var aU = 0; aU < aV; aU++) {\n be += aZ[aU] * bA[aU]._$fL;\n bc += aZ[aU] * bA[aU]._$gL;\n bd += aZ[aU] * bA[aU]._$B0;\n bb += aZ[aU] * bA[aU]._$z0;\n aX += aZ[aU] * bA[aU]._$qT;\n }\n bm._$Yr._$fL = be;\n bm._$Yr._$gL = bc;\n bm._$Yr._$B0 = bd;\n bm._$Yr._$z0 = bb;\n bm._$Yr._$qT = aX;\n }\n }\n }\n }\n }\n var bn = this._$Y0[a3[0]];\n bm._$Yr.reflectX = bn.reflectX;\n bm._$Yr.reflectY = bn.reflectY;\n}\n;\nab.prototype._$2b = function(aM, aH) {\n if (!((this == aH._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aR = aH;\n aR._$hS(true);\n if (!this._$32()) {\n aR.setTotalScale_notForClient(aR._$Yr._$B0);\n aR.setTotalOpacity(aR.getInterpolatedOpacity());\n } else {\n var aT = this.getTargetBaseDataID();\n if (aR._$8r == c._$ur) {\n aR._$8r = aM.getBaseDataIndex(aT);\n }\n if (aR._$8r < 0) {\n if (Q._$so) {\n q._$li(\"_$L _$0P _$G :: %s\", aT);\n }\n aR._$hS(false);\n } else {\n var aI = aM.getBaseData(aR._$8r);\n if (aI != null) {\n var aL = aM._$q2(aR._$8r);\n var aS = ab._$Xo;\n aS[0] = aR._$Yr._$fL;\n aS[1] = aR._$Yr._$gL;\n var aJ = ab._$io;\n aJ[0] = 0;\n aJ[1] = -0.1;\n var aO = aL._$GT().getType();\n if (aO == c._$c2) {\n aJ[1] = -10;\n } else {\n aJ[1] = -0.1;\n }\n var aQ = ab._$0o;\n this._$Jr(aM, aI, aL, aS, aJ, aQ);\n var aP = aC._$92(aJ, aQ);\n aI._$nb(aM, aL, aS, aS, 1, 0, 2);\n aR._$Wr._$fL = aS[0];\n aR._$Wr._$gL = aS[1];\n aR._$Wr._$B0 = aR._$Yr._$B0;\n aR._$Wr._$z0 = aR._$Yr._$z0;\n aR._$Wr._$qT = aR._$Yr._$qT - aP * aC._$NS;\n var aK = aL.getTotalScale();\n aR.setTotalScale_notForClient(aK * aR._$Wr._$B0);\n var aN = aL.getTotalOpacity();\n aR.setTotalOpacity(aN * aR.getInterpolatedOpacity());\n aR._$Wr.reflectX = aR._$Yr.reflectX;\n aR._$Wr.reflectY = aR._$Yr.reflectY;\n aR._$hS(aL._$yo());\n } else {\n aR._$hS(false);\n }\n }\n }\n}\n;\nab.prototype._$nb = function(aJ, aR, aL, a4, aT, aO, a2) {\n if (!((this == aR._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aH = aR;\n var aU = aH._$Wr != null ? aH._$Wr : aH._$Yr;\n var a0 = Math.sin(aC._$bS * aU._$qT);\n var aP = Math.cos(aC._$bS * aU._$qT);\n var a3 = aH.getTotalScale();\n var aW = aU.reflectX ? -1 : 1;\n var aV = aU.reflectY ? -1 : 1;\n var aS = aP * a3 * aW;\n var aQ = -a0 * a3 * aV;\n var a1 = a0 * a3 * aW;\n var aZ = aP * a3 * aV;\n var aY = aU._$fL;\n var aX = aU._$gL;\n var aN, aM;\n var aI = aT * a2;\n for (var aK = aO; aK < aI; aK += a2) {\n aN = aL[aK];\n aM = aL[aK + 1];\n a4[aK] = aS * aN + aQ * aM + aY;\n a4[aK + 1] = a1 * aN + aZ * aM + aX;\n }\n}\n;\nab.prototype._$Jr = function(aP, aK, aI, aR, aQ, aH) {\n if (!((aK == aI._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aO = ab._$Lo;\n ab._$Lo[0] = aR[0];\n ab._$Lo[1] = aR[1];\n aK._$nb(aP, aI, aO, aO, 1, 0, 2);\n var aL = ab._$To;\n var aS = ab._$Po;\n var aN = 10;\n var aJ = 1;\n for (var aM = 0; aM < aN; aM++) {\n aS[0] = aR[0] + aJ * aQ[0];\n aS[1] = aR[1] + aJ * aQ[1];\n aK._$nb(aP, aI, aS, aL, 1, 0, 2);\n aL[0] -= aO[0];\n aL[1] -= aO[1];\n if (aL[0] != 0 || aL[1] != 0) {\n aH[0] = aL[0];\n aH[1] = aL[1];\n return;\n }\n aS[0] = aR[0] - aJ * aQ[0];\n aS[1] = aR[1] - aJ * aQ[1];\n aK._$nb(aP, aI, aS, aL, 1, 0, 2);\n aL[0] -= aO[0];\n aL[1] -= aO[1];\n if (aL[0] != 0 || aL[1] != 0) {\n aL[0] = -aL[0];\n aL[0] = -aL[0];\n aH[0] = aL[0];\n aH[1] = aL[1];\n return;\n }\n aJ *= 0.1;\n }\n if (Q._$so) {\n console.log(\"_$L0 to transform _$SP\\n\");\n }\n}\n;\nfunction al(aH) {\n B.prototype.constructor.call(this, aH);\n this._$8r = c._$ur;\n this._$Yr = null;\n this._$Wr = null;\n}\nal.prototype = new B();\nfunction a() {\n if (j) {\n return;\n }\n ae.prototype.constructor.call(this);\n this._$gP = null;\n this._$dr = null;\n this._$GS = null;\n this._$qb = null;\n this._$Lb = null;\n this._$mS = null;\n}\na.prototype = new ae();\na._$ur = -2;\na._$ES = 500;\na._$wb = 2;\na._$8S = 3;\na._$os = 4;\na._$52 = a._$ES;\na._$R2 = a._$ES;\na._$Sb = function(aJ) {\n for (var aI = aJ.length - 1; aI >= 0; --aI) {\n var aH = aJ[aI];\n if (aH < a._$52) {\n a._$52 = aH;\n } else {\n if (aH > a._$R2) {\n a._$R2 = aH;\n }\n }\n }\n}\n;\na._$or = function() {\n return a._$52;\n}\n;\na._$Pr = function() {\n return a._$R2;\n}\n;\na.prototype._$F0 = function(aH) {\n this._$gP = aH._$nP();\n this._$dr = aH._$nP();\n this._$GS = aH._$nP();\n this._$qb = aH._$6L();\n this._$Lb = aH._$cS();\n this._$mS = aH._$Tb();\n if (aH.getFormatVersion() >= ay._$T7) {\n this.clipID = aH._$nP();\n this.clipIDList = this.convertClipIDForV2_11(this.clipID);\n } else {\n this.clipIDList = null;\n }\n a._$Sb(this._$Lb);\n}\n;\na.prototype.getClipIDList = function() {\n return this.clipIDList;\n}\n;\na.prototype._$Nr = function(aI, aH) {\n aH._$IS[0] = false;\n aH._$Us = aG._$Z2(aI, this._$GS, aH._$IS, this._$Lb);\n if (Q._$Zs) {} else {\n if (aH._$IS[0]) {\n return;\n }\n }\n aH._$7s = aG._$br(aI, this._$GS, aH._$IS, this._$mS);\n}\n;\na.prototype._$2b = function(aH) {}\n;\na.prototype.getDrawDataID = function() {\n return this._$gP;\n}\n;\na.prototype._$j2 = function(aH) {\n this._$gP = aH;\n}\n;\na.prototype.getOpacity = function(aH, aI) {\n return aI._$7s;\n}\n;\na.prototype._$zS = function(aH, aI) {\n return aI._$Us;\n}\n;\na.prototype.getTargetBaseDataID = function() {\n return this._$dr;\n}\n;\na.prototype._$gs = function(aH) {\n this._$dr = aH;\n}\n;\na.prototype._$32 = function() {\n return (this._$dr != null && (this._$dr != n._$2o()));\n}\n;\na.prototype.getType = function() {}\n;\nfunction aq() {\n if (j) {\n return;\n }\n this._$NL = null;\n this._$3S = null;\n this._$aS = null;\n aq._$42++;\n}\naq._$42 = 0;\naq.prototype._$1b = function() {\n return this._$3S;\n}\n;\naq.prototype.getDrawDataList = function() {\n return this._$aS;\n}\n;\naq.prototype._$F0 = function(aH) {\n this._$NL = aH._$nP();\n this._$aS = aH._$nP();\n this._$3S = aH._$nP();\n}\n;\naq.prototype._$kr = function(aH) {\n aH._$Zo(this._$3S);\n aH._$xo(this._$aS);\n this._$3S = null;\n this._$aS = null;\n}\n;\nfunction v() {\n if (j) {\n return;\n }\n aa.prototype.constructor.call(this);\n this._$zo = new x();\n}\nv.prototype = new aa();\nv.loadModel = function(aI) {\n var aH = new v();\n aa._$62(aH, aI);\n return aH;\n}\n;\nv.loadModel = function(aI) {\n var aH = new v();\n aa._$62(aH, aI);\n return aH;\n}\n;\nv._$to = function() {\n var aH = new v();\n return aH;\n}\n;\nv._$er = function(aM) {\n var aJ = new _$5(\"../_$_r/_$t0/_$Ri/_$_P._$d\");\n if (aJ.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aJ._$PL());\n }\n var aH = [\"../_$_r/_$t0/_$Ri/_$_P.512/_$CP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$vP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$EP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$pP._$1\"];\n var aK = v.loadModel(aJ._$3b());\n for (var aI = 0; aI < aH.length; aI++) {\n var aL = new _$5(aH[aI]);\n if (aL.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aL._$PL());\n }\n aK.setTexture(aI, _$nL._$_o(aM, aL._$3b()));\n }\n return aK;\n}\n;\nv.prototype.setGL = function(aH) {\n this._$zo.setGL(aH);\n}\n;\nv.prototype.setTransform = function(aH) {\n this._$zo.setTransform(aH);\n}\n;\nv.prototype.draw = function() {\n this._$5S.draw(this._$zo);\n}\n;\nv.prototype._$K2 = function() {\n this._$zo._$K2();\n}\n;\nv.prototype.setTexture = function(aI, aH) {\n if (this._$zo == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this._$zo.setTexture(aI, aH);\n}\n;\nv.prototype.setTexture = function(aI, aH) {\n if (this._$zo == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this._$zo.setTexture(aI, aH);\n}\n;\nv.prototype._$Rs = function() {\n return this._$zo._$Rs();\n}\n;\nv.prototype._$Ds = function(aH) {\n this._$zo._$Ds(aH);\n}\n;\nv.prototype.getDrawParam = function() {\n return this._$zo;\n}\n;\nfunction ao() {\n if (j) {\n return;\n }\n ah.prototype.constructor.call(this);\n this.motions = new Array();\n this._$o2 = null;\n this._$7r = ao._$Co++;\n this._$D0 = 30;\n this._$yT = 0;\n this._$E = false;\n this.loopFadeIn = true;\n this._$rr = -1;\n this._$eP = 0;\n}\nao.prototype = new ah();\nao._$cs = \"VISIBLE:\";\nao._$ar = \"LAYOUT:\";\nao.MTN_PREFIX_FADEIN = \"FADEIN:\";\nao.MTN_PREFIX_FADEOUT = \"FADEOUT:\";\nao._$Co = 0;\nao._$1T = 1;\nao.loadMotion = function(aJ) {\n var aI = ap._$C(aJ);\n var aH = ao.loadMotion(aI);\n return aH;\n}\n;\nfunction p(aI, aH) {\n return String.fromCharCode(aI.getUint8(aH));\n}\nao.loadMotion = function(aT) {\n if (aT instanceof ArrayBuffer) {\n aT = new DataView(aT);\n }\n var aN = new ao();\n var aI = [0];\n var aQ = aT.byteLength;\n aN._$yT = 0;\n for (var aJ = 0; aJ < aQ; ++aJ) {\n var aS = p(aT, aJ);\n var aL = aS.charCodeAt(0);\n if (aS == \"\\n\" || aS == \"\\r\") {\n continue;\n }\n if (aS == \"#\") {\n for (; aJ < aQ; ++aJ) {\n if (p(aT, aJ) == \"\\n\" || p(aT, aJ) == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if (aS == \"$\") {\n var aV = aJ;\n var aK = -1;\n for (; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \"=\") {\n aK = aJ;\n break;\n }\n }\n var aP = false;\n if (aK >= 0) {\n if (aK == aV + 4 && p(aT, aV + 1) == \"f\" && p(aT, aV + 2) == \"p\" && p(aT, aV + 3) == \"s\") {\n aP = true;\n }\n for (aJ = aK + 1; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \",\" || aS == \" \" || aS == \"\\t\") {\n continue;\n }\n var aM = G._$LS(aT, aQ, aJ, aI);\n if (aI[0] > 0) {\n if (aP && 5 < aM && aM < 121) {\n aN._$D0 = aM;\n }\n }\n aJ = aI[0];\n }\n }\n for (; aJ < aQ; ++aJ) {\n if (p(aT, aJ) == \"\\n\" || p(aT, aJ) == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if ((97 <= aL && aL <= 122) || (65 <= aL && aL <= 90) || aS == \"_\") {\n var aV = aJ;\n var aK = -1;\n for (; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \"=\") {\n aK = aJ;\n break;\n }\n }\n if (aK >= 0) {\n var aO = new t();\n if (G.startsWith(aT, aV, ao._$cs)) {\n aO._$RP = t._$hs;\n aO._$4P = G.createString(aT, aV, aK - aV);\n } else {\n if (G.startsWith(aT, aV, ao._$ar)) {\n aO._$4P = G.createString(aT, aV + 7, aK - aV - 7);\n if (G.startsWith(aT, aV + 7, \"ANCHOR_X\")) {\n aO._$RP = t._$xs;\n } else {\n if (G.startsWith(aT, aV + 7, \"ANCHOR_Y\")) {\n aO._$RP = t._$us;\n } else {\n if (G.startsWith(aT, aV + 7, \"SCALE_X\")) {\n aO._$RP = t._$qs;\n } else {\n if (G.startsWith(aT, aV + 7, \"SCALE_Y\")) {\n aO._$RP = t._$Ys;\n } else {\n if (G.startsWith(aT, aV + 7, \"X\")) {\n aO._$RP = t._$ws;\n } else {\n if (G.startsWith(aT, aV + 7, \"Y\")) {\n aO._$RP = t._$Ns;\n }\n }\n }\n }\n }\n }\n } else {\n aO._$RP = t._$Fr;\n aO._$4P = G.createString(aT, aV, aK - aV);\n }\n }\n aN.motions.push(aO);\n var aU = 0;\n var aR = [];\n for (aJ = aK + 1; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \",\" || aS == \" \" || aS == \"\\t\") {\n continue;\n }\n var aM = G._$LS(aT, aQ, aJ, aI);\n if (aI[0] > 0) {\n aR.push(aM);\n aU++;\n var aH = aI[0];\n if (aH < aJ) {\n console.log(\"_$n0 _$hi . @Live2DMotion loadMotion()\\n\");\n break;\n }\n aJ = aH - 1;\n }\n }\n aO._$I0 = new Float32Array(aR);\n if (aU > aN._$yT) {\n aN._$yT = aU;\n }\n }\n }\n }\n aN._$rr = ((1000 * aN._$yT) / aN._$D0) | 0;\n return aN;\n}\n;\nao.prototype.getDurationMSec = function() {\n return this._$E ? -1 : this._$rr;\n}\n;\nao.prototype.getLoopDurationMSec = function() {\n return this._$rr;\n}\n;\nao.prototype.dump = function() {\n for (var aJ = 0; aJ < this.motions.length; aJ++) {\n var aH = this.motions[aJ];\n console.log(\"_$wL[%s] [%d]. \", aH._$4P, aH._$I0.length);\n for (var aI = 0; aI < aH._$I0.length && aI < 10; aI++) {\n console.log(\"%5.2f ,\", aH._$I0[aI]);\n }\n console.log(\"\\n\");\n }\n}\n;\nao.prototype.updateParamExe = function(aJ, aN, aQ, a3) {\n var aO = aN - a3._$z2;\n var a0 = aO * this._$D0 / 1000;\n var aK = a0 | 0;\n var aR = a0 - aK;\n for (var aZ = 0; aZ < this.motions.length; aZ++) {\n var aV = this.motions[aZ];\n var aL = aV._$I0.length;\n var aT = aV._$4P;\n if (aV._$RP == t._$hs) {\n var aX = aV._$I0[(aK >= aL ? aL - 1 : aK)];\n aJ.setParamFloat(aT, aX);\n } else {\n if (t._$ws <= aV._$RP && aV._$RP <= t._$Ys) {} else {\n var aH = aJ.getParamIndex(aT);\n var a4 = aJ.getModelContext();\n var aY = a4.getParamMax(aH);\n var aW = a4.getParamMin(aH);\n var aM = 0.4;\n var aS = aM * (aY - aW);\n var aU = a4.getParamFloat(aH);\n var a2 = aV._$I0[(aK >= aL ? aL - 1 : aK)];\n var a1 = aV._$I0[(aK + 1 >= aL ? aL - 1 : aK + 1)];\n var aI;\n if ((a2 < a1 && a1 - a2 > aS) || (a2 > a1 && a2 - a1 > aS)) {\n aI = a2;\n } else {\n aI = a2 + (a1 - a2) * aR;\n }\n var aP = aU + (aI - aU) * aQ;\n aJ.setParamFloat(aT, aP);\n }\n }\n }\n if (aK >= this._$yT) {\n if (this._$E) {\n a3._$z2 = aN;\n if (this.loopFadeIn) {\n a3._$bs = aN;\n }\n } else {\n a3._$9L = true;\n }\n }\n this._$eP = aQ;\n}\n;\nao.prototype._$r0 = function() {\n return this._$E;\n}\n;\nao.prototype._$aL = function(aH) {\n this._$E = aH;\n}\n;\nao.prototype._$S0 = function() {\n return this._$D0;\n}\n;\nao.prototype._$U0 = function(aH) {\n this._$D0 = aH;\n}\n;\nao.prototype.isLoopFadeIn = function() {\n return this.loopFadeIn;\n}\n;\nao.prototype.setLoopFadeIn = function(aH) {\n this.loopFadeIn = aH;\n}\n;\nfunction aE() {\n this._$P = new Float32Array(100);\n this.size = 0;\n}\naE.prototype.clear = function() {\n this.size = 0;\n}\n;\naE.prototype.add = function(aI) {\n if (this._$P.length <= this.size) {\n var aH = new Float32Array(this.size * 2);\n P._$jT(this._$P, 0, aH, 0, this.size);\n this._$P = aH;\n }\n this._$P[this.size++] = aI;\n}\n;\naE.prototype._$BL = function() {\n var aH = new Float32Array(this.size);\n P._$jT(this._$P, 0, aH, 0, this.size);\n return aH;\n}\n;\nfunction t() {\n this._$4P = null;\n this._$I0 = null;\n this._$RP = null;\n}\nt._$Fr = 0;\nt._$hs = 1;\nt._$ws = 100;\nt._$Ns = 101;\nt._$xs = 102;\nt._$us = 103;\nt._$qs = 104;\nt._$Ys = 105;\nfunction E() {\n if (j) {\n return;\n }\n c.prototype.constructor.call(this);\n this._$o = 0;\n this._$A = 0;\n this._$GS = null;\n this._$Eo = null;\n}\nE.prototype = new c();\nE._$gT = new Array();\nE.prototype._$zP = function() {\n this._$GS = new g();\n this._$GS._$zP();\n}\n;\nE.prototype._$F0 = function(aH) {\n c.prototype._$F0.call(this, aH);\n this._$A = aH._$6L();\n this._$o = aH._$6L();\n this._$GS = aH._$nP();\n this._$Eo = aH._$nP();\n c.prototype.readV2_opacity.call(this, aH);\n}\n;\nE.prototype.init = function(aH) {\n var aI = new H(this);\n var aJ = (this._$o + 1) * (this._$A + 1);\n if (aI._$Cr != null) {\n aI._$Cr = null;\n }\n aI._$Cr = new Float32Array(aJ * 2);\n if (aI._$hr != null) {\n aI._$hr = null;\n }\n if (this._$32()) {\n aI._$hr = new Float32Array(aJ * 2);\n } else {\n aI._$hr = null;\n }\n return aI;\n}\n;\nE.prototype._$Nr = function(aJ, aI) {\n var aK = aI;\n if (!this._$GS._$Ur(aJ)) {\n return;\n }\n var aL = this._$VT();\n var aH = E._$gT;\n aH[0] = false;\n aG._$Vr(aJ, this._$GS, aH, aL, this._$Eo, aK._$Cr, 0, 2);\n aI._$Ib(aH[0]);\n this.interpolateOpacity(aJ, this._$GS, aI, aH);\n}\n;\nE.prototype._$2b = function(aK, aJ) {\n var aL = aJ;\n aL._$hS(true);\n if (!this._$32()) {\n aL.setTotalOpacity(aL.getInterpolatedOpacity());\n } else {\n var aH = this.getTargetBaseDataID();\n if (aL._$8r == c._$ur) {\n aL._$8r = aK.getBaseDataIndex(aH);\n }\n if (aL._$8r < 0) {\n if (Q._$so) {\n q._$li(\"_$L _$0P _$G :: %s\", aH);\n }\n aL._$hS(false);\n } else {\n var aN = aK.getBaseData(aL._$8r);\n var aI = aK._$q2(aL._$8r);\n if (aN != null && aI._$yo()) {\n var aM = aI.getTotalScale();\n aL.setTotalScale_notForClient(aM);\n var aO = aI.getTotalOpacity();\n aL.setTotalOpacity(aO * aL.getInterpolatedOpacity());\n aN._$nb(aK, aI, aL._$Cr, aL._$hr, this._$VT(), 0, 2);\n aL._$hS(true);\n } else {\n aL._$hS(false);\n }\n }\n }\n}\n;\nE.prototype._$nb = function(aL, aI, aH, aM, aO, aK, aJ) {\n if (true) {\n var aN = aI;\n var aP = (aN._$hr != null) ? aN._$hr : aN._$Cr;\n E.transformPoints_sdk2(aH, aM, aO, aK, aJ, aP, this._$o, this._$A);\n } else {\n this.transformPoints_sdk1(aL, aI, aH, aM, aO, aK, aJ);\n }\n}\n;\nE.transformPoints_sdk2 = function(a0, bc, a5, aP, aI, aR, aQ, aU) {\n var aW = a5 * aI;\n var aV;\n var bn, bm;\n var aT = 0;\n var aS = 0;\n var bl = 0;\n var bk = 0;\n var bf = 0;\n var be = 0;\n var aZ = false;\n for (var ba = aP; ba < aW; ba += aI) {\n var bd, a7, a4, aX;\n a4 = a0[ba];\n aX = a0[ba + 1];\n bd = a4 * aQ;\n a7 = aX * aU;\n if (bd < 0 || a7 < 0 || aQ <= bd || aU <= a7) {\n var a1 = aQ + 1;\n if (!aZ) {\n aZ = true;\n aT = 0.25 * (aR[((0) + (0) * a1) * 2] + aR[((aQ) + (0) * a1) * 2] + aR[((0) + (aU) * a1) * 2] + aR[((aQ) + (aU) * a1) * 2]);\n aS = 0.25 * (aR[((0) + (0) * a1) * 2 + 1] + aR[((aQ) + (0) * a1) * 2 + 1] + aR[((0) + (aU) * a1) * 2 + 1] + aR[((aQ) + (aU) * a1) * 2 + 1]);\n var aM = aR[((aQ) + (aU) * a1) * 2] - aR[((0) + (0) * a1) * 2];\n var aL = aR[((aQ) + (aU) * a1) * 2 + 1] - aR[((0) + (0) * a1) * 2 + 1];\n var bh = aR[((aQ) + (0) * a1) * 2] - aR[((0) + (aU) * a1) * 2];\n var bg = aR[((aQ) + (0) * a1) * 2 + 1] - aR[((0) + (aU) * a1) * 2 + 1];\n bl = (aM + bh) * 0.5;\n bk = (aL + bg) * 0.5;\n bf = (aM - bh) * 0.5;\n be = (aL - bg) * 0.5;\n if (bl == 0 && bk == 0) {}\n if (bf == 0 && be == 0) {}\n aT -= 0.5 * (bl + bf);\n aS -= 0.5 * (bk + be);\n }\n if ((-2 < a4 && a4 < 3) && (-2 < aX && aX < 3)) {\n if (a4 <= 0) {\n if (aX <= 0) {\n var a3 = aR[((0) + (0) * a1) * 2];\n var a2 = aR[((0) + (0) * a1) * 2 + 1];\n var a8 = aT - 2 * bl;\n var a6 = aS - 2 * bk;\n var aK = aT - 2 * bf;\n var aJ = aS - 2 * be;\n var aO = aT - 2 * bl - 2 * bf;\n var aN = aS - 2 * bk - 2 * be;\n var bj = 0.5 * (a4 - (-2));\n var bi = 0.5 * (aX - (-2));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n if (aX >= 1) {\n var aK = aR[((0) + (aU) * a1) * 2];\n var aJ = aR[((0) + (aU) * a1) * 2 + 1];\n var aO = aT - 2 * bl + 1 * bf;\n var aN = aS - 2 * bk + 1 * be;\n var a3 = aT + 3 * bf;\n var a2 = aS + 3 * be;\n var a8 = aT - 2 * bl + 3 * bf;\n var a6 = aS - 2 * bk + 3 * be;\n var bj = 0.5 * (a4 - (-2));\n var bi = 0.5 * (aX - (1));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n var aH = (a7 | 0);\n if (aH == aU) {\n aH = aU - 1;\n }\n var bj = 0.5 * (a4 - (-2));\n var bi = a7 - aH;\n var bb = aH / aU;\n var a9 = (aH + 1) / aU;\n var aK = aR[((0) + (aH) * a1) * 2];\n var aJ = aR[((0) + (aH) * a1) * 2 + 1];\n var a3 = aR[((0) + (aH + 1) * a1) * 2];\n var a2 = aR[((0) + (aH + 1) * a1) * 2 + 1];\n var aO = aT - 2 * bl + bb * bf;\n var aN = aS - 2 * bk + bb * be;\n var a8 = aT - 2 * bl + a9 * bf;\n var a6 = aS - 2 * bk + a9 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n }\n }\n } else {\n if (1 <= a4) {\n if (aX <= 0) {\n var a8 = aR[((aQ) + (0) * a1) * 2];\n var a6 = aR[((aQ) + (0) * a1) * 2 + 1];\n var a3 = aT + 3 * bl;\n var a2 = aS + 3 * bk;\n var aO = aT + 1 * bl - 2 * bf;\n var aN = aS + 1 * bk - 2 * be;\n var aK = aT + 3 * bl - 2 * bf;\n var aJ = aS + 3 * bk - 2 * be;\n var bj = 0.5 * (a4 - (1));\n var bi = 0.5 * (aX - (-2));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n if (aX >= 1) {\n var aO = aR[((aQ) + (aU) * a1) * 2];\n var aN = aR[((aQ) + (aU) * a1) * 2 + 1];\n var aK = aT + 3 * bl + 1 * bf;\n var aJ = aS + 3 * bk + 1 * be;\n var a8 = aT + 1 * bl + 3 * bf;\n var a6 = aS + 1 * bk + 3 * be;\n var a3 = aT + 3 * bl + 3 * bf;\n var a2 = aS + 3 * bk + 3 * be;\n var bj = 0.5 * (a4 - (1));\n var bi = 0.5 * (aX - (1));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n var aH = (a7 | 0);\n if (aH == aU) {\n aH = aU - 1;\n }\n var bj = 0.5 * (a4 - (1));\n var bi = a7 - aH;\n var bb = aH / aU;\n var a9 = (aH + 1) / aU;\n var aO = aR[((aQ) + (aH) * a1) * 2];\n var aN = aR[((aQ) + (aH) * a1) * 2 + 1];\n var a8 = aR[((aQ) + (aH + 1) * a1) * 2];\n var a6 = aR[((aQ) + (aH + 1) * a1) * 2 + 1];\n var aK = aT + 3 * bl + bb * bf;\n var aJ = aS + 3 * bk + bb * be;\n var a3 = aT + 3 * bl + a9 * bf;\n var a2 = aS + 3 * bk + a9 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n }\n }\n } else {\n if (aX <= 0) {\n var aY = (bd | 0);\n if (aY == aQ) {\n aY = aQ - 1;\n }\n var bj = bd - aY;\n var bi = 0.5 * (aX - (-2));\n var bp = aY / aQ;\n var bo = (aY + 1) / aQ;\n var a8 = aR[((aY) + (0) * a1) * 2];\n var a6 = aR[((aY) + (0) * a1) * 2 + 1];\n var a3 = aR[((aY + 1) + (0) * a1) * 2];\n var a2 = aR[((aY + 1) + (0) * a1) * 2 + 1];\n var aO = aT + bp * bl - 2 * bf;\n var aN = aS + bp * bk - 2 * be;\n var aK = aT + bo * bl - 2 * bf;\n var aJ = aS + bo * bk - 2 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n if (aX >= 1) {\n var aY = (bd | 0);\n if (aY == aQ) {\n aY = aQ - 1;\n }\n var bj = bd - aY;\n var bi = 0.5 * (aX - (1));\n var bp = aY / aQ;\n var bo = (aY + 1) / aQ;\n var aO = aR[((aY) + (aU) * a1) * 2];\n var aN = aR[((aY) + (aU) * a1) * 2 + 1];\n var aK = aR[((aY + 1) + (aU) * a1) * 2];\n var aJ = aR[((aY + 1) + (aU) * a1) * 2 + 1];\n var a8 = aT + bp * bl + 3 * bf;\n var a6 = aS + bp * bk + 3 * be;\n var a3 = aT + bo * bl + 3 * bf;\n var a2 = aS + bo * bk + 3 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n System.err.printf(\"_$li calc : %.4f , %.4f @@BDBoxGrid\\n\", a4, aX);\n }\n }\n }\n }\n } else {\n bc[ba] = aT + a4 * bl + aX * bf;\n bc[ba + 1] = aS + a4 * bk + aX * be;\n }\n } else {\n bn = bd - (bd | 0);\n bm = a7 - (a7 | 0);\n aV = 2 * ((bd | 0) + ((a7 | 0)) * (aQ + 1));\n if (bn + bm < 1) {\n bc[ba] = aR[aV] * (1 - bn - bm) + aR[aV + 2] * bn + aR[aV + 2 * (aQ + 1)] * bm;\n bc[ba + 1] = aR[aV + 1] * (1 - bn - bm) + aR[aV + 3] * bn + aR[aV + 2 * (aQ + 1) + 1] * bm;\n } else {\n bc[ba] = aR[aV + 2 * (aQ + 1) + 2] * (bn - 1 + bm) + aR[aV + 2 * (aQ + 1)] * (1 - bn) + aR[aV + 2] * (1 - bm);\n bc[ba + 1] = aR[aV + 2 * (aQ + 1) + 3] * (bn - 1 + bm) + aR[aV + 2 * (aQ + 1) + 1] * (1 - bn) + aR[aV + 3] * (1 - bm);\n }\n }\n }\n}\n;\nE.prototype.transformPoints_sdk1 = function(aJ, aR, aL, a0, aU, aP, aZ) {\n var aH = aR;\n var aO, aN;\n var aM = this._$o;\n var aQ = this._$A;\n var aI = aU * aZ;\n var aS, aY;\n var aV;\n var aX, aW;\n var aT = (aH._$hr != null) ? aH._$hr : aH._$Cr;\n for (var aK = aP; aK < aI; aK += aZ) {\n if (Q._$ts) {\n aO = aL[aK];\n aN = aL[aK + 1];\n if (aO < 0) {\n aO = 0;\n } else {\n if (aO > 1) {\n aO = 1;\n }\n }\n if (aN < 0) {\n aN = 0;\n } else {\n if (aN > 1) {\n aN = 1;\n }\n }\n aO *= aM;\n aN *= aQ;\n aS = (aO | 0);\n aY = (aN | 0);\n if (aS > aM - 1) {\n aS = aM - 1;\n }\n if (aY > aQ - 1) {\n aY = aQ - 1;\n }\n aX = aO - aS;\n aW = aN - aY;\n aV = 2 * (aS + aY * (aM + 1));\n } else {\n aO = aL[aK] * aM;\n aN = aL[aK + 1] * aQ;\n aX = aO - (aO | 0);\n aW = aN - (aN | 0);\n aV = 2 * ((aO | 0) + (aN | 0) * (aM + 1));\n }\n if (aX + aW < 1) {\n a0[aK] = aT[aV] * (1 - aX - aW) + aT[aV + 2] * aX + aT[aV + 2 * (aM + 1)] * aW;\n a0[aK + 1] = aT[aV + 1] * (1 - aX - aW) + aT[aV + 3] * aX + aT[aV + 2 * (aM + 1) + 1] * aW;\n } else {\n a0[aK] = aT[aV + 2 * (aM + 1) + 2] * (aX - 1 + aW) + aT[aV + 2 * (aM + 1)] * (1 - aX) + aT[aV + 2] * (1 - aW);\n a0[aK + 1] = aT[aV + 2 * (aM + 1) + 3] * (aX - 1 + aW) + aT[aV + 2 * (aM + 1) + 1] * (1 - aX) + aT[aV + 3] * (1 - aW);\n }\n }\n}\n;\nE.prototype._$VT = function() {\n return (this._$o + 1) * (this._$A + 1);\n}\n;\nE.prototype.getType = function() {\n return c._$_b;\n}\n;\nfunction H(aH) {\n B.prototype.constructor.call(this, aH);\n this._$8r = c._$ur;\n this._$Cr = null;\n this._$hr = null;\n}\nH.prototype = new B();\nfunction s() {\n if (j) {\n return;\n }\n this.visible = true;\n this._$g0 = false;\n this._$NL = null;\n this._$3S = null;\n this._$aS = null;\n s._$42++;\n}\ns._$42 = 0;\ns.prototype._$zP = function() {\n this._$3S = new Array();\n this._$aS = new Array();\n}\n;\ns.prototype._$F0 = function(aH) {\n this._$g0 = aH._$8L();\n this.visible = aH._$8L();\n this._$NL = aH._$nP();\n this._$3S = aH._$nP();\n this._$aS = aH._$nP();\n}\n;\ns.prototype.init = function(aI) {\n var aH = new aj(this);\n aH.setPartsOpacity(this.isVisible() ? 1 : 0);\n return aH;\n}\n;\ns.prototype._$6o = function(aH) {\n if (this._$3S == null) {\n throw new Error(\"_$3S _$6 _$Wo@_$6o\");\n }\n this._$3S.push(aH);\n}\n;\ns.prototype._$3o = function(aH) {\n if (this._$aS == null) {\n throw new Error(\"_$aS _$6 _$Wo@_$3o\");\n }\n this._$aS.push(aH);\n}\n;\ns.prototype._$Zo = function(aH) {\n this._$3S = aH;\n}\n;\ns.prototype._$xo = function(aH) {\n this._$aS = aH;\n}\n;\ns.prototype.isVisible = function() {\n return this.visible;\n}\n;\ns.prototype._$uL = function() {\n return this._$g0;\n}\n;\ns.prototype._$KP = function(aH) {\n this.visible = aH;\n}\n;\ns.prototype._$ET = function(aH) {\n this._$g0 = aH;\n}\n;\ns.prototype.getBaseData = function() {\n return this._$3S;\n}\n;\ns.prototype.getDrawData = function() {\n return this._$aS;\n}\n;\ns.prototype._$p2 = function() {\n return this._$NL;\n}\n;\ns.prototype._$ob = function(aH) {\n this._$NL = aH;\n}\n;\ns.prototype.getPartsID = function() {\n return this._$NL;\n}\n;\ns.prototype._$MP = function(aH) {\n this._$NL = aH;\n}\n;\nfunction aj(aH) {\n this._$VS = null;\n this._$e0 = null;\n this._$e0 = aH;\n}\naj.prototype = new S();\naj.prototype.getPartsOpacity = function() {\n return this._$VS;\n}\n;\naj.prototype.setPartsOpacity = function(aH) {\n this._$VS = aH;\n}\n;\nfunction ak(aH) {\n if (j) {\n return;\n }\n this.id = aH;\n}\nak._$L7 = function() {\n z._$27();\n n._$27();\n Z._$27();\n i._$27();\n}\n;\nak.prototype.toString = function() {\n return this.id;\n}\n;\nfunction D() {}\nD.prototype._$F0 = function(aH) {}\n;\nfunction an() {\n if (j) {\n return;\n }\n this._$4S = null;\n}\nan.prototype._$1s = function() {\n return this._$4S;\n}\n;\nan.prototype._$zP = function() {\n this._$4S = new Array();\n}\n;\nan.prototype._$F0 = function(aH) {\n this._$4S = aH._$nP();\n}\n;\nan.prototype._$Ks = function(aH) {\n this._$4S.push(aH);\n}\n;\nfunction au(aH, aI) {\n this.canvas = aH;\n this.context = aI;\n this.viewport = new Array(0,0,aH.width,aH.height);\n this._$6r = 1;\n this._$xP = 0;\n this._$3r = 1;\n this._$uP = 0;\n this._$Qo = -1;\n this.cacheImages = {};\n}\nau.tr = new am();\nau._$50 = new am();\nau._$Ti = new Array(0,0);\nau._$Pi = new Array(0,0);\nau._$B = new Array(0,0);\nau.prototype._$lP = function(aI, aK, aJ, aH) {\n this.viewport = new Array(aI,aK,aJ,aH);\n}\n;\nau.prototype._$bL = function() {\n this.context.save();\n var aH = this.viewport;\n if (aH != null) {\n this.context.beginPath();\n this.context._$Li(aH[0], aH[1], aH[2], aH[3]);\n this.context.clip();\n }\n}\n;\nau.prototype._$ei = function() {\n this.context.restore();\n}\n;\nau.prototype.drawElements = function(bc, bm, aX, aJ, bA, aM, bl, bz) {\n try {\n if (bA != this._$Qo) {\n this._$Qo = bA;\n this.context.globalAlpha = bA;\n }\n var a2 = bm.length;\n var aP = bc.width;\n var a5 = bc.height;\n var bE = this.context;\n var a7 = this._$xP;\n var a6 = this._$uP;\n var a1 = this._$6r;\n var aZ = this._$3r;\n var bD = au.tr;\n var aI = au._$Ti;\n var aH = au._$Pi;\n var bu = au._$B;\n for (var by = 0; by < a2; by += 3) {\n bE.save();\n var aW = bm[by];\n var aV = bm[by + 1];\n var aT = bm[by + 2];\n var aL = a7 + a1 * aX[aW * 2];\n var aK = a6 + aZ * aX[aW * 2 + 1];\n var br = a7 + a1 * aX[aV * 2];\n var bp = a6 + aZ * aX[aV * 2 + 1];\n var bh = a7 + a1 * aX[aT * 2];\n var bf = a6 + aZ * aX[aT * 2 + 1];\n if (bl) {\n bl._$PS(aL, aK, bu);\n aL = bu[0];\n aK = bu[1];\n bl._$PS(br, bp, bu);\n br = bu[0];\n bp = bu[1];\n bl._$PS(bh, bf, bu);\n bh = bu[0];\n bf = bu[1];\n }\n var aS = aP * aJ[aW * 2];\n var aQ = a5 - a5 * aJ[aW * 2 + 1];\n var bx = aP * aJ[aV * 2];\n var bw = a5 - a5 * aJ[aV * 2 + 1];\n var bk = aP * aJ[aT * 2];\n var bj = a5 - a5 * aJ[aT * 2 + 1];\n var a3 = Math.atan2(bw - aQ, bx - aS);\n var a0 = Math.atan2(bp - aK, br - aL);\n var aO = br - aL;\n var aN = bp - aK;\n var bi = Math.sqrt(aO * aO + aN * aN);\n var aU = bx - aS;\n var aR = bw - aQ;\n var bt = Math.sqrt(aU * aU + aR * aR);\n var bv = bi / bt;\n ad._$ni(bk, bj, aS, aQ, (bx - aS), (bw - aQ), -(bw - aQ), (bx - aS), aI);\n ad._$ni(bh, bf, aL, aK, (br - aL), (bp - aK), -(bp - aK), (br - aL), aH);\n var aY = (aH[0] - aI[0]) / aI[1];\n var bs = Math.min(aS, bx, bk);\n var bg = Math.max(aS, bx, bk);\n var bq = Math.min(aQ, bw, bj);\n var be = Math.max(aQ, bw, bj);\n var bo = Math.floor(bs);\n var bb = Math.floor(bq);\n var a4 = Math.ceil(bg);\n var bC = Math.ceil(be);\n bD.identity();\n bD.translate(aL, aK);\n bD.rotate(a0);\n bD.scale(1, aH[1] / aI[1]);\n bD.shear(aY, 0);\n bD.scale(bv, bv);\n bD.rotate(-a3);\n bD.translate(-aS, -aQ);\n bD.setContext(bE);\n var a8 = true;\n var a9 = 1.2;\n if (!aM) {\n aM = a8 ? a9 : 0;\n }\n if (Q.IGNORE_EXPAND) {\n aM = 0;\n }\n if (Q.USE_CACHED_POLYGON_IMAGE) {\n var bd = bz._$e0;\n bd.gl_cacheImage = bd.gl_cacheImage || {};\n if (!bd.gl_cacheImage[by]) {\n var bn = au.createCanvas(a4 - bo, bC - bb);\n Q.DEBUG_DATA.LDGL_CANVAS_MB = Q.DEBUG_DATA.LDGL_CANVAS_MB || 0;\n Q.DEBUG_DATA.LDGL_CANVAS_MB += (a4 - bo) * (bC - bb) * 4;\n var ba = bn.getContext(\"2d\");\n ba.translate(-bo, -bb);\n au.clip(ba, bD, aM, bi, aS, aQ, bx, bw, bk, bj, aL, aK, br, bp, bh, bf);\n ba.drawImage(bc, 0, 0);\n bd.gl_cacheImage[by] = {\n cacheCanvas: bn,\n cacheContext: ba\n };\n }\n bE.drawImage(bd.gl_cacheImage[by][\"cacheCanvas\"], bo, bb);\n } else {\n if (!Q.IGNORE_CLIP) {\n au.clip(bE, bD, aM, bi, aS, aQ, bx, bw, bk, bj, aL, aK, br, bp, bh, bf);\n }\n if (Q.USE_ADJUST_TRANSLATION) {\n bs = 0;\n bg = aP;\n bq = 0;\n be = a5;\n }\n bE.drawImage(bc, bs, bq, bg - bs, be - bq, bs, bq, bg - bs, be - bq);\n }\n bE.restore();\n }\n } catch (bB) {\n q._$Rb(bB);\n }\n}\n;\nau.clip = function(aK, aJ, aV, aI, aM, aL, aU, aT, aQ, aP, aO, aN, aH, aW, aS, aR) {\n if (aV > 0.02) {\n au.expandClip(aK, aJ, aV, aI, aO, aN, aH, aW, aS, aR);\n } else {\n au.clipWithTransform(aK, null, aM, aL, aU, aT, aQ, aP);\n }\n}\n;\nau.expandClip = function(aV, bg, aK, a3, aJ, aI, be, ba, aZ, aX) {\n var aP = be - aJ;\n var aO = ba - aI;\n var bi = aZ - aJ;\n var bh = aX - aI;\n var bj = aP * bh - aO * bi > 0 ? aK : -aK;\n var aL = -aO;\n var aH = aP;\n var bc = aZ - be;\n var a8 = aX - ba;\n var a7 = -a8;\n var a6 = bc;\n var aQ = Math.sqrt(bc * bc + a8 * a8);\n var bf = -bh;\n var bb = bi;\n var a2 = Math.sqrt(bi * bi + bh * bh);\n var bd = aJ - bj * aL / a3;\n var a9 = aI - bj * aH / a3;\n var aY = be - bj * aL / a3;\n var aW = ba - bj * aH / a3;\n var a5 = be - bj * a7 / aQ;\n var a4 = ba - bj * a6 / aQ;\n var aS = aZ - bj * a7 / aQ;\n var aR = aX - bj * a6 / aQ;\n var aN = aJ + bj * bf / a2;\n var aM = aI + bj * bb / a2;\n var a1 = aZ + bj * bf / a2;\n var a0 = aX + bj * bb / a2;\n var aU = au._$50;\n var aT = bg._$P2(aU);\n if (aT == null) {\n return false;\n }\n au.clipWithTransform(aV, aU, bd, a9, aY, aW, a5, a4, aS, aR, a1, a0, aN, aM);\n return true;\n}\n;\nau.clipWithTransform = function(aH, aI, aS, aN, aQ, aK, aP, aJ) {\n if (arguments.length < (1 + 3 * 2)) {\n q._$li(\"err : @LDGL.clip()\");\n return;\n }\n if (!(arguments[1]instanceof am)) {\n q._$li(\"err : a[0] is _$6 LDTransform @LDGL.clip()\");\n return;\n }\n var aM = au._$B;\n var aO = aI;\n var aR = arguments;\n aH.beginPath();\n if (aO) {\n aO._$PS(aR[2], aR[3], aM);\n aH.moveTo(aM[0], aM[1]);\n for (var aL = 4; aL < aR.length; aL += 2) {\n aO._$PS(aR[aL], aR[aL + 1], aM);\n aH.lineTo(aM[0], aM[1]);\n }\n } else {\n aH.moveTo(aR[2], aR[3]);\n for (var aL = 4; aL < aR.length; aL += 2) {\n aH.lineTo(aR[aL], aR[aL + 1]);\n }\n }\n aH.clip();\n}\n;\nau.createCanvas = function(aH, aJ) {\n var aI = document.createElement(\"canvas\");\n aI.setAttribute(\"width\", aH);\n aI.setAttribute(\"height\", aJ);\n if (!aI) {\n q._$li(\"err : \" + aI);\n }\n return aI;\n}\n;\nau.dumpValues = function() {\n var aI = \"\";\n for (var aH = 0; aH < arguments.length; aH++) {\n aI += \"[\" + aH + \"]= \" + arguments[aH].toFixed(3) + \" , \";\n }\n console.log(aI);\n}\n;\nfunction f() {\n if (j) {\n return;\n }\n this._$TT = null;\n this._$LT = null;\n this._$FS = null;\n this._$wL = null;\n}\nf.prototype._$F0 = function(aH) {\n this._$TT = aH._$_T();\n this._$LT = aH._$_T();\n this._$FS = aH._$_T();\n this._$wL = aH._$nP();\n}\n;\nf.prototype.getMinValue = function() {\n return this._$TT;\n}\n;\nf.prototype.getMaxValue = function() {\n return this._$LT;\n}\n;\nf.prototype.getDefaultValue = function() {\n return this._$FS;\n}\n;\nf.prototype.getParamID = function() {\n return this._$wL;\n}\n;\nfunction B(aH) {\n if (j) {\n return;\n }\n this._$e0 = null;\n this._$IP = null;\n this._$JS = false;\n this._$AT = true;\n this._$e0 = aH;\n this.totalScale = 1;\n this._$7s = 1;\n this.totalOpacity = 1;\n}\nB.prototype._$yo = function() {\n return this._$AT && !this._$JS;\n}\n;\nB.prototype._$hS = function(aH) {\n this._$AT = aH;\n}\n;\nB.prototype._$GT = function() {\n return this._$e0;\n}\n;\nB.prototype._$l2 = function(aH) {\n this._$IP = aH;\n}\n;\nB.prototype.getPartsIndex = function() {\n return this._$IP;\n}\n;\nB.prototype._$x2 = function() {\n return this._$JS;\n}\n;\nB.prototype._$Ib = function(aH) {\n this._$JS = aH;\n}\n;\nB.prototype.getTotalScale = function() {\n return this.totalScale;\n}\n;\nB.prototype.setTotalScale_notForClient = function(aH) {\n this.totalScale = aH;\n}\n;\nB.prototype.getInterpolatedOpacity = function() {\n return this._$7s;\n}\n;\nB.prototype.setInterpolatedOpacity = function(aH) {\n this._$7s = aH;\n}\n;\nB.prototype.getTotalOpacity = function(aH) {\n return this.totalOpacity;\n}\n;\nB.prototype.setTotalOpacity = function(aH) {\n this.totalOpacity = aH;\n}\n;\nfunction Q() {}\nQ._$2s = \"2.1.00_1\";\nQ._$Kr = 201001000;\nQ._$sP = true;\nQ._$so = true;\nQ._$cb = false;\nQ._$3T = true;\nQ._$Ts = true;\nQ._$fb = true;\nQ._$ts = true;\nQ.L2D_DEFORMER_EXTEND = true;\nQ._$Wb = false;\nQ._$yr = false;\nQ._$Zs = false;\nQ.L2D_NO_ERROR = 0;\nQ._$i7 = 1000;\nQ._$9s = 1001;\nQ._$es = 1100;\nQ._$r7 = 2000;\nQ._$07 = 2001;\nQ._$b7 = 2002;\nQ._$H7 = 4000;\nQ.L2D_COLOR_BLEND_MODE_MULT = 0;\nQ.L2D_COLOR_BLEND_MODE_ADD = 1;\nQ.L2D_COLOR_BLEND_MODE_INTERPOLATE = 2;\nQ._$6b = true;\nQ._$cT = 0;\nQ.clippingMaskBufferSize = 256;\nQ.glContext = new Array();\nQ.frameBuffers = new Array();\nQ.fTexture = new Array();\nQ.IGNORE_CLIP = false;\nQ.IGNORE_EXPAND = false;\nQ.EXPAND_W = 2;\nQ.USE_ADJUST_TRANSLATION = true;\nQ.USE_CANVAS_TRANSFORM = true;\nQ.USE_CACHED_POLYGON_IMAGE = false;\nQ.DEBUG_DATA = {};\nQ.PROFILE_IOS_SPEED = {\n PROFILE_NAME: \"iOS Speed\",\n USE_ADJUST_TRANSLATION: true,\n USE_CACHED_POLYGON_IMAGE: true,\n EXPAND_W: 4\n};\nQ.PROFILE_IOS_QUALITY = {\n PROFILE_NAME: \"iOS HiQ\",\n USE_ADJUST_TRANSLATION: true,\n USE_CACHED_POLYGON_IMAGE: false,\n EXPAND_W: 2\n};\nQ.PROFILE_IOS_DEFAULT = Q.PROFILE_IOS_QUALITY;\nQ.PROFILE_ANDROID = {\n PROFILE_NAME: \"Android\",\n USE_ADJUST_TRANSLATION: false,\n USE_CACHED_POLYGON_IMAGE: false,\n EXPAND_W: 2\n};\nQ.PROFILE_DESKTOP = {\n PROFILE_NAME: \"Desktop\",\n USE_ADJUST_TRANSLATION: false,\n USE_CACHED_POLYGON_IMAGE: false,\n EXPAND_W: 2\n};\nQ.initProfile = function() {\n if (r.isIOS()) {\n Q.setupProfile(Q.PROFILE_IOS_DEFAULT);\n } else {\n if (r.isAndroid()) {\n Q.setupProfile(Q.PROFILE_ANDROID);\n } else {\n Q.setupProfile(Q.PROFILE_DESKTOP);\n }\n }\n}\n;\nQ.setupProfile = function(aI, aJ) {\n if (typeof aI == \"number\") {\n switch (aI) {\n case 9901:\n aI = Q.PROFILE_IOS_SPEED;\n break;\n case 9902:\n aI = Q.PROFILE_IOS_QUALITY;\n break;\n case 9903:\n aI = Q.PROFILE_IOS_DEFAULT;\n break;\n case 9904:\n aI = Q.PROFILE_ANDROID;\n break;\n case 9905:\n aI = Q.PROFILE_DESKTOP;\n break;\n default:\n alert(\"profile _$6 _$Ui : \" + aI);\n break;\n }\n }\n if (arguments.length < 2) {\n aJ = true;\n }\n if (aJ) {\n console.log(\"profile : \" + aI.PROFILE_NAME);\n }\n for (var aH in aI) {\n Q[aH] = aI[aH];\n if (aJ) {\n console.log(\" [\" + aH + \"] = \" + aI[aH]);\n }\n }\n}\n;\nQ.init = function() {\n if (Q._$6b) {\n console.log(\"Live2D %s\", Q._$2s);\n Q._$6b = false;\n var aH = false;\n aH = true;\n Q.initProfile();\n }\n}\n;\nQ.getVersionStr = function() {\n return Q._$2s;\n}\n;\nQ.getVersionNo = function() {\n return Q._$Kr;\n}\n;\nQ._$sT = function(aH) {\n Q._$cT = aH;\n}\n;\nQ.getError = function() {\n var aH = Q._$cT;\n Q._$cT = 0;\n return aH;\n}\n;\nQ.dispose = function() {\n Q.glContext = [];\n Q.frameBuffers = [];\n Q.fTexture = [];\n}\n;\nQ.setGL = function(aJ, aI) {\n var aH = aI || 0;\n Q.glContext[aH] = aJ;\n}\n;\nQ.getGL = function(aH) {\n return Q.glContext[aH];\n}\n;\nQ.setClippingMaskBufferSize = function(aH) {\n Q.clippingMaskBufferSize = aH;\n}\n;\nQ.getClippingMaskBufferSize = function() {\n return Q.clippingMaskBufferSize;\n}\n;\nQ.deleteBuffer = function(aI) {\n var aH = Q.getGL(aI);\n aH.deleteFramebuffer(Q.frameBuffers[aI].framebuffer);\n delete Q.frameBuffers[aI];\n delete Q.glContext[aI];\n}\n;\nfunction A() {}\nA._$r2 = function(aH) {\n if (aH < 0) {\n return 0;\n } else {\n if (aH > 1) {\n return 1;\n }\n }\n return (0.5 - 0.5 * Math.cos(aH * aC.PI_F));\n}\n;\nfunction J(aH) {\n if (j) {\n return;\n }\n this._$ib = aH;\n}\nJ._$fr = -1;\nJ.prototype.toString = function() {\n return this._$ib;\n}\n;\nfunction b() {\n if (j) {\n return;\n }\n a.prototype.constructor.call(this);\n this._$LP = -1;\n this._$d0 = 0;\n this._$Yo = 0;\n this._$JP = null;\n this._$5P = null;\n this._$BP = null;\n this._$Eo = null;\n this._$Qi = null;\n this._$6s = b._$ms;\n this.culling = true;\n this.gl_cacheImage = null;\n this.instanceNo = b._$42++;\n}\nb.prototype = new a();\nb._$42 = 0;\nb._$Os = 30;\nb._$ms = 0;\nb._$ns = 1;\nb._$_s = 2;\nb._$gT = new Array();\nb.prototype._$_S = function(aH) {\n this._$LP = aH;\n}\n;\nb.prototype.getTextureNo = function() {\n return this._$LP;\n}\n;\nb.prototype._$ZL = function() {\n return this._$Qi;\n}\n;\nb.prototype._$H2 = function() {\n return this._$JP;\n}\n;\nb.prototype.getNumPoints = function() {\n return this._$d0;\n}\n;\nb.prototype.getType = function() {\n return a._$wb;\n}\n;\nb.prototype._$B2 = function(aL, aH, aO) {\n var aM = aH;\n var aN = (aM._$hr != null) ? aM._$hr : aM._$Cr;\n var aK = aw._$do;\n switch (aK) {\n default:\n case aw._$Ms:\n throw new Error(\"_$L _$ro \");\n case aw._$Qs:\n for (var aJ = this._$d0 - 1; aJ >= 0; --aJ) {\n var aI = aJ * aw._$No;\n aN[aI + 4] = aO;\n }\n break;\n }\n}\n;\nb.prototype._$zP = function() {\n this._$GS = new g();\n this._$GS._$zP();\n}\n;\nb.prototype._$F0 = function(aK) {\n a.prototype._$F0.call(this, aK);\n this._$LP = aK._$6L();\n this._$d0 = aK._$6L();\n this._$Yo = aK._$6L();\n var aH = aK._$nP();\n this._$BP = new Int16Array(this._$Yo * 3);\n for (var aJ = this._$Yo * 3 - 1; aJ >= 0; --aJ) {\n this._$BP[aJ] = aH[aJ];\n }\n this._$Eo = aK._$nP();\n this._$Qi = aK._$nP();\n if (aK.getFormatVersion() >= ay._$s7) {\n this._$JP = aK._$6L();\n if (this._$JP != 0) {\n if ((this._$JP & 1) != 0) {\n var aI = aK._$6L();\n if (this._$5P == null) {\n this._$5P = new Object();\n }\n this._$5P._$Hb = parseInt(aI);\n }\n if ((this._$JP & b._$Os) != 0) {\n this._$6s = (this._$JP & b._$Os) >> 1;\n } else {\n this._$6s = b._$ms;\n }\n if ((this._$JP & 32) != 0) {\n this.culling = false;\n }\n }\n } else {\n this._$JP = 0;\n }\n}\n;\nb.prototype.init = function(aL) {\n var aN = new ag(this);\n var aI = this._$d0 * aw._$No;\n var aH = this._$32();\n if (aN._$Cr != null) {\n aN._$Cr = null;\n }\n aN._$Cr = new Float32Array(aI);\n if (aN._$hr != null) {\n aN._$hr = null;\n }\n aN._$hr = aH ? new Float32Array(aI) : null;\n var aM = aw._$do;\n switch (aM) {\n default:\n case aw._$Ms:\n if (aw._$Ls) {\n for (var aJ = this._$d0 - 1; aJ >= 0; --aJ) {\n var aO = aJ << 1;\n this._$Qi[aO + 1] = 1 - this._$Qi[aO + 1];\n }\n }\n break;\n case aw._$Qs:\n for (var aJ = this._$d0 - 1; aJ >= 0; --aJ) {\n var aO = aJ << 1;\n var aK = aJ * aw._$No;\n var aQ = this._$Qi[aO];\n var aP = this._$Qi[aO + 1];\n aN._$Cr[aK] = aQ;\n aN._$Cr[aK + 1] = aP;\n aN._$Cr[aK + 4] = 0;\n if (aH) {\n aN._$hr[aK] = aQ;\n aN._$hr[aK + 1] = aP;\n aN._$hr[aK + 4] = 0;\n }\n }\n break;\n }\n return aN;\n}\n;\nb.prototype._$Nr = function(aJ, aH) {\n var aK = aH;\n if (!((this == aK._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n if (!this._$GS._$Ur(aJ)) {\n return;\n }\n a.prototype._$Nr.call(this, aJ, aK);\n if (aK._$IS[0]) {\n return;\n }\n var aI = b._$gT;\n aI[0] = false;\n aG._$Vr(aJ, this._$GS, aI, this._$d0, this._$Eo, aK._$Cr, aw._$i2, aw._$No);\n}\n;\nb.prototype._$2b = function(aK, aI) {\n try {\n if (!((this == aI._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aL = false;\n if (aI._$IS[0]) {\n aL = true;\n }\n var aM = aI;\n if (!aL) {\n a.prototype._$2b.call(this, aK);\n if (this._$32()) {\n var aH = this.getTargetBaseDataID();\n if (aM._$8r == a._$ur) {\n aM._$8r = aK.getBaseDataIndex(aH);\n }\n if (aM._$8r < 0) {\n if (Q._$so) {\n q._$li(\"_$L _$0P _$G :: %s\", aH);\n }\n } else {\n var aO = aK.getBaseData(aM._$8r);\n var aJ = aK._$q2(aM._$8r);\n if (aO != null && !aJ._$x2()) {\n aO._$nb(aK, aJ, aM._$Cr, aM._$hr, this._$d0, aw._$i2, aw._$No);\n aM._$AT = true;\n } else {\n aM._$AT = false;\n }\n aM.baseOpacity = aJ.getTotalOpacity();\n }\n }\n }\n } catch (aN) {\n throw aN;\n }\n}\n;\nb.prototype.draw = function(aN, aK, aI) {\n if (!((this == aI._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n if (aI._$IS[0]) {\n return;\n }\n var aL = aI;\n var aJ = this._$LP;\n if (aJ < 0) {\n aJ = 1;\n }\n var aH = this.getOpacity(aK, aL) * aI._$VS * aI.baseOpacity;\n var aM = (aL._$hr != null) ? aL._$hr : aL._$Cr;\n aN.setClipBufPre_clipContextForDraw(aI.clipBufPre_clipContext);\n aN._$WP(this.culling);\n aN._$Uo(aJ, 3 * this._$Yo, this._$BP, aM, this._$Qi, aH, this._$6s, aL);\n}\n;\nb.prototype.dump = function() {\n console.log(\" _$yi( %d ) , _$d0( %d ) , _$Yo( %d ) \\n\", this._$LP, this._$d0, this._$Yo);\n console.log(\" _$Oi _$di = { \");\n for (var aJ = 0; aJ < this._$BP.length; aJ++) {\n console.log(\"%5d ,\", this._$BP[aJ]);\n }\n console.log(\"\\n _$5i _$30\");\n for (var aJ = 0; aJ < this._$Eo.length; aJ++) {\n console.log(\"\\n _$30[%d] = \", aJ);\n var aH = this._$Eo[aJ];\n for (var aI = 0; aI < aH.length; aI++) {\n console.log(\"%6.2f, \", aH[aI]);\n }\n }\n console.log(\"\\n\");\n}\n;\nb.prototype._$72 = function(aH) {\n if (this._$5P == null) {\n return null;\n }\n return this._$5P[aH];\n}\n;\nb.prototype.getIndexArray = function() {\n return this._$BP;\n}\n;\nfunction ag(aH) {\n aB.prototype.constructor.call(this, aH);\n this._$8r = a._$ur;\n this._$Cr = null;\n this._$hr = null;\n}\nag.prototype = new aB();\nag.prototype.getTransformedPoints = function() {\n return (this._$hr != null) ? this._$hr : this._$Cr;\n}\n;\nfunction k() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n}\nk.prototype._$HT = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n}\n;\nk.prototype._$HT = function(aH, aI) {\n this.x = aH;\n this.y = aI;\n}\n;\nfunction l(aH) {\n if (j) {\n return;\n }\n aa.prototype.constructor.call(this);\n this.drawParamWebGL = new C(aH);\n this.drawParamWebGL.setGL(Q.getGL(aH));\n}\nl.prototype = new aa();\nl.loadModel = function(aI) {\n var aH = new l();\n aa._$62(aH, aI);\n return aH;\n}\n;\nl.loadModel = function(aI, aK) {\n var aJ = aK || 0;\n var aH = new l(aJ);\n aa._$62(aH, aI);\n return aH;\n}\n;\nl._$to = function() {\n var aH = new l();\n return aH;\n}\n;\nl._$er = function(aM) {\n var aJ = new _$5(\"../_$_r/_$t0/_$Ri/_$_P._$d\");\n if (aJ.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aJ._$PL());\n }\n var aH = [\"../_$_r/_$t0/_$Ri/_$_P.512/_$CP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$vP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$EP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$pP._$1\"];\n var aK = l.loadModel(aJ._$3b());\n for (var aI = 0; aI < aH.length; aI++) {\n var aL = new _$5(aH[aI]);\n if (aL.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aL._$PL());\n }\n aK.setTexture(aI, _$nL._$_o(aM, aL._$3b()));\n }\n return aK;\n}\n;\nl.prototype.setGL = function(aH) {\n Q.setGL(aH);\n}\n;\nl.prototype.setTransform = function(aH) {\n this.drawParamWebGL.setTransform(aH);\n}\n;\nl.prototype.update = function() {\n this._$5S.update();\n this._$5S.preDraw(this.drawParamWebGL);\n}\n;\nl.prototype.draw = function() {\n this._$5S.draw(this.drawParamWebGL);\n}\n;\nl.prototype._$K2 = function() {\n this.drawParamWebGL._$K2();\n}\n;\nl.prototype.setTexture = function(aI, aH) {\n if (this.drawParamWebGL == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this.drawParamWebGL.setTexture(aI, aH);\n}\n;\nl.prototype.setTexture = function(aI, aH) {\n if (this.drawParamWebGL == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this.drawParamWebGL.setTexture(aI, aH);\n}\n;\nl.prototype._$Rs = function() {\n return this.drawParamWebGL._$Rs();\n}\n;\nl.prototype._$Ds = function(aH) {\n this.drawParamWebGL._$Ds(aH);\n}\n;\nl.prototype.getDrawParam = function() {\n return this.drawParamWebGL;\n}\n;\nl.prototype.setMatrix = function(aH) {\n this.drawParamWebGL.setMatrix(aH);\n}\n;\nl.prototype.setPremultipliedAlpha = function(aH) {\n this.drawParamWebGL.setPremultipliedAlpha(aH);\n}\n;\nl.prototype.isPremultipliedAlpha = function() {\n return this.drawParamWebGL.isPremultipliedAlpha();\n}\n;\nl.prototype.setAnisotropy = function(aH) {\n this.drawParamWebGL.setAnisotropy(aH);\n}\n;\nl.prototype.getAnisotropy = function() {\n return this.drawParamWebGL.getAnisotropy();\n}\n;\nfunction V() {\n if (j) {\n return;\n }\n this.motions = null;\n this._$eb = false;\n this.motions = new Array();\n}\nV.prototype._$tb = function() {\n return this.motions;\n}\n;\nV.prototype.startMotion = function(aJ, aI) {\n var aM = null;\n var aL = null;\n var aH = this.motions.length;\n for (var aK = 0; aK < aH; ++aK) {\n aL = this.motions[aK];\n if (aL == null) {\n continue;\n }\n aL._$qS(aL._$w0.getFadeOut());\n if (this._$eb) {\n q._$Ji(\"MotionQueueManager[size:%2d]->startMotion() / start _$K _$3 (m%d)\\n\", aH, aL._$sr);\n }\n }\n if (aJ == null) {\n return -1;\n }\n aL = new M();\n aL._$w0 = aJ;\n this.motions.push(aL);\n var aN = aL._$sr;\n if (this._$eb) {\n q._$Ji(\"MotionQueueManager[size:%2d]->startMotion() / new _$w0 (m%d)\\n\", aH, aN);\n }\n return aN;\n}\n;\nV.prototype.updateParam = function(aJ) {\n try {\n var aI = false;\n for (var aK = 0; aK < this.motions.length; aK++) {\n var aL = this.motions[aK];\n if (aL == null) {\n this.motions.splice(aK, 1);\n aK--;\n continue;\n }\n var aH = aL._$w0;\n if (aH == null) {\n this.motions = this.motions.splice(aK, 1);\n aK--;\n continue;\n }\n aH.updateParam(aJ, aL);\n aI = true;\n if (aL.isFinished()) {\n if (this._$eb) {\n q._$Ji(\"MotionQueueManager[size:%2d]->updateParam() / _$T0 _$w0 (m%d)\\n\", this.motions.length - 1, aL._$sr);\n }\n this.motions.splice(aK, 1);\n aK--;\n } else {}\n }\n return aI;\n } catch (aM) {\n q._$li(aM);\n return true;\n }\n}\n;\nV.prototype.isFinished = function(aK) {\n if (arguments.length >= 1) {\n for (var aI = 0; aI < this.motions.length; aI++) {\n var aJ = this.motions[aI];\n if (aJ == null) {\n continue;\n }\n if (aJ._$sr == aK && !aJ.isFinished()) {\n return false;\n }\n }\n return true;\n } else {\n for (var aI = 0; aI < this.motions.length; aI++) {\n var aJ = this.motions[aI];\n if (aJ == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n var aH = aJ._$w0;\n if (aH == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n if (!aJ.isFinished()) {\n return false;\n }\n }\n return true;\n }\n}\n;\nV.prototype.stopAllMotions = function() {\n for (var aI = 0; aI < this.motions.length; aI++) {\n var aJ = this.motions[aI];\n if (aJ == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n var aH = aJ._$w0;\n if (aH == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n if (true) {\n this.motions.splice(aI, 1);\n aI--;\n }\n }\n}\n;\nV.prototype._$Zr = function(aH) {\n this._$eb = aH;\n}\n;\nV.prototype._$e = function() {\n console.log(\"-- _$R --\\n\");\n for (var aH = 0; aH < this.motions.length; aH++) {\n var aI = this.motions[aH];\n var aJ = aI._$w0;\n console.log(\"MotionQueueEnt[%d] :: %s\\n\", this.motions.length, aJ.toString());\n }\n}\n;\nfunction M() {\n this._$w0 = null;\n this._$AT = true;\n this._$9L = false;\n this._$z2 = -1;\n this._$bs = -1;\n this._$Do = -1;\n this._$sr = null;\n this._$sr = M._$Gs++;\n}\nM._$Gs = 0;\nM.prototype.isFinished = function() {\n return this._$9L;\n}\n;\nM.prototype._$qS = function(aJ) {\n var aI = P.getUserTimeMSec();\n var aH = aI + aJ;\n if (this._$Do < 0 || aH < this._$Do) {\n this._$Do = aH;\n }\n}\n;\nM.prototype._$Bs = function() {\n return this._$sr;\n}\n;\nfunction am() {\n this.m = new Array(1,0,0,0,1,0,0,0,1);\n}\nam.prototype.setContext = function(aI) {\n var aH = this.m;\n aI.transform(aH[0], aH[1], aH[3], aH[4], aH[6], aH[7]);\n}\n;\nam.prototype.toString = function() {\n var aI = \"LDTransform { \";\n for (var aH = 0; aH < 9; aH++) {\n aI += this.m[aH].toFixed(2) + \" ,\";\n }\n aI += \" }\";\n return aI;\n}\n;\nam.prototype.identity = function() {\n var aH = this.m;\n aH[0] = aH[4] = aH[8] = 1;\n aH[1] = aH[2] = aH[3] = aH[5] = aH[6] = aH[7] = 0;\n}\n;\nam.prototype._$PS = function(aI, aK, aJ) {\n if (aJ == null) {\n aJ = new Array(0,0);\n }\n var aH = this.m;\n aJ[0] = aH[0] * aI + aH[3] * aK + aH[6];\n aJ[1] = aH[1] * aI + aH[4] * aK + aH[7];\n return aJ;\n}\n;\nam.prototype._$P2 = function(aK) {\n if (!aK) {\n aK = new am();\n }\n var aI = this.m;\n var aT = aI[0];\n var aS = aI[1];\n var aR = aI[2];\n var aQ = aI[3];\n var aP = aI[4];\n var aO = aI[5];\n var aN = aI[6];\n var aM = aI[7];\n var aL = aI[8];\n var aJ = aT * aP * aL + aS * aO * aN + aR * aQ * aM - aT * aO * aM - aR * aP * aN - aS * aQ * aL;\n if (aJ == 0) {\n return null;\n } else {\n var aH = 1 / aJ;\n aK.m[0] = aH * (aP * aL - aM * aO);\n aK.m[1] = aH * (aM * aR - aS * aL);\n aK.m[2] = aH * (aS * aO - aP * aR);\n aK.m[3] = aH * (aN * aO - aQ * aL);\n aK.m[4] = aH * (aT * aL - aN * aR);\n aK.m[5] = aH * (aQ * aR - aT * aO);\n aK.m[6] = aH * (aQ * aM - aN * aP);\n aK.m[7] = aH * (aN * aS - aT * aM);\n aK.m[8] = aH * (aT * aP - aQ * aS);\n return aK;\n }\n}\n;\nam.prototype.transform = function(aI, aK, aJ) {\n if (aJ == null) {\n aJ = new Array(0,0);\n }\n var aH = this.m;\n aJ[0] = aH[0] * aI + aH[3] * aK + aH[6];\n aJ[1] = aH[1] * aI + aH[4] * aK + aH[7];\n return aJ;\n}\n;\nam.prototype.translate = function(aI, aJ) {\n var aH = this.m;\n aH[6] = aH[0] * aI + aH[3] * aJ + aH[6];\n aH[7] = aH[1] * aI + aH[4] * aJ + aH[7];\n aH[8] = aH[2] * aI + aH[5] * aJ + aH[8];\n}\n;\nam.prototype.scale = function(aJ, aI) {\n var aH = this.m;\n aH[0] *= aJ;\n aH[1] *= aJ;\n aH[2] *= aJ;\n aH[3] *= aI;\n aH[4] *= aI;\n aH[5] *= aI;\n}\n;\nam.prototype.shear = function(aM, aL) {\n var aH = this.m;\n var aK = aH[0] + aH[3] * aL;\n var aJ = aH[1] + aH[4] * aL;\n var aI = aH[2] + aH[5] * aL;\n aH[3] = aH[0] * aM + aH[3];\n aH[4] = aH[1] * aM + aH[4];\n aH[5] = aH[2] * aM + aH[5];\n aH[0] = aK;\n aH[1] = aJ;\n aH[2] = aI;\n}\n;\nam.prototype.rotate = function(aM) {\n var aH = this.m;\n var aN = Math.cos(aM);\n var aL = Math.sin(aM);\n var aK = aH[0] * aN + aH[3] * aL;\n var aJ = aH[1] * aN + aH[4] * aL;\n var aI = aH[2] * aN + aH[5] * aL;\n aH[3] = -aH[0] * aL + aH[3] * aN;\n aH[4] = -aH[1] * aL + aH[4] * aN;\n aH[5] = -aH[2] * aL + aH[5] * aN;\n aH[0] = aK;\n aH[1] = aJ;\n aH[2] = aI;\n}\n;\nam.prototype.concatenate = function(aL) {\n var aO = this.m;\n var aM = aL.m;\n var aS = aO[0] * aM[0] + aO[3] * aM[1] + aO[6] * aM[2];\n var aR = aO[1] * aM[0] + aO[4] * aM[1] + aO[7] * aM[2];\n var aQ = aO[2] * aM[0] + aO[5] * aM[1] + aO[8] * aM[2];\n var aP = aO[0] * aM[3] + aO[3] * aM[4] + aO[6] * aM[5];\n var aN = aO[1] * aM[3] + aO[4] * aM[4] + aO[7] * aM[5];\n var aK = aO[2] * aM[3] + aO[5] * aM[4] + aO[8] * aM[5];\n var aJ = aO[0] * aM[6] + aO[3] * aM[7] + aO[6] * aM[8];\n var aI = aO[1] * aM[6] + aO[4] * aM[7] + aO[7] * aM[8];\n var aH = aO[2] * aM[6] + aO[5] * aM[7] + aO[8] * aM[8];\n m[0] = aS;\n m[1] = aR;\n m[2] = aQ;\n m[3] = aP;\n m[4] = aN;\n m[5] = aK;\n m[6] = aJ;\n m[7] = aI;\n m[8] = aH;\n}\n;\nfunction n(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\nn.prototype = new ak();\nn._$eT = null;\nn._$tP = new Object();\nn._$2o = function() {\n if (n._$eT == null) {\n n._$eT = n.getID(\"DST_BASE\");\n }\n return n._$eT;\n}\n;\nn._$27 = function() {\n n._$tP.clear();\n n._$eT = null;\n}\n;\nn.getID = function(aH) {\n var aI = n._$tP[aH];\n if (aI == null) {\n aI = new n(aH);\n n._$tP[aH] = aI;\n }\n return aI;\n}\n;\nn.prototype._$3s = function() {\n return new n();\n}\n;\nfunction C(aH) {\n if (j) {\n return;\n }\n ax.prototype.constructor.call(this);\n this.textures = new Array();\n this.transform = null;\n this.gl = null;\n this.glno = aH;\n this.firstDraw = true;\n this.anisotropyExt = null;\n this.maxAnisotropy = 0;\n this._$As = 32;\n this._$Gr = false;\n this._$NT = null;\n this._$vS = null;\n this._$no = null;\n this.vertShader = null;\n this.fragShader = null;\n this.vertShaderOff = null;\n this.fragShaderOff = null;\n}\nC.prototype = new ax();\nC._$9r = function(aH) {\n var aI = new Float32Array(aH);\n return aI;\n}\n;\nC._$vb = function(aH) {\n var aI = new Int16Array(aH);\n return aI;\n}\n;\nC._$cr = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = C._$9r(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nC._$mb = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = C._$vb(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nC._$Hs = function() {\n return this._$Gr;\n}\n;\nC._$as = function(aH) {\n this._$Gr = aH;\n}\n;\nC.prototype.getGL = function() {\n return this.gl;\n}\n;\nC.prototype.setGL = function(aH) {\n this.gl = aH;\n}\n;\nC.prototype.setTransform = function(aH) {\n this.transform = aH;\n}\n;\nC.prototype._$ZT = function() {\n var aH = this.gl;\n if (this.firstDraw) {\n this.initShader();\n this.firstDraw = false;\n this.anisotropyExt = aH.getExtension(\"EXT_texture_filter_anisotropic\") || aH.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\") || aH.getExtension(\"MOZ_EXT_texture_filter_anisotropic\");\n if (this.anisotropyExt) {\n this.maxAnisotropy = aH.getParameter(this.anisotropyExt.MAX_TEXTURE_MAX_ANISOTROPY_EXT);\n }\n }\n aH.disable(aH.SCISSOR_TEST);\n aH.disable(aH.STENCIL_TEST);\n aH.disable(aH.DEPTH_TEST);\n aH.frontFace(aH.CW);\n aH.enable(aH.BLEND);\n aH.colorMask(1, 1, 1, 1);\n aH.bindBuffer(aH.ARRAY_BUFFER, null);\n aH.bindBuffer(aH.ELEMENT_ARRAY_BUFFER, null);\n}\n;\nC.prototype._$Uo = function(aS, aT, aL, aU, aV, aN, aM, aO) {\n if (aN < 0.01 && this.clipBufPre_clipContextMask == null) {\n return;\n }\n var aH = aN > 0.9 ? Q.EXPAND_W : 0;\n var a0 = this.gl;\n if (this.gl == null) {\n throw new Error(\"gl is null\");\n }\n var a1 = false;\n var aQ = 1;\n var aP = 1;\n var a3 = 1;\n var aZ = 1;\n var aW = this._$C0 * aP * aN;\n var a2 = this._$tT * a3 * aN;\n var a5 = this._$WL * aZ * aN;\n var a7 = this._$lT * aN;\n if (this.clipBufPre_clipContextMask != null) {\n a0.frontFace(a0.CCW);\n a0.useProgram(this.shaderProgram);\n this._$vS = T(a0, this._$vS, aU);\n this._$no = L(a0, this._$no, aL);\n a0.enableVertexAttribArray(this.a_position_Loc);\n a0.vertexAttribPointer(this.a_position_Loc, 2, a0.FLOAT, false, 0, 0);\n this._$NT = T(a0, this._$NT, aV);\n a0.activeTexture(a0.TEXTURE1);\n a0.bindTexture(a0.TEXTURE_2D, this.textures[aS]);\n a0.uniform1i(this.s_texture0_Loc, 1);\n a0.enableVertexAttribArray(this.a_texCoord_Loc);\n a0.vertexAttribPointer(this.a_texCoord_Loc, 2, a0.FLOAT, false, 0, 0);\n a0.uniformMatrix4fv(this.u_matrix_Loc, false, this.getClipBufPre_clipContextMask().matrixForMask);\n var aY = this.getClipBufPre_clipContextMask().layoutChannelNo;\n var a4 = this.getChannelFlagAsColor(aY);\n a0.uniform4f(this.u_channelFlag, a4.r, a4.g, a4.b, a4.a);\n var aI = this.getClipBufPre_clipContextMask().layoutBounds;\n a0.uniform4f(this.u_baseColor_Loc, aI.x * 2 - 1, aI.y * 2 - 1, aI._$EL() * 2 - 1, aI._$5T() * 2 - 1);\n a0.uniform1i(this.u_maskFlag_Loc, true);\n } else {\n a1 = this.getClipBufPre_clipContextDraw() != null;\n if (a1) {\n a0.useProgram(this.shaderProgramOff);\n this._$vS = T(a0, this._$vS, aU);\n this._$no = L(a0, this._$no, aL);\n a0.enableVertexAttribArray(this.a_position_Loc_Off);\n a0.vertexAttribPointer(this.a_position_Loc_Off, 2, a0.FLOAT, false, 0, 0);\n this._$NT = T(a0, this._$NT, aV);\n a0.activeTexture(a0.TEXTURE1);\n a0.bindTexture(a0.TEXTURE_2D, this.textures[aS]);\n a0.uniform1i(this.s_texture0_Loc_Off, 1);\n a0.enableVertexAttribArray(this.a_texCoord_Loc_Off);\n a0.vertexAttribPointer(this.a_texCoord_Loc_Off, 2, a0.FLOAT, false, 0, 0);\n a0.uniformMatrix4fv(this.u_clipMatrix_Loc_Off, false, this.getClipBufPre_clipContextDraw().matrixForDraw);\n a0.uniformMatrix4fv(this.u_matrix_Loc_Off, false, this.matrix4x4);\n a0.activeTexture(a0.TEXTURE2);\n a0.bindTexture(a0.TEXTURE_2D, Q.fTexture[this.glno]);\n a0.uniform1i(this.s_texture1_Loc_Off, 2);\n var aY = this.getClipBufPre_clipContextDraw().layoutChannelNo;\n var a4 = this.getChannelFlagAsColor(aY);\n a0.uniform4f(this.u_channelFlag_Loc_Off, a4.r, a4.g, a4.b, a4.a);\n a0.uniform4f(this.u_baseColor_Loc_Off, aW, a2, a5, a7);\n } else {\n a0.useProgram(this.shaderProgram);\n this._$vS = T(a0, this._$vS, aU);\n this._$no = L(a0, this._$no, aL);\n a0.enableVertexAttribArray(this.a_position_Loc);\n a0.vertexAttribPointer(this.a_position_Loc, 2, a0.FLOAT, false, 0, 0);\n this._$NT = T(a0, this._$NT, aV);\n a0.activeTexture(a0.TEXTURE1);\n a0.bindTexture(a0.TEXTURE_2D, this.textures[aS]);\n a0.uniform1i(this.s_texture0_Loc, 1);\n a0.enableVertexAttribArray(this.a_texCoord_Loc);\n a0.vertexAttribPointer(this.a_texCoord_Loc, 2, a0.FLOAT, false, 0, 0);\n a0.uniformMatrix4fv(this.u_matrix_Loc, false, this.matrix4x4);\n a0.uniform4f(this.u_baseColor_Loc, aW, a2, a5, a7);\n a0.uniform1i(this.u_maskFlag_Loc, false);\n }\n }\n if (this.culling) {\n this.gl.enable(a0.CULL_FACE);\n } else {\n this.gl.disable(a0.CULL_FACE);\n }\n this.gl.enable(a0.BLEND);\n var a6;\n var aX;\n var aR;\n var aK;\n if (this.clipBufPre_clipContextMask != null) {\n a6 = a0.ONE;\n aX = a0.ONE_MINUS_SRC_ALPHA;\n aR = a0.ONE;\n aK = a0.ONE_MINUS_SRC_ALPHA;\n } else {\n switch (aM) {\n case b._$ms:\n a6 = a0.ONE;\n aX = a0.ONE_MINUS_SRC_ALPHA;\n aR = a0.ONE;\n aK = a0.ONE_MINUS_SRC_ALPHA;\n break;\n case b._$ns:\n a6 = a0.ONE;\n aX = a0.ONE;\n aR = a0.ZERO;\n aK = a0.ONE;\n break;\n case b._$_s:\n a6 = a0.DST_COLOR;\n aX = a0.ONE_MINUS_SRC_ALPHA;\n aR = a0.ZERO;\n aK = a0.ONE;\n break;\n }\n }\n a0.blendEquationSeparate(a0.FUNC_ADD, a0.FUNC_ADD);\n a0.blendFuncSeparate(a6, aX, aR, aK);\n if (this.anisotropyExt) {\n a0.texParameteri(a0.TEXTURE_2D, this.anisotropyExt.TEXTURE_MAX_ANISOTROPY_EXT, this.maxAnisotropy);\n }\n var aJ = aL.length;\n a0.drawElements(a0.TRIANGLES, aJ, a0.UNSIGNED_SHORT, 0);\n a0.bindTexture(a0.TEXTURE_2D, null);\n}\n;\nfunction T(aJ, aH, aI) {\n if (aH == null) {\n aH = aJ.createBuffer();\n }\n aJ.bindBuffer(aJ.ARRAY_BUFFER, aH);\n aJ.bufferData(aJ.ARRAY_BUFFER, aI, aJ.DYNAMIC_DRAW);\n return aH;\n}\nfunction L(aJ, aH, aI) {\n if (aH == null) {\n aH = aJ.createBuffer();\n }\n aJ.bindBuffer(aJ.ELEMENT_ARRAY_BUFFER, aH);\n aJ.bufferData(aJ.ELEMENT_ARRAY_BUFFER, aI, aJ.DYNAMIC_DRAW);\n return aH;\n}\nC.prototype._$Rs = function() {\n throw new Error(\"_$Rs\");\n}\n;\nC.prototype._$Ds = function(aH) {\n throw new Error(\"_$Ds\");\n}\n;\nC.prototype._$K2 = function() {\n for (var aH = 0; aH < this.textures.length; aH++) {\n var aI = this.textures[aH];\n if (aI != 0) {\n this.gl._$K2(1, this.textures, aH);\n this.textures[aH] = null;\n }\n }\n}\n;\nC.prototype.setTexture = function(aH, aI) {\n this.textures[aH] = aI;\n}\n;\nC.prototype.initShader = function() {\n var aH = this.gl;\n this.loadShaders2();\n this.a_position_Loc = aH.getAttribLocation(this.shaderProgram, \"a_position\");\n this.a_texCoord_Loc = aH.getAttribLocation(this.shaderProgram, \"a_texCoord\");\n this.u_matrix_Loc = aH.getUniformLocation(this.shaderProgram, \"u_mvpMatrix\");\n this.s_texture0_Loc = aH.getUniformLocation(this.shaderProgram, \"s_texture0\");\n this.u_channelFlag = aH.getUniformLocation(this.shaderProgram, \"u_channelFlag\");\n this.u_baseColor_Loc = aH.getUniformLocation(this.shaderProgram, \"u_baseColor\");\n this.u_maskFlag_Loc = aH.getUniformLocation(this.shaderProgram, \"u_maskFlag\");\n this.a_position_Loc_Off = aH.getAttribLocation(this.shaderProgramOff, \"a_position\");\n this.a_texCoord_Loc_Off = aH.getAttribLocation(this.shaderProgramOff, \"a_texCoord\");\n this.u_matrix_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_mvpMatrix\");\n this.u_clipMatrix_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_ClipMatrix\");\n this.s_texture0_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"s_texture0\");\n this.s_texture1_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"s_texture1\");\n this.u_channelFlag_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_channelFlag\");\n this.u_baseColor_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_baseColor\");\n}\n;\nC.prototype.disposeShader = function() {\n var aH = this.gl;\n if (this.shaderProgram) {\n aH.deleteProgram(this.shaderProgram);\n this.shaderProgram = null;\n }\n if (this.shaderProgramOff) {\n aH.deleteProgram(this.shaderProgramOff);\n this.shaderProgramOff = null;\n }\n}\n;\nC.prototype.compileShader = function(aJ, aN) {\n var aM = this.gl;\n var aH;\n var aL = aN;\n var aK = aM.createShader(aJ);\n if (aK == null) {\n q._$Ji(\"_$L0 to create shader\");\n return null;\n }\n aM.shaderSource(aK, aL);\n aM.compileShader(aK);\n var aH = aM.getShaderParameter(aK, aM.COMPILE_STATUS);\n if (!aH) {\n var aI = aM.getShaderInfoLog(aK);\n q._$Ji(\"_$L0 to compile shader : \" + aI);\n aM.deleteShader(aK);\n return null;\n }\n return aK;\n}\n;\nC.prototype.loadShaders2 = function() {\n var aN = this.gl;\n this.shaderProgram = aN.createProgram();\n if (!this.shaderProgram) {\n return false;\n }\n this.shaderProgramOff = aN.createProgram();\n if (!this.shaderProgramOff) {\n return false;\n }\n var aK = \"attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform mat4 u_mvpMatrix;void main(){ gl_Position = u_mvpMatrix * a_position; v_ClipPos = u_mvpMatrix * a_position; v_texCoord = a_texCoord;}\";\n var aM = \"precision mediump float;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform sampler2D s_texture0;uniform vec4 u_channelFlag;uniform vec4 u_baseColor;uniform bool u_maskFlag;void main(){ vec4 smpColor; if(u_maskFlag){ float isInside = step(u_baseColor.x, v_ClipPos.x/v_ClipPos.w) * step(u_baseColor.y, v_ClipPos.y/v_ClipPos.w) * step(v_ClipPos.x/v_ClipPos.w, u_baseColor.z) * step(v_ClipPos.y/v_ClipPos.w, u_baseColor.w); smpColor = u_channelFlag * texture2D(s_texture0 , v_texCoord).a * isInside; }else{ smpColor = texture2D(s_texture0 , v_texCoord) * u_baseColor; } gl_FragColor = smpColor;}\";\n var aL = \"attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform mat4 u_mvpMatrix;uniform mat4 u_ClipMatrix;void main(){ gl_Position = u_mvpMatrix * a_position; v_ClipPos = u_ClipMatrix * a_position; v_texCoord = a_texCoord ;}\";\n var aJ = \"precision mediump float ;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform sampler2D s_texture0;uniform sampler2D s_texture1;uniform vec4 u_channelFlag;uniform vec4 u_baseColor ;void main(){ vec4 col_formask = texture2D(s_texture0, v_texCoord) * u_baseColor; vec4 clipMask = texture2D(s_texture1, v_ClipPos.xy / v_ClipPos.w) * u_channelFlag; float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a; col_formask = col_formask * maskVal; gl_FragColor = col_formask;}\";\n this.vertShader = this.compileShader(aN.VERTEX_SHADER, aK);\n if (!this.vertShader) {\n q._$Ji(\"Vertex shader compile _$li!\");\n return false;\n }\n this.vertShaderOff = this.compileShader(aN.VERTEX_SHADER, aL);\n if (!this.vertShaderOff) {\n q._$Ji(\"OffVertex shader compile _$li!\");\n return false;\n }\n this.fragShader = this.compileShader(aN.FRAGMENT_SHADER, aM);\n if (!this.fragShader) {\n q._$Ji(\"Fragment shader compile _$li!\");\n return false;\n }\n this.fragShaderOff = this.compileShader(aN.FRAGMENT_SHADER, aJ);\n if (!this.fragShaderOff) {\n q._$Ji(\"OffFragment shader compile _$li!\");\n return false;\n }\n aN.attachShader(this.shaderProgram, this.vertShader);\n aN.attachShader(this.shaderProgram, this.fragShader);\n aN.attachShader(this.shaderProgramOff, this.vertShaderOff);\n aN.attachShader(this.shaderProgramOff, this.fragShaderOff);\n aN.linkProgram(this.shaderProgram);\n aN.linkProgram(this.shaderProgramOff);\n var aH = aN.getProgramParameter(this.shaderProgram, aN.LINK_STATUS);\n if (!aH) {\n var aI = aN.getProgramInfoLog(this.shaderProgram);\n q._$Ji(\"_$L0 to link program: \" + aI);\n if (this.vertShader) {\n aN.deleteShader(this.vertShader);\n this.vertShader = 0;\n }\n if (this.fragShader) {\n aN.deleteShader(this.fragShader);\n this.fragShader = 0;\n }\n if (this.shaderProgram) {\n aN.deleteProgram(this.shaderProgram);\n this.shaderProgram = 0;\n }\n if (this.vertShaderOff) {\n aN.deleteShader(this.vertShaderOff);\n this.vertShaderOff = 0;\n }\n if (this.fragShaderOff) {\n aN.deleteShader(this.fragShaderOff);\n this.fragShaderOff = 0;\n }\n if (this.shaderProgramOff) {\n aN.deleteProgram(this.shaderProgramOff);\n this.shaderProgramOff = 0;\n }\n return false;\n }\n return true;\n}\n;\nC.prototype.createFramebuffer = function() {\n var aL = this.gl;\n var aK = Q.clippingMaskBufferSize;\n var aJ = aL.createFramebuffer();\n aL.bindFramebuffer(aL.FRAMEBUFFER, aJ);\n var aH = aL.createRenderbuffer();\n aL.bindRenderbuffer(aL.RENDERBUFFER, aH);\n aL.renderbufferStorage(aL.RENDERBUFFER, aL.RGBA4, aK, aK);\n aL.framebufferRenderbuffer(aL.FRAMEBUFFER, aL.COLOR_ATTACHMENT0, aL.RENDERBUFFER, aH);\n var aI = aL.createTexture();\n aL.bindTexture(aL.TEXTURE_2D, aI);\n aL.texImage2D(aL.TEXTURE_2D, 0, aL.RGBA, aK, aK, 0, aL.RGBA, aL.UNSIGNED_BYTE, null);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_MIN_FILTER, aL.LINEAR);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_MAG_FILTER, aL.LINEAR);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_WRAP_S, aL.CLAMP_TO_EDGE);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_WRAP_T, aL.CLAMP_TO_EDGE);\n aL.framebufferTexture2D(aL.FRAMEBUFFER, aL.COLOR_ATTACHMENT0, aL.TEXTURE_2D, aI, 0);\n aL.bindTexture(aL.TEXTURE_2D, null);\n aL.bindRenderbuffer(aL.RENDERBUFFER, null);\n aL.bindFramebuffer(aL.FRAMEBUFFER, null);\n Q.fTexture[this.glno] = aI;\n return {\n framebuffer: aJ,\n renderbuffer: aH,\n texture: Q.fTexture[this.glno]\n };\n}\n;\nfunction K(aH) {\n if (j) {\n return;\n }\n this._$P = new Int8Array(8);\n this._$R0 = new DataView(this._$P.buffer);\n this._$3i = new Int8Array(1000);\n this._$hL = 0;\n this._$v0 = 0;\n this._$S2 = 0;\n this._$Ko = new Array();\n this._$T = aH;\n this._$F = 0;\n}\nK.prototype._$fP = function() {\n var aK = this._$ST();\n var aJ, aI, aH;\n if ((aK & 128) == 0) {\n return aK & 255;\n } else {\n if (((aJ = this._$ST()) & 128) == 0) {\n return ((aK & 127) << 7) | (aJ & 127);\n } else {\n if (((aI = this._$ST()) & 128) == 0) {\n return ((aK & 127) << 14) | ((aJ & 127) << 7) | (aI & 255);\n } else {\n if (((aH = this._$ST()) & 128) == 0) {\n return ((aK & 127) << 21) | ((aJ & 127) << 14) | ((aI & 127) << 7) | (aH & 255);\n } else {\n throw new J(\"_$L _$0P _\");\n }\n }\n }\n }\n}\n;\nK.prototype.getFormatVersion = function() {\n return this._$S2;\n}\n;\nK.prototype._$gr = function(aH) {\n this._$S2 = aH;\n}\n;\nK.prototype._$3L = function() {\n return this._$fP();\n}\n;\nK.prototype._$mP = function() {\n this._$zT();\n this._$F += 8;\n return this._$T.getFloat64(this._$F - 8);\n}\n;\nK.prototype._$_T = function() {\n this._$zT();\n this._$F += 4;\n return this._$T.getFloat32(this._$F - 4);\n}\n;\nK.prototype._$6L = function() {\n this._$zT();\n this._$F += 4;\n return this._$T.getInt32(this._$F - 4);\n}\n;\nK.prototype._$ST = function() {\n this._$zT();\n return this._$T.getInt8(this._$F++);\n}\n;\nK.prototype._$9T = function() {\n this._$zT();\n this._$F += 2;\n return this._$T.getInt16(this._$F - 2);\n}\n;\nK.prototype._$2T = function() {\n this._$zT();\n this._$F += 8;\n throw new J(\"_$L _$q read long\");\n}\n;\nK.prototype._$po = function() {\n this._$zT();\n return this._$T.getInt8(this._$F++) != 0;\n}\n;\nvar O = true;\nK.prototype._$bT = function() {\n this._$zT();\n var aH = this._$3L();\n var aK = null;\n if (O) {\n try {\n var aM = new ArrayBuffer(aH * 2);\n aK = new Uint16Array(aM);\n for (var aJ = 0; aJ < aH; ++aJ) {\n aK[aJ] = this._$T.getUint8(this._$F++);\n }\n return String.fromCharCode.apply(null, aK);\n } catch (aL) {\n O = false;\n }\n }\n try {\n var aI = new Array();\n if (aK == null) {\n for (var aJ = 0; aJ < aH; ++aJ) {\n aI[aJ] = this._$T.getUint8(this._$F++);\n }\n } else {\n for (var aJ = 0; aJ < aH; ++aJ) {\n aI[aJ] = aK[aJ];\n }\n }\n return String.fromCharCode.apply(null, aI);\n } catch (aL) {\n console.log(\"read utf8 / _$rT _$L0 !! : \" + aL);\n }\n}\n;\nK.prototype._$cS = function() {\n this._$zT();\n var aI = this._$3L();\n var aH = new Int32Array(aI);\n for (var aJ = 0; aJ < aI; aJ++) {\n aH[aJ] = this._$T.getInt32(this._$F);\n this._$F += 4;\n }\n return aH;\n}\n;\nK.prototype._$Tb = function() {\n this._$zT();\n var aI = this._$3L();\n var aH = new Float32Array(aI);\n for (var aJ = 0; aJ < aI; aJ++) {\n aH[aJ] = this._$T.getFloat32(this._$F);\n this._$F += 4;\n }\n return aH;\n}\n;\nK.prototype._$5b = function() {\n this._$zT();\n var aI = this._$3L();\n var aH = new Float64Array(aI);\n for (var aJ = 0; aJ < aI; aJ++) {\n aH[aJ] = this._$T.getFloat64(this._$F);\n this._$F += 8;\n }\n return aH;\n}\n;\nK.prototype._$nP = function() {\n return this._$Jb(-1);\n}\n;\nK.prototype._$Jb = function(aJ) {\n this._$zT();\n if (aJ < 0) {\n aJ = this._$3L();\n }\n if (aJ == ay._$7P) {\n var aH = this._$6L();\n if (0 <= aH && aH < this._$Ko.length) {\n return this._$Ko[aH];\n } else {\n throw new J(\"_$sL _$4i @_$m0\");\n }\n } else {\n var aI = this._$4b(aJ);\n this._$Ko.push(aI);\n return aI;\n }\n}\n;\nK.prototype._$4b = function(aN) {\n if (aN == 0) {\n return null;\n }\n if (aN == 50) {\n var aK = this._$bT();\n var aI = Z.getID(aK);\n return aI;\n } else {\n if (aN == 51) {\n var aK = this._$bT();\n var aI = n.getID(aK);\n return aI;\n } else {\n if (aN == 134) {\n var aK = this._$bT();\n var aI = i.getID(aK);\n return aI;\n } else {\n if (aN == 60) {\n var aK = this._$bT();\n var aI = z.getID(aK);\n return aI;\n }\n }\n }\n }\n if (aN >= 48) {\n var aL = ay._$9o(aN);\n if (aL != null) {\n aL._$F0(this);\n return aL;\n } else {\n return null;\n }\n }\n switch (aN) {\n case 1:\n return this._$bT();\n case 10:\n var aM = this._$6L();\n return new I(aM,true);\n case 11:\n return new av(this._$mP(),this._$mP(),this._$mP(),this._$mP());\n case 12:\n return new av(this._$_T(),this._$_T(),this._$_T(),this._$_T());\n case 13:\n return new e(this._$mP(),this._$mP());\n case 14:\n return new e(this._$_T(),this._$_T());\n case 15:\n var aH = this._$3L();\n var aI = new Array(aH);\n for (var aJ = 0; aJ < aH; aJ++) {\n aI[aJ] = this._$nP();\n }\n return aI;\n case 17:\n var aI = new aD(this._$mP(),this._$mP(),this._$mP(),this._$mP(),this._$mP(),this._$mP());\n return aI;\n case 21:\n return new F(this._$6L(),this._$6L(),this._$6L(),this._$6L());\n case 22:\n return new k(this._$6L(),this._$6L());\n case 23:\n throw new Error(\"_$L _$ro \");\n case 16:\n case 25:\n return this._$cS();\n case 26:\n return this._$5b();\n case 27:\n return this._$Tb();\n case 2:\n case 3:\n case 4:\n case 5:\n case 6:\n case 7:\n case 8:\n case 9:\n case 18:\n case 19:\n case 20:\n case 24:\n case 28:\n throw new J(\"_$6 _$q : _$nP() of 2-9 ,18,19,20,24,28 : \" + aN);\n default:\n throw new J(\"_$6 _$q : _$nP() NO _$i : \" + aN);\n }\n}\n;\nK.prototype._$8L = function() {\n if (this._$hL == 0) {\n this._$v0 = this._$ST();\n } else {\n if (this._$hL == 8) {\n this._$v0 = this._$ST();\n this._$hL = 0;\n }\n }\n return ((this._$v0 >> (7 - this._$hL++)) & 1) == 1;\n}\n;\nK.prototype._$zT = function() {\n if (this._$hL != 0) {\n this._$hL = 0;\n }\n}\n;\nfunction ai() {}\nai.prototype._$wP = function(aM, aI, aK) {\n for (var aL = 0; aL < aK; aL++) {\n for (var aH = 0; aH < aI; aH++) {\n var aJ = 2 * (aH + aL * aI);\n console.log(\"(% 7.3f , % 7.3f) , \", aM[aJ], aM[aJ + 1]);\n }\n console.log(\"\\n\");\n }\n console.log(\"\\n\");\n}\n;\nfunction aC() {}\naC._$2S = Math.PI / 180;\naC._$bS = (Math.PI / 180);\naC._$wS = 180 / Math.PI;\naC._$NS = (180 / Math.PI);\naC.PI_F = Math.PI;\naC._$kT = [0, 0.012368, 0.024734, 0.037097, 0.049454, 0.061803, 0.074143, 0.086471, 0.098786, 0.111087, 0.12337, 0.135634, 0.147877, 0.160098, 0.172295, 0.184465, 0.196606, 0.208718, 0.220798, 0.232844, 0.244854, 0.256827, 0.268761, 0.280654, 0.292503, 0.304308, 0.316066, 0.327776, 0.339436, 0.351044, 0.362598, 0.374097, 0.385538, 0.396921, 0.408243, 0.419502, 0.430697, 0.441826, 0.452888, 0.463881, 0.474802, 0.485651, 0.496425, 0.507124, 0.517745, 0.528287, 0.538748, 0.549126, 0.559421, 0.56963, 0.579752, 0.589785, 0.599728, 0.609579, 0.619337, 0.629, 0.638567, 0.648036, 0.657406, 0.666676, 0.675843, 0.684908, 0.693867, 0.70272, 0.711466, 0.720103, 0.72863, 0.737045, 0.745348, 0.753536, 0.76161, 0.769566, 0.777405, 0.785125, 0.792725, 0.800204, 0.807561, 0.814793, 0.821901, 0.828884, 0.835739, 0.842467, 0.849066, 0.855535, 0.861873, 0.868079, 0.874153, 0.880093, 0.885898, 0.891567, 0.897101, 0.902497, 0.907754, 0.912873, 0.917853, 0.922692, 0.92739, 0.931946, 0.936359, 0.940629, 0.944755, 0.948737, 0.952574, 0.956265, 0.959809, 0.963207, 0.966457, 0.96956, 0.972514, 0.97532, 0.977976, 0.980482, 0.982839, 0.985045, 0.987101, 0.989006, 0.990759, 0.992361, 0.993811, 0.995109, 0.996254, 0.997248, 0.998088, 0.998776, 0.999312, 0.999694, 0.999924, 1];\naC._$92 = function(aK, aI) {\n var aH = Math.atan2(aK[1], aK[0]);\n var aJ = Math.atan2(aI[1], aI[0]);\n return aC._$tS(aH, aJ);\n}\n;\naC._$tS = function(aI, aH) {\n var aJ = aI - aH;\n while (aJ < -Math.PI) {\n aJ += 2 * Math.PI;\n }\n while (aJ > Math.PI) {\n aJ -= 2 * Math.PI;\n }\n return aJ;\n}\n;\naC._$9 = function(aH) {\n return Math.sin(aH);\n}\n;\naC.fcos = function(aH) {\n return Math.cos(aH);\n}\n;\nfunction aB(aH) {\n if (j) {\n return;\n }\n this._$e0 = null;\n this._$IP = null;\n this._$Us = null;\n this._$7s = null;\n this._$IS = [false];\n this._$VS = null;\n this._$AT = true;\n this.baseOpacity = 1;\n this.clipBufPre_clipContext = null;\n this._$e0 = aH;\n}\naB.prototype._$u2 = function() {\n return this._$IS[0];\n}\n;\naB.prototype._$yo = function() {\n return this._$AT && !this._$IS[0];\n}\n;\naB.prototype._$GT = function() {\n return this._$e0;\n}\n;\nfunction r() {}\nr._$W2 = 0;\nr.SYSTEM_INFO = null;\nr.USER_AGENT = navigator.userAgent;\nr.isIPhone = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO._isIPhone;\n}\n;\nr.isIOS = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO._isIPhone || r.SYSTEM_INFO._isIPad;\n}\n;\nr.isAndroid = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO._isAndroid;\n}\n;\nr.getOSVersion = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO.version;\n}\n;\nr.getOS = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n if (r.SYSTEM_INFO._isIPhone || r.SYSTEM_INFO._isIPad) {\n return \"iOS\";\n }\n if (r.SYSTEM_INFO._isAndroid) {\n return \"Android\";\n } else {\n return \"_$Q0 OS\";\n }\n}\n;\nr.setup = function() {\n var aK = r.USER_AGENT;\n function aI(aO, aR) {\n var aN = aO.substring(aR).split(/[ _,;\\.]/);\n var aQ = 0;\n for (var aM = 0; aM <= 2; aM++) {\n if (isNaN(aN[aM])) {\n break;\n }\n var aP = parseInt(aN[aM]);\n if (aP < 0 || aP > 999) {\n q._$li(\"err : \" + aP + \" @UtHtml5.setup()\");\n aQ = 0;\n break;\n }\n aQ += aP * Math.pow(1000, (2 - aM));\n }\n return aQ;\n }\n var aL;\n var aH;\n var aJ = r.SYSTEM_INFO = {\n userAgent: aK\n };\n if ((aL = aK.indexOf(\"iPhone OS \")) >= 0) {\n aJ.os = \"iPhone\";\n aJ._isIPhone = true;\n aJ.version = aI(aK, aL + \"iPhone OS \".length);\n } else {\n if ((aL = aK.indexOf(\"iPad\")) >= 0) {\n aL = aK.indexOf(\"CPU OS\");\n if (aL < 0) {\n q._$li(\" err : \" + aK + \" @UtHtml5.setup()\");\n return;\n }\n aJ.os = \"iPad\";\n aJ._isIPad = true;\n aJ.version = aI(aK, aL + \"CPU OS \".length);\n } else {\n if ((aL = aK.indexOf(\"Android\")) >= 0) {\n aJ.os = \"Android\";\n aJ._isAndroid = true;\n aJ.version = aI(aK, aL + \"Android \".length);\n } else {\n aJ.os = \"-\";\n aJ.version = -1;\n }\n }\n }\n}\n;\nQ.init();\nvar j = false;\n\nexport{\n P as UtSystem,\n q as UtDebug,\n am as LDTransform,\n au as LDGL,\n Q as Live2D,\n l as Live2DModelWebGL,\n v as Live2DModelJS,\n ao as Live2DMotion,\n V as MotionQueueManager,\n u as PhysicsHair,\n ah as AMotion,\n i as PartsDataID,\n Z as DrawDataID,\n n as BaseDataID,\n z as ParamID,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/lib/live2d.core.js","/**\n *\n * You can modify and use this source freely\n * only for the development of application related Live2D.\n *\n * (c) Live2D Inc. All rights reserved.\n */\n\n/**\n * EYHN 基于 live2d 官方 Live2DFramework.js 修改\n *\n * Copyright © 2016 - 2017 EYHN\n */\n\n// Modified by xiazeyu.\n\n/**\n* @desc Basic functions releated to model react\n*/\n\nimport { UtSystem,\n UtDebug,\n LDTransform,\n LDGL,\n Live2D,\n Live2DModelWebGL,\n Live2DModelJS,\n Live2DMotion,\n MotionQueueManager,\n PhysicsHair,\n AMotion,\n PartsDataID,\n DrawDataID,\n BaseDataID,\n ParamID } from './live2d.core';\n\n//============================================================\n//============================================================\n// class L2DBaseModel\n//============================================================\n//============================================================\nfunction L2DBaseModel() {\n this.live2DModel = null; // ALive2DModel\n this.modelMatrix = null; // L2DModelMatrix\n this.eyeBlink = null; // L2DEyeBlink\n this.physics = null; // L2DPhysics\n this.pose = null; // L2DPose\n this.debugMode = false;\n this.initialized = false;\n this.updating = false;\n this.alpha = 1;\n this.accAlpha = 0;\n this.lipSync = false;\n this.lipSyncValue = 0;\n this.accelX = 0;\n this.accelY = 0;\n this.accelZ = 0;\n this.dragX = 0;\n this.dragY = 0;\n this.startTimeMSec = null;\n this.mainMotionManager = new L2DMotionManager(); //L2DMotionManager\n this.expressionManager = new L2DMotionManager(); //L2DMotionManager\n this.motions = {};\n this.expressions = {};\n this.isTexLoaded = false;\n}\n\nvar texCounter = 0;\n\n//============================================================\n// L2DBaseModel # getModelMatrix()\n//============================================================\nL2DBaseModel.prototype.getModelMatrix = function () {\n return this.modelMatrix;\n}\n\n//============================================================\n// L2DBaseModel # setAlpha()\n//============================================================\nL2DBaseModel.prototype.setAlpha = function (a/*float*/) {\n if (a > 0.999) a = 1;\n if (a < 0.001) a = 0;\n this.alpha = a;\n}\n\n//============================================================\n// L2DBaseModel # getAlpha()\n//============================================================\nL2DBaseModel.prototype.getAlpha = function () {\n return this.alpha;\n}\n\n//============================================================\n// L2DBaseModel # isInitialized()\n//============================================================\nL2DBaseModel.prototype.isInitialized = function () {\n return this.initialized;\n}\n\n//============================================================\n// L2DBaseModel # setInitialized()\n//============================================================\nL2DBaseModel.prototype.setInitialized = function (v/*boolean*/) {\n this.initialized = v;\n}\n\n//============================================================\n// L2DBaseModel # isUpdating()\n//============================================================\nL2DBaseModel.prototype.isUpdating = function () {\n return this.updating;\n}\n\n//============================================================\n// L2DBaseModel # setUpdating()\n//============================================================\nL2DBaseModel.prototype.setUpdating = function (v/*boolean*/) {\n this.updating = v;\n}\n\n//============================================================\n// L2DBaseModel # getLive2DModel()\n//============================================================\nL2DBaseModel.prototype.getLive2DModel = function () {\n return this.live2DModel;\n}\n\n//============================================================\n// L2DBaseModel # setLipSync()\n//============================================================\nL2DBaseModel.prototype.setLipSync = function (v/*boolean*/) {\n this.lipSync = v;\n}\n\n//============================================================\n// L2DBaseModel # setLipSyncValue()\n//============================================================\nL2DBaseModel.prototype.setLipSyncValue = function (v/*float*/) {\n this.lipSyncValue = v;\n}\n\n//============================================================\n// L2DBaseModel # setAccel()\n//============================================================\nL2DBaseModel.prototype.setAccel = function (x/*float*/, y/*float*/, z/*float*/) {\n this.accelX = x;\n this.accelY = y;\n this.accelZ = z;\n}\n\n//============================================================\n// L2DBaseModel # setDrag()\n//============================================================\nL2DBaseModel.prototype.setDrag = function (x/*float*/, y/*float*/) {\n this.dragX = x;\n this.dragY = y;\n}\n\n//============================================================\n// L2DBaseModel # getMainMotionManager()\n//============================================================\nL2DBaseModel.prototype.getMainMotionManager = function () {\n return this.mainMotionManager;\n}\n\n//============================================================\n// L2DBaseModel # getExpressionManager()\n//============================================================\nL2DBaseModel.prototype.getExpressionManager = function () {\n return this.expressionManager;\n}\n\n//============================================================\n// L2DBaseModel # loadModelData()\n//============================================================\nL2DBaseModel.prototype.loadModelData = function (path/*String*/, callback) {\n /*\n if( this.live2DModel != null ) {\n this.live2DModel.deleteTextures();\n }\n */\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n if (this.debugMode) pm.log(\"Load model : \" + path);\n\n var thisRef = this;\n pm.loadLive2DModel(path, function (l2dModel) {\n thisRef.live2DModel = l2dModel;\n thisRef.live2DModel.saveParam();\n\n var _err = Live2D.getError();\n\n if (_err != 0) {\n console.error(\"Error : Failed to loadModelData().\");\n return;\n }\n\n thisRef.modelMatrix = new L2DModelMatrix(\n thisRef.live2DModel.getCanvasWidth(),\n thisRef.live2DModel.getCanvasHeight()); //L2DModelMatrix\n thisRef.modelMatrix.setWidth(2);\n thisRef.modelMatrix.setCenterPosition(0, 0);\n\n callback(thisRef.live2DModel);\n });\n}\n\n\n//============================================================\n// L2DBaseModel # loadTexture()\n//============================================================\nL2DBaseModel.prototype.loadTexture = function (no/*int*/, path/*String*/, callback) {\n texCounter++;\n\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n\n if (this.debugMode) pm.log(\"Load Texture : \" + path);\n\n var thisRef = this;\n pm.loadTexture(this.live2DModel, no, path, function () {\n texCounter--;\n if (texCounter == 0) thisRef.isTexLoaded = true;\n if (typeof callback == \"function\") callback();\n });\n\n}\n\n//============================================================\n// L2DBaseModel # loadMotion()\n//============================================================\nL2DBaseModel.prototype.loadMotion = function (name/*String*/, path /*String*/, callback) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n\n if (this.debugMode) pm.log(\"Load Motion : \" + path);\n\n var motion = null; //Live2DMotion\n\n var thisRef = this;\n pm.loadBytes(path, function (buf) {\n motion = Live2DMotion.loadMotion(buf);\n if (name != null) {\n thisRef.motions[name] = motion;\n }\n callback(motion);\n });\n\n}\n\n//============================================================\n// L2DBaseModel # loadExpression()\n//============================================================\nL2DBaseModel.prototype.loadExpression = function (name/*String*/, path /*String*/, callback) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n\n if (this.debugMode) pm.log(\"Load Expression : \" + path);\n\n var thisRef = this;\n pm.loadBytes(path, function (buf) {\n if (name != null) {\n thisRef.expressions[name] = L2DExpressionMotion.loadJson(buf);\n }\n if (typeof callback == \"function\") callback();\n });\n}\n\n//============================================================\n// L2DBaseModel # loadPose()\n//============================================================\nL2DBaseModel.prototype.loadPose = function (path /*String*/, callback) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n if (this.debugMode) pm.log(\"Load Pose : \" + path);\n var thisRef = this;\n try {\n pm.loadBytes(path, function (buf) {\n thisRef.pose = L2DPose.load(buf);\n if (typeof callback == \"function\") callback();\n });\n }\n catch (e) {\n console.warn(e);\n }\n}\n\n//============================================================\n// L2DBaseModel # loadPhysics()\n//============================================================\nL2DBaseModel.prototype.loadPhysics = function (path/*String*/) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n if (this.debugMode) pm.log(\"Load Physics : \" + path);\n var thisRef = this;\n try {\n pm.loadBytes(path, function (buf) {\n thisRef.physics = L2DPhysics.load(buf);\n });\n }\n catch (e) {\n console.warn(e);\n }\n}\n\n//============================================================\n// L2DBaseModel # hitTestSimple()\n//============================================================\nL2DBaseModel.prototype.hitTestSimple = function (drawID, testX, testY) {\n\n\tif(this.live2DModel === null) return !1;\n\n var drawIndex = this.live2DModel.getDrawDataIndex(drawID);\n\n if (drawIndex < 0) return false;\n\n var points = this.live2DModel.getTransformedPoints(drawIndex);\n var left = this.live2DModel.getCanvasWidth();\n var right = 0;\n var top = this.live2DModel.getCanvasHeight();\n var bottom = 0;\n\n for (var j = 0; j < points.length; j = j + 2) {\n var x = points[j];\n var y = points[j + 1];\n\n if (x < left) left = x;\n if (x > right) right = x;\n if (y < top) top = y;\n if (y > bottom) bottom = y;\n }\n var tx = this.modelMatrix.invertTransformX(testX);\n var ty = this.modelMatrix.invertTransformY(testY);\n\n return (left <= tx && tx <= right && top <= ty && ty <= bottom);\n}\n\n//============================================================\n//============================================================\n// class L2DExpressionMotion extends AMotion\n//============================================================\n//============================================================\nfunction L2DExpressionMotion() {\n AMotion.prototype.constructor.call(this);\n this.paramList = new Array(); //ArrayList\n}\n\nL2DExpressionMotion.prototype = new AMotion(); // L2DExpressionMotion extends AMotion\n\n//============================================================\nL2DExpressionMotion.EXPRESSION_DEFAULT = \"DEFAULT\";\nL2DExpressionMotion.TYPE_SET = 0;\nL2DExpressionMotion.TYPE_ADD = 1;\nL2DExpressionMotion.TYPE_MULT = 2;\n\n//============================================================\n// static L2DExpressionMotion.loadJson()\n//============================================================\nL2DExpressionMotion.loadJson = function (buf) {\n var ret = new L2DExpressionMotion();\n\n var pm = Live2DFramework.getPlatformManager();\n var json = pm.jsonParseFromBytes(buf);\n\n ret.setFadeIn(parseInt(json.fade_in) > 0 ? parseInt(json.fade_in) : 1000);\n ret.setFadeOut(parseInt(json.fade_out) > 0 ? parseInt(json.fade_out) : 1000);\n\n if (json.params == null) {\n return ret;\n }\n\n var params = json.params;\n var paramNum = params.length;\n ret.paramList = []; //ArrayList\n for (var i = 0; i < paramNum; i++) {\n var param = params[i];\n var paramID = param.id.toString();\n var value = parseFloat(param.val);\n var calcTypeInt = L2DExpressionMotion.TYPE_ADD;\n var calc = param.calc != null ? param.calc.toString() : \"add\";\n if (calc === \"add\") {\n calcTypeInt = L2DExpressionMotion.TYPE_ADD;\n }\n else if (calc === \"mult\") {\n calcTypeInt = L2DExpressionMotion.TYPE_MULT;\n }\n else if (calc === \"set\") {\n calcTypeInt = L2DExpressionMotion.TYPE_SET;\n }\n else {\n calcTypeInt = L2DExpressionMotion.TYPE_ADD;\n }\n if (calcTypeInt == L2DExpressionMotion.TYPE_ADD) {\n var defaultValue = param.def == null ? 0 : parseFloat(param.def);\n value = value - defaultValue;\n }\n else if (calcTypeInt == L2DExpressionMotion.TYPE_MULT) {\n var defaultValue = param.def == null ? 1 : parseFloat(param.def);\n if (defaultValue == 0) defaultValue = 1;\n value = value / defaultValue;\n }\n\n var item = new L2DExpressionParam();\n item.id = paramID;\n item.type = calcTypeInt;\n item.value = value;\n\n ret.paramList.push(item);\n }\n\n return ret;\n}\n\n\n//============================================================\n// L2DExpressionMotion # updateParamExe()\n//============================================================\nL2DExpressionMotion.prototype.updateParamExe = function (model /*ALive2DModel*/, timeMSec/*long*/, weight /*float*/, motionQueueEnt /*MotionQueueEnt*/) {\n for (var i = this.paramList.length - 1; i >= 0; --i) {\n var param = this.paramList[i]; //L2DExpressionParam\n // if (!param || !param.type) continue;\n if (param.type == L2DExpressionMotion.TYPE_ADD) {\n model.addToParamFloat(param.id, param.value, weight);\n }\n else if (param.type == L2DExpressionMotion.TYPE_MULT) {\n model.multParamFloat(param.id, param.value, weight);\n }\n else if (param.type == L2DExpressionMotion.TYPE_SET) {\n model.setParamFloat(param.id, param.value, weight);\n }\n }\n}\n\n//============================================================\n//============================================================\n// class L2DExpressionParam\n//============================================================\n//============================================================\nfunction L2DExpressionParam() {\n this.id = \"\";\n this.type = -1;\n this.value = null;\n}\n\n//============================================================\n//============================================================\n// class L2DEyeBlink\n//============================================================\n//============================================================\nfunction L2DEyeBlink() {\n this.nextBlinkTime = null /* TODO NOT INIT */; //\n this.stateStartTime = null /* TODO NOT INIT */; //\n this.blinkIntervalMsec = null /* TODO NOT INIT */; //\n this.eyeState = EYE_STATE.STATE_FIRST;\n this.blinkIntervalMsec = 4000;\n this.closingMotionMsec = 100;\n this.closedMotionMsec = 50;\n this.openingMotionMsec = 150;\n this.closeIfZero = true;\n this.eyeID_L = \"PARAM_EYE_L_OPEN\";\n this.eyeID_R = \"PARAM_EYE_R_OPEN\";\n}\n\n//============================================================\n// L2DEyeBlink # calcNextBlink()\n//============================================================\nL2DEyeBlink.prototype.calcNextBlink = function () {\n var time /*long*/ = UtSystem.getUserTimeMSec();\n var r /*Number*/ = Math.random();\n return /*(long)*/ (time + r * (2 * this.blinkIntervalMsec - 1));\n}\n\n//============================================================\n// L2DEyeBlink # setInterval()\n//============================================================\nL2DEyeBlink.prototype.setInterval = function (blinkIntervalMsec /*int*/) {\n this.blinkIntervalMsec = blinkIntervalMsec;\n}\n\n//============================================================\n// L2DEyeBlink # setEyeMotion()\n//============================================================\nL2DEyeBlink.prototype.setEyeMotion = function (closingMotionMsec/*int*/, closedMotionMsec/*int*/, openingMotionMsec/*int*/) {\n this.closingMotionMsec = closingMotionMsec;\n this.closedMotionMsec = closedMotionMsec;\n this.openingMotionMsec = openingMotionMsec;\n}\n\n//============================================================\n// L2DEyeBlink # updateParam()\n//============================================================\nL2DEyeBlink.prototype.updateParam = function (model/*ALive2DModel*/) {\n var time /*:long*/ = UtSystem.getUserTimeMSec();\n var eyeParamValue /*:Number*/;\n var t /*:Number*/ = 0;\n switch (this.eyeState) {\n case EYE_STATE.STATE_CLOSING:\n t = (time - this.stateStartTime) / this.closingMotionMsec;\n if (t >= 1) {\n t = 1;\n this.eyeState = EYE_STATE.STATE_CLOSED;\n this.stateStartTime = time;\n }\n eyeParamValue = 1 - t;\n break;\n case EYE_STATE.STATE_CLOSED:\n t = (time - this.stateStartTime) / this.closedMotionMsec;\n if (t >= 1) {\n this.eyeState = EYE_STATE.STATE_OPENING;\n this.stateStartTime = time;\n }\n eyeParamValue = 0;\n break;\n case EYE_STATE.STATE_OPENING:\n t = (time - this.stateStartTime) / this.openingMotionMsec;\n if (t >= 1) {\n t = 1;\n this.eyeState = EYE_STATE.STATE_INTERVAL;\n this.nextBlinkTime = this.calcNextBlink();\n }\n eyeParamValue = t;\n break;\n case EYE_STATE.STATE_INTERVAL:\n if (this.nextBlinkTime < time) {\n this.eyeState = EYE_STATE.STATE_CLOSING;\n this.stateStartTime = time;\n }\n eyeParamValue = 1;\n break;\n case EYE_STATE.STATE_FIRST:\n default:\n this.eyeState = EYE_STATE.STATE_INTERVAL;\n this.nextBlinkTime = this.calcNextBlink();\n eyeParamValue = 1;\n break;\n }\n if (!this.closeIfZero) eyeParamValue = -eyeParamValue;\n model.setParamFloat(this.eyeID_L, eyeParamValue);\n model.setParamFloat(this.eyeID_R, eyeParamValue);\n}\n\n//== enum EYE_STATE ==\nvar EYE_STATE = function () { };\n\nEYE_STATE.STATE_FIRST = \"STATE_FIRST\"\nEYE_STATE.STATE_INTERVAL = \"STATE_INTERVAL\"\nEYE_STATE.STATE_CLOSING = \"STATE_CLOSING\"\nEYE_STATE.STATE_CLOSED = \"STATE_CLOSED\"\nEYE_STATE.STATE_OPENING = \"STATE_OPENING\"\n\n//============================================================\n//============================================================\n// class L2DMatrix44\n//============================================================\n//============================================================\nfunction L2DMatrix44() {\n this.tr = new Float32Array(16); //\n this.identity();\n}\n\n//============================================================\n// static L2DMatrix44.mul()\n//============================================================\n// matrix multiplication\nL2DMatrix44.mul = function (a/*float[]*/, b/*float[]*/, dst/*float[]*/) {\n var c = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n var n = 4;\n var i, j, k;\n for (i = 0; i < n; i++) {\n for (j = 0; j < n; j++) {\n for (k = 0; k < n; k++) {\n c[i + j * 4] += a[i + k * 4] * b[k + j * 4];\n }\n }\n }\n for (i = 0; i < 16; i++) {\n dst[i] = c[i];\n }\n}\n\n//============================================================\n// L2DMatrix44 # identity()\n//============================================================\nL2DMatrix44.prototype.identity = function () {\n for (var i/*:int*/ = 0; i < 16; i++)\n this.tr[i] = ((i % 5) == 0) ? 1 : 0;\n}\n\n//============================================================\n// L2DMatrix44 # getArray()\n//============================================================\nL2DMatrix44.prototype.getArray = function () {\n return this.tr;\n}\n\n//============================================================\n// L2DMatrix44 # getCopyMatrix()\n//============================================================\nL2DMatrix44.prototype.getCopyMatrix = function () {\n return new Float32Array(this.tr); // this.tr.clone();\n}\n\n//============================================================\n// L2DMatrix44 # setMatrix()\n//============================================================\nL2DMatrix44.prototype.setMatrix = function (tr/*float[]*/) {\n if (this.tr == null || this.tr.length != this.tr.length) return;\n for (var i/*:int*/ = 0; i < 16; i++) this.tr[i] = tr[i];\n}\n\n//============================================================\n// L2DMatrix44 # getScaleX()\n//============================================================\nL2DMatrix44.prototype.getScaleX = function () {\n return this.tr[0];\n}\n\n//============================================================\n// L2DMatrix44 # getScaleY()\n//============================================================\nL2DMatrix44.prototype.getScaleY = function () {\n return this.tr[5];\n}\n\n//============================================================\n// L2DMatrix44 # transformX()\n//============================================================\nL2DMatrix44.prototype.transformX = function (src/*float*/) {\n return this.tr[0] * src + this.tr[12];\n}\n\n//============================================================\n// L2DMatrix44 # transformY()\n//============================================================\nL2DMatrix44.prototype.transformY = function (src/*float*/) {\n return this.tr[5] * src + this.tr[13];\n}\n\n//============================================================\n// L2DMatrix44 # invertTransformX()\n//============================================================\nL2DMatrix44.prototype.invertTransformX = function (src/*float*/) {\n return (src - this.tr[12]) / this.tr[0];\n}\n\n//============================================================\n// L2DMatrix44 # invertTransformY()\n//============================================================\nL2DMatrix44.prototype.invertTransformY = function (src/*float*/) {\n return (src - this.tr[13]) / this.tr[5];\n}\n\n//============================================================\n// L2DMatrix44 # multTranslate()\n//============================================================\nL2DMatrix44.prototype.multTranslate = function (shiftX/*float*/, shiftY/*float*/) {\n var tr1 = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, shiftX, shiftY, 0, 1];\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DMatrix44 # translate()\n//============================================================\nL2DMatrix44.prototype.translate = function (x/*float*/, y/*float*/) {\n this.tr[12] = x;\n this.tr[13] = y;\n}\n\n//============================================================\n// L2DMatrix44 # translateX()\n//============================================================\nL2DMatrix44.prototype.translateX = function (x/*float*/) {\n this.tr[12] = x;\n}\n\n//============================================================\n// L2DMatrix44 # translateY()\n//============================================================\nL2DMatrix44.prototype.translateY = function (y/*float*/) {\n this.tr[13] = y;\n}\n\n//============================================================\n// L2DMatrix44 # multScale()\n//============================================================\nL2DMatrix44.prototype.multScale = function (scaleX/*float*/, scaleY/*float*/) {\n var tr1 = [scaleX, 0, 0, 0, 0, scaleY, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DMatrix44 # scale()\n//============================================================\nL2DMatrix44.prototype.scale = function (scaleX/*float*/, scaleY/*float*/) {\n this.tr[0] = scaleX;\n this.tr[5] = scaleY;\n}\n\n//============================================================\n//============================================================\n// class L2DModelMatrix extends L2DMatrix44\n//============================================================\n//============================================================\nfunction L2DModelMatrix(w/*float*/, h/*float*/) {\n L2DMatrix44.prototype.constructor.call(this);\n this.width = w;\n this.height = h;\n}\n\n//L2DModelMatrix extends L2DMatrix44\nL2DModelMatrix.prototype = new L2DMatrix44();\n\n//============================================================\n// L2DModelMatrix # setPosition()\n//============================================================\nL2DModelMatrix.prototype.setPosition = function (x/*float*/, y/*float*/) {\n this.translate(x, y);\n}\n\n//============================================================\n// L2DModelMatrix # setCenterPosition()\n//============================================================\nL2DModelMatrix.prototype.setCenterPosition = function (x/*float*/, y/*float*/) {\n var w = this.width * this.getScaleX();\n var h = this.height * this.getScaleY();\n this.translate(x - w / 2, y - h / 2);\n}\n\n//============================================================\n// L2DModelMatrix # top()\n//============================================================\nL2DModelMatrix.prototype.top = function (y/*float*/) {\n this.setY(y);\n}\n\n//============================================================\n// L2DModelMatrix # bottom()\n//============================================================\nL2DModelMatrix.prototype.bottom = function (y/*float*/) {\n var h = this.height * this.getScaleY();\n this.translateY(y - h);\n}\n\n//============================================================\n// L2DModelMatrix # left()\n//============================================================\nL2DModelMatrix.prototype.left = function (x/*float*/) {\n this.setX(x);\n}\n\n//============================================================\n// L2DModelMatrix # right()\n//============================================================\nL2DModelMatrix.prototype.right = function (x/*float*/) {\n var w = this.width * this.getScaleX();\n this.translateX(x - w);\n}\n\n//============================================================\n// L2DModelMatrix # centerX()\n//============================================================\nL2DModelMatrix.prototype.centerX = function (x/*float*/) {\n var w = this.width * this.getScaleX();\n this.translateX(x - w / 2);\n}\n\n//============================================================\n// L2DModelMatrix # centerY()\n//============================================================\nL2DModelMatrix.prototype.centerY = function (y/*float*/) {\n var h = this.height * this.getScaleY();\n this.translateY(y - h / 2);\n}\n\n//============================================================\n// L2DModelMatrix # setX()\n//============================================================\nL2DModelMatrix.prototype.setX = function (x/*float*/) {\n this.translateX(x);\n}\n\n//============================================================\n// L2DModelMatrix # setY()\n//============================================================\nL2DModelMatrix.prototype.setY = function (y/*float*/) {\n this.translateY(y);\n}\n\n//============================================================\n// L2DModelMatrix # setHeight()\n//============================================================\nL2DModelMatrix.prototype.setHeight = function (h/*float*/) {\n var scaleX = h / this.height;\n var scaleY = -scaleX;\n this.scale(scaleX, scaleY);\n}\n\n//============================================================\n// L2DModelMatrix # setWidth()\n//============================================================\nL2DModelMatrix.prototype.setWidth = function (w/*float*/) {\n var scaleX = w / this.width;\n var scaleY = -scaleX;\n this.scale(scaleX, scaleY);\n}\n\n//============================================================\n//============================================================\n// class L2DMotionManager extends MotionQueueManager\n//============================================================\n//============================================================\nfunction L2DMotionManager() {\n MotionQueueManager.prototype.constructor.call(this);\n this.currentPriority = null;\n this.reservePriority = null;\n\n this.super = MotionQueueManager.prototype;\n}\n\n\nL2DMotionManager.prototype = new MotionQueueManager();\n\n//============================================================\n// L2DMotionManager # getCurrentPriority()\n//============================================================\nL2DMotionManager.prototype.getCurrentPriority = function () {\n return this.currentPriority;\n}\n\n//============================================================\n// L2DMotionManager # getReservePriority()\n//============================================================\nL2DMotionManager.prototype.getReservePriority = function () {\n return this.reservePriority;\n}\n\n//============================================================\n// L2DMotionManager # reserveMotion()\n//============================================================\nL2DMotionManager.prototype.reserveMotion = function (priority/*int*/) {\n if (this.reservePriority >= priority) {\n return false;\n }\n if (this.currentPriority >= priority) {\n return false;\n }\n\n this.reservePriority = priority;\n\n return true;\n}\n\n//============================================================\n// L2DMotionManager # setReservePriority()\n//============================================================\nL2DMotionManager.prototype.setReservePriority = function (val/*int*/) {\n this.reservePriority = val;\n}\n\n//============================================================\n// L2DMotionManager # updateParam()\n//============================================================\nL2DMotionManager.prototype.updateParam = function (model/*ALive2DModel*/) {\n var updated = MotionQueueManager.prototype.updateParam.call(this, model);\n\n if (this.isFinished()) {\n this.currentPriority = 0;\n }\n\n return updated;\n}\n\n//============================================================\n// L2DMotionManager # startMotionPrio()\n//============================================================\nL2DMotionManager.prototype.startMotionPrio = function (motion/*AMotion*/, priority/*int*/) {\n if (priority == this.reservePriority) {\n this.reservePriority = 0;\n }\n this.currentPriority = priority;\n return this.startMotion(motion, false);\n}\n\n//============================================================\n//============================================================\n// class L2DPhysics\n//============================================================\n//============================================================\nfunction L2DPhysics() {\n this.physicsList = new Array(); //ArrayList\n this.startTimeMSec = UtSystem.getUserTimeMSec();\n}\n\n//============================================================\n// static L2DPhysics.load()\n//============================================================\nL2DPhysics.load = function (buf /*byte[]*/) {\n var ret = new L2DPhysics(); //L2DPhysicsL2DPhysics\n var pm = Live2DFramework.getPlatformManager();\n var json = pm.jsonParseFromBytes(buf);\n var params = json.physics_hair;\n var paramNum = params.length;\n for (var i = 0; i < paramNum; i++) {\n var param = params[i]; //Value\n var physics = new PhysicsHair(); //PhysicsHairPhysicsHair\n var setup = param.setup; //Value\n var length = parseFloat(setup.length);\n var resist = parseFloat(setup.regist);\n var mass = parseFloat(setup.mass);\n physics.setup(length, resist, mass);\n var srcList = param.src; //Value\n var srcNum = srcList.length;\n for (var j = 0; j < srcNum; j++) {\n var src = srcList[j]; //Value\n var id = src.id; //String\n var type = PhysicsHair.Src.SRC_TO_X;\n var typeStr = src.ptype; //String\n if (typeStr === \"x\") {\n type = PhysicsHair.Src.SRC_TO_X;\n }\n else if (typeStr === \"y\") {\n type = PhysicsHair.Src.SRC_TO_Y;\n }\n else if (typeStr === \"angle\") {\n type = PhysicsHair.Src.SRC_TO_G_ANGLE;\n }\n else {\n UtDebug.error(\"live2d\", \"Invalid parameter:PhysicsHair.Src\");\n }\n var scale = parseFloat(src.scale);\n var weight = parseFloat(src.weight);\n physics.addSrcParam(type, id, scale, weight);\n }\n var targetList = param.targets; //Value\n var targetNum = targetList.length;\n for (var j = 0; j < targetNum; j++) {\n var target = targetList[j]; //Value\n var id = target.id; //String\n var type = PhysicsHair.Target.TARGET_FROM_ANGLE;\n var typeStr = target.ptype; //String\n if (typeStr === \"angle\") {\n type = PhysicsHair.Target.TARGET_FROM_ANGLE;\n }\n else if (typeStr === \"angle_v\") {\n type = PhysicsHair.Target.TARGET_FROM_ANGLE_V;\n }\n else {\n UtDebug.error(\"live2d\", \"Invalid parameter:PhysicsHair.Target\");\n }\n var scale = parseFloat(target.scale);\n var weight = parseFloat(target.weight);\n physics.addTargetParam(type, id, scale, weight);\n }\n ret.physicsList.push(physics);\n }\n return ret;\n}\n\n//============================================================\n// L2DPhysics # updateParam()\n//============================================================\nL2DPhysics.prototype.updateParam = function (model/*ALive2DModel*/) {\n var timeMSec = UtSystem.getUserTimeMSec() - this.startTimeMSec;\n for (var i = 0; i < this.physicsList.length; i++) {\n this.physicsList[i].update(model, timeMSec);\n }\n}\n\n//============================================================\n//============================================================\n// class L2DPose\n//============================================================\n//============================================================\nfunction L2DPose() {\n this.lastTime = 0;\n this.lastModel = null; //ALive2DModel\n this.partsGroups = new Array(); //ArrayList\n}\n\n\n//============================================================\n// static L2DPose.load()\n//============================================================\nL2DPose.load = function (buf/*byte[]*/) {\n var ret = new L2DPose(); //L2DPose\n var pm = Live2DFramework.getPlatformManager();\n var json = pm.jsonParseFromBytes(buf);\n var poseListInfo = json.parts_visible; //Value\n var poseNum = poseListInfo.length;\n for (var i_pose = 0; i_pose < poseNum; i_pose++) {\n var poseInfo = poseListInfo[i_pose]; //Value\n var idListInfo = poseInfo.group; //Value\n var idNum = idListInfo.length;\n var partsGroup/*L2DPartsParam*/ = new Array();\n for (var i_group = 0; i_group < idNum; i_group++) {\n var partsInfo = idListInfo[i_group]; //Value\n var parts = new L2DPartsParam(partsInfo.id); //L2DPartsParamL2DPartsParam\n partsGroup[i_group] = parts;\n if (partsInfo.link == null) continue;\n var linkListInfo = partsInfo.link; //Value\n var linkNum = linkListInfo.length;\n parts.link = new Array(); //ArrayList\n for (var i_link = 0; i_link < linkNum; i_link++) {\n var linkParts = new L2DPartsParam(linkListInfo[i_link]); //L2DPartsParamL2DPartsParam\n parts.link.push(linkParts);\n }\n }\n ret.partsGroups.push(partsGroup);\n }\n\n return ret;\n}\n\n//============================================================\n// L2DPose # updateParam()\n//============================================================\nL2DPose.prototype.updateParam = function (model/*ALive2DModel*/) {\n if (model == null) return;\n\n if (!(model == this.lastModel)) {\n this.initParam(model);\n }\n this.lastModel = model;\n\n var curTime = UtSystem.getUserTimeMSec();\n var deltaTimeSec = ((this.lastTime == 0) ? 0 : (curTime - this.lastTime) / 1000.0);\n this.lastTime = curTime;\n if (deltaTimeSec < 0) deltaTimeSec = 0;\n for (var i = 0; i < this.partsGroups.length; i++) {\n this.normalizePartsOpacityGroup(model, this.partsGroups[i], deltaTimeSec);\n this.copyOpacityOtherParts(model, this.partsGroups[i]);\n }\n}\n\n//============================================================\n// L2DPose # initParam()\n//============================================================\nL2DPose.prototype.initParam = function (model/*ALive2DModel*/) {\n if (model == null) return;\n for (var i = 0; i < this.partsGroups.length; i++) {\n var partsGroup = this.partsGroups[i]; //L2DPartsParam\n for (var j = 0; j < partsGroup.length; j++) {\n partsGroup[j].initIndex(model);\n var partsIndex = partsGroup[j].partsIndex;\n var paramIndex = partsGroup[j].paramIndex;\n if (partsIndex < 0) continue;\n var v/*:Boolean*/ = (model.getParamFloat(paramIndex) != 0);\n model.setPartsOpacity(partsIndex, (v ? 1.0 : 0.0));\n model.setParamFloat(paramIndex, (v ? 1.0 : 0.0));\n if (partsGroup[j].link == null) continue;\n for (var k = 0; k < partsGroup[j].link.length; k++) {\n partsGroup[j].link[k].initIndex(model);\n }\n }\n }\n}\n\n//============================================================\n// L2DPose # normalizePartsOpacityGroup()\n//============================================================\nL2DPose.prototype.normalizePartsOpacityGroup = function (model/*ALive2DModel*/, partsGroup/*L2DPartsParam[]*/, deltaTimeSec/*float*/) {\n var visibleParts = -1;\n var visibleOpacity = 1.0;\n var CLEAR_TIME_SEC = 0.5;\n var phi = 0.5;\n var maxBackOpacity = 0.15;\n for (var i = 0; i < partsGroup.length; i++) {\n var partsIndex = partsGroup[i].partsIndex;\n var paramIndex = partsGroup[i].paramIndex;\n if (partsIndex < 0) continue; if (model.getParamFloat(paramIndex) != 0) {\n if (visibleParts >= 0) {\n break;\n }\n visibleParts = i;\n visibleOpacity = model.getPartsOpacity(partsIndex);\n visibleOpacity += deltaTimeSec / CLEAR_TIME_SEC;\n if (visibleOpacity > 1) {\n visibleOpacity = 1;\n }\n }\n }\n if (visibleParts < 0) {\n visibleParts = 0;\n visibleOpacity = 1;\n }\n for (var i = 0; i < partsGroup.length; i++) {\n var partsIndex = partsGroup[i].partsIndex;\n if (partsIndex < 0) continue; if (visibleParts == i) {\n model.setPartsOpacity(partsIndex, visibleOpacity);\n }\n else {\n var opacity = model.getPartsOpacity(partsIndex);\n var a1;\n if (visibleOpacity < phi) {\n a1 = visibleOpacity * (phi - 1) / phi + 1;\n }\n else {\n a1 = (1 - visibleOpacity) * phi / (1 - phi);\n }\n var backOp = (1 - a1) * (1 - visibleOpacity);\n if (backOp > maxBackOpacity) {\n a1 = 1 - maxBackOpacity / (1 - visibleOpacity);\n }\n if (opacity > a1) {\n opacity = a1;\n }\n model.setPartsOpacity(partsIndex, opacity);\n }\n }\n}\n\n//============================================================\n// L2DPose # copyOpacityOtherParts()\n//============================================================\nL2DPose.prototype.copyOpacityOtherParts = function (model/*ALive2DModel*/, partsGroup/*L2DPartsParam[]*/) {\n for (var i_group = 0; i_group < partsGroup.length; i_group++) {\n var partsParam = partsGroup[i_group]; //L2DPartsParam\n if (partsParam.link == null) continue;\n if (partsParam.partsIndex < 0) continue;\n var opacity = model.getPartsOpacity(partsParam.partsIndex);\n for (var i_link = 0; i_link < partsParam.link.length; i_link++) {\n var linkParts = partsParam.link[i_link]; //L2DPartsParam\n if (linkParts.partsIndex < 0) continue;\n model.setPartsOpacity(linkParts.partsIndex, opacity);\n }\n }\n}\n\n//============================================================\n//============================================================\n// class L2DPartsParam\n//============================================================\n//============================================================\nfunction L2DPartsParam(id/*String*/) {\n this.paramIndex = -1;\n this.partsIndex = -1;\n this.link = null; // ArrayList\n this.id = id;\n}\n\n//============================================================\n// L2DPartsParam # initIndex()\n//============================================================\nL2DPartsParam.prototype.initIndex = function (model/*ALive2DModel*/) {\n this.paramIndex = model.getParamIndex(\"VISIBLE:\" + this.id);\n this.partsIndex = model.getPartsDataIndex(PartsDataID.getID(this.id));\n model.setParamFloat(this.paramIndex, 1);\n}\n\n//============================================================\n//============================================================\n// class L2DTargetPoint\n//============================================================\n//============================================================\nfunction L2DTargetPoint() {\n this.EPSILON = 0.01; // 変化の最小値(この値以下は無視される)\n this.faceTargetX = 0;\n this.faceTargetY = 0;\n this.faceX = 0;\n this.faceY = 0;\n this.faceVX = 0;\n this.faceVY = 0;\n this.lastTimeSec = 0;\n}\n\n//============================================================\nL2DTargetPoint.FRAME_RATE = 60;\n\n//============================================================\n// L2DTargetPoint # set()\n//============================================================\nL2DTargetPoint.prototype.setPoint = function (x/*float*/, y/*float*/) {\n this.faceTargetX = x;\n this.faceTargetY = y;\n}\n\n//============================================================\n// L2DTargetPoint # getX()\n//============================================================\nL2DTargetPoint.prototype.getX = function () {\n return this.faceX;\n}\n\n//============================================================\n// L2DTargetPoint # getY()\n//============================================================\nL2DTargetPoint.prototype.getY = function () {\n return this.faceY;\n}\n\n//============================================================\n// L2DTargetPoint # update()\n//============================================================\nL2DTargetPoint.prototype.update = function () {\n var TIME_TO_MAX_SPEED = 0.15;\n var FACE_PARAM_MAX_V = 40.0 / 7.5;\n var MAX_V = FACE_PARAM_MAX_V / L2DTargetPoint.FRAME_RATE;\n if (this.lastTimeSec == 0) {\n this.lastTimeSec = UtSystem.getUserTimeMSec();\n return;\n }\n var curTimeSec = UtSystem.getUserTimeMSec();\n var deltaTimeWeight = (curTimeSec - this.lastTimeSec) * L2DTargetPoint.FRAME_RATE / 1000.0;\n this.lastTimeSec = curTimeSec;\n var FRAME_TO_MAX_SPEED = TIME_TO_MAX_SPEED * L2DTargetPoint.FRAME_RATE;\n var MAX_A = deltaTimeWeight * MAX_V / FRAME_TO_MAX_SPEED;\n var dx = (this.faceTargetX - this.faceX);\n var dy = (this.faceTargetY - this.faceY);\n // if(dx == 0 && dy == 0) return;\n if (Math.abs(dx) <= this.EPSILON && Math.abs(dy) <= this.EPSILON) return;\n var d = Math.sqrt(dx * dx + dy * dy);\n var vx = MAX_V * dx / d;\n var vy = MAX_V * dy / d;\n var ax = vx - this.faceVX;\n var ay = vy - this.faceVY;\n var a = Math.sqrt(ax * ax + ay * ay);\n if (a < -MAX_A || a > MAX_A) {\n ax *= MAX_A / a;\n ay *= MAX_A / a;\n a = MAX_A;\n }\n this.faceVX += ax;\n this.faceVY += ay;\n {\n var max_v = 0.5 * (Math.sqrt(MAX_A * MAX_A + 16 * MAX_A * d - 8 * MAX_A * d) - MAX_A);\n var cur_v = Math.sqrt(this.faceVX * this.faceVX + this.faceVY * this.faceVY);\n if (cur_v > max_v) {\n this.faceVX *= max_v / cur_v;\n this.faceVY *= max_v / cur_v;\n }\n }\n this.faceX += this.faceVX;\n this.faceY += this.faceVY;\n}\n\n//============================================================\n//============================================================\n// class L2DViewMatrix extends L2DMatrix44\n//============================================================\n//============================================================\nfunction L2DViewMatrix() {\n L2DMatrix44.prototype.constructor.call(this);\n this.screenLeft = null;\n this.screenRight = null;\n this.screenTop = null;\n this.screenBottom = null;\n this.maxLeft = null;\n this.maxRight = null;\n this.maxTop = null;\n this.maxBottom = null;\n}\n\nL2DViewMatrix.prototype = new L2DMatrix44(); //L2DViewMatrix extends L2DMatrix44\n\n//============================================================\n// L2DViewMatrix # adjustTranslate()\n//============================================================\nL2DViewMatrix.prototype.adjustTranslate = function (shiftX/*float*/, shiftY/*float*/) {\n if (this.tr[0] * this.maxLeft + (this.tr[12] + shiftX) > this.screenLeft)\n shiftX = this.screenLeft - this.tr[0] * this.maxLeft - this.tr[12];\n if (this.tr[0] * this.maxRight + (this.tr[12] + shiftX) < this.screenRight)\n shiftX = this.screenRight - this.tr[0] * this.maxRight - this.tr[12];\n if (this.tr[5] * this.maxTop + (this.tr[13] + shiftY) < this.screenTop)\n shiftY = this.screenTop - this.tr[5] * this.maxTop - this.tr[13];\n if (this.tr[5] * this.maxBottom + (this.tr[13] + shiftY) > this.screenBottom)\n shiftY = this.screenBottom - this.tr[5] * this.maxBottom - this.tr[13];\n\n var tr1 = [1, 0, 0, 0,\n 0, 1, 0, 0,\n 0, 0, 1, 0,\n shiftX, shiftY, 0, 1];\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DViewMatrix # adjustScale()\n//============================================================\nL2DViewMatrix.prototype.adjustScale = function (cx/*float*/, cy/*float*/, scale/*float*/) {\n var targetScale = scale * this.tr[0];\n var tr1 = [1, 0, 0, 0,\n 0, 1, 0, 0,\n 0, 0, 1, 0,\n cx, cy, 0, 1];\n var tr2 = [scale, 0, 0, 0,\n 0, scale, 0, 0,\n 0, 0, 1, 0,\n 0, 0, 0, 1];\n var tr3 = [1, 0, 0, 0,\n 0, 1, 0, 0,\n 0, 0, 1, 0,\n -cx, -cy, 0, 1];\n L2DMatrix44.mul(tr3, this.tr, this.tr);\n L2DMatrix44.mul(tr2, this.tr, this.tr);\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DViewMatrix # setScreenRect()\n//============================================================\nL2DViewMatrix.prototype.setScreenRect = function (left/*float*/, right/*float*/, bottom/*float*/, top/*float*/) {\n this.screenLeft = left;\n this.screenRight = right;\n this.screenTop = top;\n this.screenBottom = bottom;\n}\n\n//============================================================\n// L2DViewMatrix # setMaxScreenRect()\n//============================================================\nL2DViewMatrix.prototype.setMaxScreenRect = function (left/*float*/, right/*float*/, bottom/*float*/, top/*float*/) {\n this.maxLeft = left;\n this.maxRight = right;\n this.maxTop = top;\n this.maxBottom = bottom;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenLeft()\n//============================================================\nL2DViewMatrix.prototype.getScreenLeft = function () {\n return this.screenLeft;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenRight()\n//============================================================\nL2DViewMatrix.prototype.getScreenRight = function () {\n return this.screenRight;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenBottom()\n//============================================================\nL2DViewMatrix.prototype.getScreenBottom = function () {\n return this.screenBottom;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenTop()\n//============================================================\nL2DViewMatrix.prototype.getScreenTop = function () {\n return this.screenTop;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxLeft()\n//============================================================\nL2DViewMatrix.prototype.getMaxLeft = function () {\n return this.maxLeft;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxRight()\n//============================================================\nL2DViewMatrix.prototype.getMaxRight = function () {\n return this.maxRight;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxBottom()\n//============================================================\nL2DViewMatrix.prototype.getMaxBottom = function () {\n return this.maxBottom;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxTop()\n//============================================================\nL2DViewMatrix.prototype.getMaxTop = function () {\n return this.maxTop;\n}\n\n//============================================================\n//============================================================\n// class Live2DFramework\n//============================================================\n//============================================================\nfunction Live2DFramework() {\n}\n\n//============================================================\nLive2DFramework.platformManager = null;\n\n//============================================================\n// static Live2DFramework.getPlatformManager()\n//============================================================\nLive2DFramework.getPlatformManager = function () {\n return Live2DFramework.platformManager;\n}\n\n//============================================================\n// static Live2DFramework.setPlatformManager()\n//============================================================\nLive2DFramework.setPlatformManager = function (platformManager /*IPlatformManager*/) {\n Live2DFramework.platformManager = platformManager;\n}\n\nexport{\n L2DTargetPoint,\n Live2DFramework,\n L2DViewMatrix,\n L2DPose,\n L2DPartsParam,\n L2DPhysics,\n L2DMotionManager,\n L2DModelMatrix,\n L2DMatrix44,\n EYE_STATE,\n L2DEyeBlink,\n L2DExpressionParam,\n L2DExpressionMotion,\n L2DBaseModel,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/lib/Live2DFramework.js","// Modified by xiazeyu.\n\n/**\n* @desc The definitions of values releated to model react\n*/\n\nexport const cDefine = {\n // above are viewMatrix value settings\n VIEW_LOGICAL_LEFT : -1, // -1, the left abscissa of viewMatrix\n VIEW_LOGICAL_RIGHT : 1, // 1, the right abscissa of viewMatrix\n VIEW_LOGICAL_MAX_LEFT : -2, // -2, the max left abscissa of viewMatrix\n VIEW_LOGICAL_MAX_RIGHT : 2, // 2, the max right abscissa of viewMatrix\n VIEW_LOGICAL_MAX_BOTTOM : -2, // -2, the max bottom abscissa of viewMatrix\n VIEW_LOGICAL_MAX_TOP : 2, // 2, the max top abscissa of viewMatrix\n\n // above are the motions priority settings.\n PRIORITY_NONE : 0, // 0,do nothing\n PRIORITY_IDLE : 1, // 1, idle motions\n PRIORITY_NORMAL : 2, // 2, normal motions\n PRIORITY_FORCE : 3, // 3, force to show motion\n\n // above are the index to the motions in model.json\n // #43\n MOTION_GROUP_IDLE : \"idle\",\n MOTION_GROUP_TAP_BODY : \"tap_body\",\n MOTION_GROUP_FLICK_HEAD : \"flick_head\", // unused\n MOTION_GROUP_PINCH_IN : \"pinch_in\", // unused\n MOTION_GROUP_PINCH_OUT : \"pinch_out\", // unused\n MOTION_GROUP_SHAKE : \"shake\", // unused\n\n // above are the index to the hit areas in model.json\n // #43\n HIT_AREA_HEAD : \"head\",\n HIT_AREA_BODY : \"body\"\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/cDefine.js","/**\n * @description The container and manager for all the DOM and WebGL emelents.\n */\n\n\nimport { config } from './config/configMgr';\nimport htmlTemplate from './tmplate/innerHTML';\n\n/**\n * The current WebGL element\n * @type {RenderingContext}\n */\n\nlet currWebGL = undefined;\n\n/**\n * The current canvas element\n * @type {HTMLElement}\n */\n\nlet currCanvas;\n\n/**\n * Create the canvas and styles using DOM\n * @return {null}\n */\n\nfunction createElement(){\n\n let e = document.getElementById(config.name.div)\n if (e !== null){\n document.body.removeChild(e);\n }\n\n let newElem = document.createElement('div');\n newElem.id = config.name.div;\n newElem.innerHTML = htmlTemplate;\n let newCanvasElem = document.createElement('canvas');\n newCanvasElem.setAttribute('id', config.name.canvas);\n newCanvasElem.setAttribute('width', config.display.width * config.display.antialias);\n newCanvasElem.setAttribute('height', config.display.height * config.display.antialias);\n newCanvasElem.style.setProperty('position', 'fixed');\n newCanvasElem.style.setProperty('width', config.display.width);\n newCanvasElem.style.setProperty('height', config.display.height);\n newCanvasElem.style.setProperty('opacity', config.react.opacityDefault);\n newCanvasElem.style.setProperty(config.display.position, config.display.hOffset + 'px');\n newCanvasElem.style.setProperty('bottom', config.display.vOffset + 'px');\n newCanvasElem.style.setProperty('z-index', 99999);\n newCanvasElem.style.setProperty('pointer-events', 'none');\n if(config.dev.border) newCanvasElem.style.setProperty('border', 'dashed 1px #CCC');\n newElem.appendChild(newCanvasElem);\n\n document.body.appendChild(newElem);\n currCanvas = document.getElementById(config.name.canvas);\n\n initWebGL();\n\n}\n\n/**\n * Find and set the current WebGL element to the container\n * @return {null}\n */\n\nfunction initWebGL(){\n\n var NAMES = ['webgl2', 'webgl', 'experimental-webgl2', 'experimental-webgl', 'webkit-3d', 'moz-webgl'];\n for(let i = 0; i < NAMES.length; i++){\n try{\n let ctx = currCanvas.getContext(NAMES[i], {\n alpha: true,\n antialias: true,\n premultipliedAlpha: true,\n failIfMajorPerformanceCaveat: false,\n });\n if(ctx) currWebGL = ctx;\n }catch(e){}\n }\n if(!currWebGL){\n console.error('Live2D widgets: Failed to create WebGL context.');\n if(!window.WebGLRenderingContext){\n console.error('Your browser may not support WebGL, check https://get.webgl.org/ for futher information.');\n }\n return;\n }\n};\n\n\nexport{\n createElement,\n currWebGL,\n currCanvas,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/elementMgr.js","/**\n *\n * You can modify and use this source freely\n * only for the development of application related Live2D.\n *\n * (c) Live2D Inc. All rights reserved.\n */\n\n/**\n * EYHN 修改\n *\n * Copyright © 2016 - 2017 EYHN\n */\n\n// Modified by xiazeyu.\n\n/**\n* @desc A matrix stack releated to draw the model\n*/\n\nexport function MatrixStack() {}\n\nMatrixStack.matrixStack = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\nMatrixStack.depth = 0;\nMatrixStack.currentMatrix = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\nMatrixStack.tmp = new Array(16);\n\n/**\n* @name reset\n* @desc reset the stack\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.reset = function(){\n this.depth = 0;\n}\n\n/**\n* @name loadIdentity\n* @desc reset values in the stack to whether it can be divisible by 5\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.loadIdentity = function(){\n var thisRef = this;\n for (var i = 0; i < 16; i++){\n thisRef.currentMatrix[i] = (i % 5 == 0) ? 1 : 0;\n }\n}\n\n/**\n* @name push\n* @desc push a new element into the stack\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.push = function(){\n var thisRef = this;\n // var offset = thisRef.depth * 16;\n var nextOffset = (thisRef.depth + 1) * 16;\n\n if (thisRef.matrixStack.length < nextOffset + 16){\n thisRef.matrixStack.length = nextOffset + 16;\n }\n\n for (var i = 0; i < 16; i++){\n thisRef.matrixStack[nextOffset + i] = thisRef.currentMatrix[i];\n }\n\n thisRef.depth++;\n}\n\n/**\n* @name pop\n* @desc pop an element from the stack\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.pop = function(){\n var thisRef = this;\n thisRef.depth--;\n if (thisRef.depth < 0){ // stack is underflow?????\n myError(\"Invalid matrix stack.\");\n thisRef.depth = 0;\n }\n\n var offset = thisRef.depth * 16;\n for (var i = 0; i < 16; i++){\n thisRef.currentMatrix[i] = thisRef.matrixStack[offset + i];\n }\n}\n\n/**\n* @name getMatrix\n* @desc return the current matrix stack\n* @param null\n* @returns {Array} current matrix stack\n* @memberOf MatrixStack\n*/\nMatrixStack.getMatrix = function(){\n return this.currentMatrix;\n}\n\n/**\n* @name multMatrix\n* @desc matrix multiplication, save to the currentMatrix\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.multMatrix = function(matNew)\n{\n var thisRef = this;\n var i, j, k;\n\n for (i = 0; i < 16; i++){\n thisRef.tmp[i] = 0;\n }\n\n for (i = 0; i < 4; i++){\n for (j = 0; j < 4; j++){\n for (k = 0; k < 4; k++){\n thisRef.tmp[i + j * 4] += thisRef.currentMatrix[i + k * 4] * matNew[k + j * 4];\n }\n }\n }\n for (i = 0; i < 16; i++){\n thisRef.currentMatrix[i] = thisRef.tmp[i];\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/MatrixStack.js","module.exports = \"\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/tmplate/innerHTML.html\n// module id = 136\n// module chunks = 0","// Provide a \"System\" global.\r\nmodule.exports = {\r\n\t// Make sure import is only used as \"System.import\"\r\n\timport: function() {\r\n\t\tthrow new Error(\"System.import cannot be used indirectly\");\r\n\t}\r\n};\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/system.js\n// module id = 137\n// module chunks = 0","import { Live2DFramework } from \"./lib/Live2DFramework\";\nimport { PlatformManager } from \"./PlatformManager\";\nimport { cModel } from \"./cModel\";\nimport { cDefine } from \"./cDefine\";\n\nfunction cManager() {\n // console.log(\"--> cManager()\");\n\n this.models = [];\n this.count = -1;\n this.reloadFlg = false;\n\n Live2DFramework.setPlatformManager(new PlatformManager());\n\n}\n\ncManager.prototype.createModel = function () {\n\n var model = new cModel();\n this.models.push(model);\n\n return model;\n\n}\n\n\ncManager.prototype.changeModel = function (gl, modelurl) {\n // console.log(\"--> cManager.update(gl)\");\n\n if (this.reloadFlg) {\n this.reloadFlg = false;\n this.releaseModel(0, gl);\n this.createModel();\n this.models[0].load(gl, modelurl);\n }\n\n};\n\n\ncManager.prototype.getModel = function (no) {\n // console.log(\"--> cManager.getModel(\" + no + \")\");\n\n if (no >= this.models.length) return null;\n\n return this.models[no];\n};\n\n\n\ncManager.prototype.releaseModel = function (no, gl) {\n // console.log(\"--> cManager.releaseModel(\" + no + \")\");\n\n if (this.models.length <= no) return;\n\n this.models[no].release(gl);\n\n delete this.models[no];\n this.models.splice(no, 1);\n};\n\n\n\ncManager.prototype.numModels = function () {\n return this.models.length;\n};\n\n\n\ncManager.prototype.setDrag = function (x, y) {\n for (var i = 0; i < this.models.length; i++) {\n this.models[i].setDrag(x, y);\n }\n}\n\ncManager.prototype.tapEvent = function (x, y) {\n if (cDefine.DEBUG_LOG)\n console.log(\"tapEvent view x:\" + x + \" y:\" + y);\n\n for (var i = 0; i < this.models.length; i++) {\n\n if (this.models[i].hitTest(cDefine.HIT_AREA_HEAD, x, y)) {\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Tap face.\");\n\n this.models[i].setRandomExpression();\n }\n else if (this.models[i].hitTest(cDefine.HIT_AREA_BODY, x, y)) {\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Tap body.\" + \" models[\" + i + \"]\");\n\n this.models[i].startRandomMotion(cDefine.MOTION_GROUP_TAP_BODY,\n cDefine.PRIORITY_NORMAL);\n }\n }\n\n return true;\n};\n\nexport{\n cManager,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/cManager.js","\n/**\n *\n * You can modify and use this source freely\n * only for the development of application related Live2D.\n *\n * (c) Live2D Inc. All rights reserved.\n */\n\n// Modified by xiazeyu.\n\n/**\n* @desc A library that provide basic IO and json function\n*/\n\nimport { currWebGL } from './elementMgr';\nimport { Live2DModelWebGL } from \"./lib/live2d.core\";\n\n\n//============================================================\n//============================================================\n// class PlatformManager extend IPlatformManager\n//============================================================\n//============================================================\n\n/**\n* @name PlatformManager\n* @desc Define the variable type of PlatformManager\n* @param null\n* @returns {Structure} PlatformManager\n*/\nexport function PlatformManager()\n{\n\n}\n\n\n//============================================================\n// PlatformManager # loadBytes()\n//============================================================\n\n/**\n* @name loadBytes\n* @desc load bytes from the path and callback\n* @param {String} path, {Function} callback\n* @returns callback {raw} context\n* @memberOf PlatformManager\n*/\n\nPlatformManager.prototype.loadBytes = function(path/*String*/, callback)\n{\n var request = new XMLHttpRequest();\n request.open(\"GET\", path, true);\n request.responseType = \"arraybuffer\";\n request.onload = function(){\n switch(request.status){\n case 200:\n callback(request.response);\n break;\n default:\n console.error(\"Failed to load (\" + request.status + \") : \" + path);\n break;\n }\n }\n request.send(null);\n // return request;\n}\n\n\n//============================================================\n// PlatformManager # loadString()\n//============================================================\n\n/**\n* @name loadString\n* @desc load bytes from the path and put it into buffer\n* @param {String} path\n* @returns buffer {raw} context\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.loadString = function(path/*String*/)\n{\n\n this.loadBytes(path, function(buf) {\n return buf;\n });\n\n}\n\n\n//============================================================\n// PlatformManager # loadLive2DModel()\n//============================================================\n\n/**\n* @name loadLive2DModel\n* @desc load Live2DModel from the path and put it into buffer\n* @param {String} path, {function} callback\n* @returns callback loaded model\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.loadLive2DModel = function(path/*String*/, callback)\n{\n var model = null;\n\n // load moc\n this.loadBytes(path, function(buf){\n model = Live2DModelWebGL.loadModel(buf);\n callback(model);\n });\n\n}\n\n\n//============================================================\n// PlatformManager # loadTexture()\n//============================================================\n\n/**\n* @name loadTexture\n* @desc load Live2DModel's Texture and callback\n* @param {Live2DModelWebGL}model, {int}no, {string}path, {function}callback\n* @returns callback\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.loadTexture = function(model/*ALive2DModel*/, no/*int*/, path/*String*/, callback)\n{\n // load textures\n var loadedImage = new Image();\n // Thanks to @mashirozx & @fghrsh\n // Issues:\n // @https://github.com/journey-ad/live2d_src/issues/1\n // @https://github.com/journey-ad/live2d_src/issues/3\n loadedImage.crossOrigin = 'Anonymous';\n loadedImage.src = path;\n loadedImage.onload = onload;\n loadedImage.onerror = onerror;\n\n // var thisRef = this;\n loadedImage.onload = function() {\n // create texture\n var gl = currWebGL;\n var texture = gl.createTexture();\n if (!texture){ console.error(\"Failed to generate gl texture name.\"); return -1; }\n\n if(!model.isPremultipliedAlpha()){\n // 乗算済アルファテクスチャ以外の場合\n // emmmm, maybe do something for textures with alpha layer.\n gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1);\n }\n gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1);\n gl.activeTexture(gl.TEXTURE0);\n gl.bindTexture(gl.TEXTURE_2D, texture);\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA,\n gl.UNSIGNED_BYTE, loadedImage);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_NEAREST);\n gl.generateMipmap(gl.TEXTURE_2D);\n\n\n\n model.setTexture(no, texture);\n\n // テクスチャオブジェクトを解放\n // Release the texture object to prevent buffer overruns.\n texture = null;\n\n if (typeof callback == \"function\") callback();\n };\n\n loadedImage.onerror = function() {\n console.error(\"Failed to load image : \" + path);\n }\n}\n\n\n//============================================================\n// PlatformManager # parseFromBytes(buf)\n\n//============================================================\n\n/**\n* @name jsonParseFromBytes\n* @desc parse json file into arrays\n* @param {raw} buf\n* @returns {Array}jsonObj\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.jsonParseFromBytes = function(buf){\n\n var jsonStr;\n var bomCode = new Uint8Array(buf, 0, 3);\n if (bomCode[0] == 239 && bomCode[1] == 187 && bomCode[2] == 191) {\n jsonStr = String.fromCharCode.apply(null, new Uint8Array(buf, 3));\n } else {\n jsonStr = String.fromCharCode.apply(null, new Uint8Array(buf));\n }\n\n var jsonObj = JSON.parse(jsonStr);\n\n return jsonObj;\n};\n\n\n\n//============================================================\n// PlatformManager # log()\n//============================================================\n\n/**\n* @name log\n* @desc output log in console\n* @param {string} txt\n* @returns null\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.log = function(txt/*String*/)\n{\n console.log(txt);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/PlatformManager.js","import { Live2DFramework, L2DBaseModel, L2DEyeBlink } from \"./lib/Live2DFramework\";\nimport { ModelSettingJson } from \"./utils/ModelSettingJson\";\nimport { MatrixStack } from \"./utils/MatrixStack\";\nimport { cDefine } from \"./cDefine\";\nimport { UtSystem,/*\n UtDebug,\n LDTransform,\n LDGL,\n Live2D,\n Live2DModelWebGL,\n Live2DModelJS,\n Live2DMotion,\n MotionQueueManager,\n PhysicsHair,\n AMotion,\n PartsDataID,\n DrawDataID,\n BaseDataID,\n ParamID*/ } from './lib/live2d.core';\n//============================================================\n//============================================================\n// class cModel extends L2DBaseModel\n//============================================================\n//============================================================\nexport function cModel()\n{\n //L2DBaseModel.apply(this, arguments);\n L2DBaseModel.prototype.constructor.call(this);\n\n this.modelHomeDir = \"\";\n this.modelSetting = null;\n this.tmpMatrix = [];\n}\n\ncModel.prototype = new L2DBaseModel();\n\n\ncModel.prototype.load = function(gl, modelSettingPath, callback)\n{\n this.setUpdating(true);\n this.setInitialized(false);\n\n this.modelHomeDir = modelSettingPath.substring(0, modelSettingPath.lastIndexOf(\"/\") + 1);\n\n this.modelSetting = new ModelSettingJson();\n\n var thisRef = this;\n\n this.modelSetting.loadModelSetting(modelSettingPath, function(){\n\n var path = thisRef.modelHomeDir + thisRef.modelSetting.getModelFile();\n thisRef.loadModelData(path, function(model){\n\n for (var i = 0; i < thisRef.modelSetting.getTextureNum(); i++)\n {\n if( /^https?:\\/\\/|^\\/\\//i.test(thisRef.modelSetting.getTextureFile(i)) ){\n\n var texPaths = thisRef.modelSetting.getTextureFile(i);\n\n }else{\n var texPaths = thisRef.modelHomeDir + thisRef.modelSetting.getTextureFile(i);\n }\n thisRef.loadTexture(i, texPaths, function() {\n\n if( thisRef.isTexLoaded ) {\n\n if (thisRef.modelSetting.getExpressionNum() > 0)\n {\n\n thisRef.expressions = {};\n\n for (var j = 0; j < thisRef.modelSetting.getExpressionNum(); j++)\n {\n var expName = thisRef.modelSetting.getExpressionName(j);\n var expFilePath = thisRef.modelHomeDir +\n thisRef.modelSetting.getExpressionFile(j);\n\n thisRef.loadExpression(expName, expFilePath);\n }\n }\n else\n {\n thisRef.expressionManager = null;\n thisRef.expressions = {};\n }\n\n\n\n if (thisRef.eyeBlink == null)\n {\n thisRef.eyeBlink = new L2DEyeBlink();\n }\n\n\n if (thisRef.modelSetting.getPhysicsFile() != null)\n {\n thisRef.loadPhysics(thisRef.modelHomeDir +\n thisRef.modelSetting.getPhysicsFile());\n }\n else\n {\n thisRef.physics = null;\n }\n\n\n\n if (thisRef.modelSetting.getPoseFile() != null)\n {\n thisRef.loadPose(\n thisRef.modelHomeDir +\n thisRef.modelSetting.getPoseFile(),\n function() {\n thisRef.pose.updateParam(thisRef.live2DModel);\n }\n );\n }\n else\n {\n thisRef.pose = null;\n }\n\n\n\n if (thisRef.modelSetting.getLayout() != null)\n {\n var layout = thisRef.modelSetting.getLayout();\n if (layout[\"width\"] != null)\n thisRef.modelMatrix.setWidth(layout[\"width\"]);\n if (layout[\"height\"] != null)\n thisRef.modelMatrix.setHeight(layout[\"height\"]);\n\n if (layout[\"x\"] != null)\n thisRef.modelMatrix.setX(layout[\"x\"]);\n if (layout[\"y\"] != null)\n thisRef.modelMatrix.setY(layout[\"y\"]);\n if (layout[\"center_x\"] != null)\n thisRef.modelMatrix.centerX(layout[\"center_x\"]);\n if (layout[\"center_y\"] != null)\n thisRef.modelMatrix.centerY(layout[\"center_y\"]);\n if (layout[\"top\"] != null)\n thisRef.modelMatrix.top(layout[\"top\"]);\n if (layout[\"bottom\"] != null)\n thisRef.modelMatrix.bottom(layout[\"bottom\"]);\n if (layout[\"left\"] != null)\n thisRef.modelMatrix.left(layout[\"left\"]);\n if (layout[\"right\"] != null)\n thisRef.modelMatrix.right(layout[\"right\"]);\n }\n\n for (var j = 0; j < thisRef.modelSetting.getInitParamNum(); j++)\n {\n\n thisRef.live2DModel.setParamFloat(\n thisRef.modelSetting.getInitParamID(j),\n thisRef.modelSetting.getInitParamValue(j)\n );\n }\n\n for (var j = 0; j < thisRef.modelSetting.getInitPartsVisibleNum(); j++)\n {\n\n thisRef.live2DModel.setPartsOpacity(\n thisRef.modelSetting.getInitPartsVisibleID(j),\n thisRef.modelSetting.getInitPartsVisibleValue(j)\n );\n }\n\n\n\n thisRef.live2DModel.saveParam();\n // thisRef.live2DModel.setGL(gl);\n\n\n thisRef.preloadMotionGroup(cDefine.MOTION_GROUP_IDLE);\n thisRef.mainMotionManager.stopAllMotions();\n\n thisRef.setUpdating(false);\n thisRef.setInitialized(true);\n\n if (typeof callback == \"function\") callback();\n\n }\n });\n }\n });\n });\n};\n\n\n\ncModel.prototype.release = function(gl)\n{\n // this.live2DModel.deleteTextures();\n var pm = Live2DFramework.getPlatformManager();\n\n gl.deleteTexture(pm.texture);\n}\n\n\n\ncModel.prototype.preloadMotionGroup = function(name)\n{\n var thisRef = this;\n\n for (var i = 0; i < this.modelSetting.getMotionNum(name); i++)\n {\n var file = this.modelSetting.getMotionFile(name, i);\n this.loadMotion(file, this.modelHomeDir + file, function(motion) {\n motion.setFadeIn(thisRef.modelSetting.getMotionFadeIn(name, i));\n motion.setFadeOut(thisRef.modelSetting.getMotionFadeOut(name, i));\n });\n\n }\n}\n\n\ncModel.prototype.update = function()\n{\n // console.log(\"--> cModel.update()\");\n\n if(this.live2DModel == null)\n {\n if (cDefine.DEBUG_LOG) console.error(\"Failed to update.\");\n\n return;\n }\n\n var timeMSec = UtSystem.getUserTimeMSec() - this.startTimeMSec;\n var timeSec = timeMSec / 1000.0;\n var t = timeSec * 2 * Math.PI;\n\n\n if (this.mainMotionManager.isFinished())\n {\n\n this.startRandomMotion(cDefine.MOTION_GROUP_IDLE, cDefine.PRIORITY_IDLE);\n }\n\n //-----------------------------------------------------------------\n\n\n this.live2DModel.loadParam();\n\n\n\n var update = this.mainMotionManager.updateParam(this.live2DModel);\n if (!update) {\n\n if(this.eyeBlink != null) {\n this.eyeBlink.updateParam(this.live2DModel);\n }\n }\n\n\n this.live2DModel.saveParam();\n\n //-----------------------------------------------------------------\n\n\n if (this.expressionManager != null &&\n this.expressions != null &&\n !this.expressionManager.isFinished())\n {\n this.expressionManager.updateParam(this.live2DModel);\n }\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_X\", this.dragX * 30, 1);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Y\", this.dragY * 30, 1);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Z\", (this.dragX * this.dragY) * -30, 1);\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_BODY_ANGLE_X\", this.dragX*10, 1);\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_EYE_BALL_X\", this.dragX, 1);\n this.live2DModel.addToParamFloat(\"PARAM_EYE_BALL_Y\", this.dragY, 1);\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_X\",\n Number((15 * Math.sin(t / 6.5345))), 0.5);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Y\",\n Number((8 * Math.sin(t / 3.5345))), 0.5);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Z\",\n Number((10 * Math.sin(t / 5.5345))), 0.5);\n this.live2DModel.addToParamFloat(\"PARAM_BODY_ANGLE_X\",\n Number((4 * Math.sin(t / 15.5345))), 0.5);\n this.live2DModel.setParamFloat(\"PARAM_BREATH\",\n Number((0.5 + 0.5 * Math.sin(t / 3.2345))), 1);\n\n\n if (this.physics != null)\n {\n this.physics.updateParam(this.live2DModel);\n }\n\n\n if (this.lipSync == null)\n {\n this.live2DModel.setParamFloat(\"PARAM_MOUTH_OPEN_Y\",\n this.lipSyncValue);\n }\n\n\n if( this.pose != null ) {\n this.pose.updateParam(this.live2DModel);\n }\n\n this.live2DModel.update();\n};\n\n\n\ncModel.prototype.setRandomExpression = function()\n{\n var tmp = [];\n for (var name in this.expressions)\n {\n tmp.push(name);\n }\n\n var no = parseInt(Math.random() * tmp.length);\n\n this.setExpression(tmp[no]);\n}\n\n\n\ncModel.prototype.startRandomMotion = function(name, priority)\n{\n var max = this.modelSetting.getMotionNum(name);\n var no = parseInt(Math.random() * max);\n this.startMotion(name, no, priority);\n}\n\n\n\ncModel.prototype.startMotion = function(name, no, priority)\n{\n // console.log(\"startMotion : \" + name + \" \" + no + \" \" + priority);\n\n var motionName = this.modelSetting.getMotionFile(name, no);\n\n if (motionName == null || motionName == \"\")\n {\n if (cDefine.DEBUG_LOG)\n console.error(\"Failed to motion.\");\n return;\n }\n\n if (priority == cDefine.PRIORITY_FORCE)\n {\n this.mainMotionManager.setReservePriority(priority);\n }\n else if (!this.mainMotionManager.reserveMotion(priority))\n {\n if (cDefine.DEBUG_LOG)\n console.log(\"Motion is running.\")\n return;\n }\n\n var thisRef = this;\n var motion;\n\n if (this.motions[name] == null)\n {\n this.loadMotion(null, this.modelHomeDir + motionName, function(mtn) {\n motion = mtn;\n\n\n thisRef.setFadeInFadeOut(name, no, priority, motion);\n\n });\n }\n else\n {\n motion = this.motions[name];\n\n\n thisRef.setFadeInFadeOut(name, no, priority, motion);\n }\n}\n\n\ncModel.prototype.setFadeInFadeOut = function(name, no, priority, motion)\n{\n var motionName = this.modelSetting.getMotionFile(name, no);\n\n motion.setFadeIn(this.modelSetting.getMotionFadeIn(name, no));\n motion.setFadeOut(this.modelSetting.getMotionFadeOut(name, no));\n\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Start motion : \" + motionName);\n\n if (this.modelSetting.getMotionSound(name, no) == null)\n {\n this.mainMotionManager.startMotionPrio(motion, priority);\n }\n else\n {\n var soundName = this.modelSetting.getMotionSound(name, no);\n // var player = new Sound(this.modelHomeDir + soundName);\n\n var snd = document.createElement(\"audio\");\n snd.src = this.modelHomeDir + soundName;\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Start sound : \" + soundName);\n\n snd.play();\n this.mainMotionManager.startMotionPrio(motion, priority);\n }\n}\n\n\n\ncModel.prototype.setExpression = function(name)\n{\n var motion = this.expressions[name];\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Expression : \" + name);\n\n this.expressionManager.startMotion(motion, false);\n}\n\n\n\ncModel.prototype.draw = function(gl)\n{\n //console.log(\"--> cModel.draw()\");\n\n // if(this.live2DModel == null) return;\n\n\n MatrixStack.push();\n\n MatrixStack.multMatrix(this.modelMatrix.getArray());\n\n this.tmpMatrix = MatrixStack.getMatrix()\n this.live2DModel.setMatrix(this.tmpMatrix);\n this.live2DModel.draw();\n\n MatrixStack.pop();\n\n};\n\n\n\ncModel.prototype.hitTest = function(id, testX, testY)\n{\n var len = this.modelSetting.getHitAreaNum();\n for (var i = 0; i < len; i++)\n {\n if (id == this.modelSetting.getHitAreaName(i))\n {\n var drawID = this.modelSetting.getHitAreaID(i);\n\n return this.hitTestSimple(drawID, testX, testY);\n }\n }\n\n return false;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/cModel.js","// Modified by xiazeyu.\n\n/**\n* @desc To get the model settings from given json file\n*/\n\nimport { Live2DFramework } from \"../lib/Live2DFramework\"\n\n/**\n* @name ModelSettingJson\n* @desc return the struct of ModelSettingJson\n* @param null\n* @returns {Structure} ModelSettingJson\n*/\nexport function ModelSettingJson()\n{ // Define the index in the json file.\n this.NAME = \"name\";\n this.ID = \"id\";\n this.MODEL = \"model\";\n this.TEXTURES = \"textures\";\n this.HIT_AREAS = \"hit_areas\";\n this.PHYSICS = \"physics\";\n this.POSE = \"pose\";\n this.EXPRESSIONS = \"expressions\";\n this.MOTION_GROUPS = \"motions\";\n this.SOUND = \"sound\";\n this.FADE_IN = \"fade_in\";\n this.FADE_OUT = \"fade_out\";\n this.LAYOUT = \"layout\";\n this.INIT_PARAM = \"init_param\";\n this.INIT_PARTS_VISIBLE = \"init_parts_visible\";\n this.VALUE = \"val\";\n this.FILE = \"file\";\n this.json = {};\n}\n\n/**\n* @name loadModelSetting\n* @desc load model settings from json\n* @param {string} jsonPath, {function} callback\n* @returns null\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.loadModelSetting = function(path, callback)\n{\n var thisRef = this;\n var pm = Live2DFramework.getPlatformManager();\n pm.loadBytes(path, function(buf) {\n var str = String.fromCharCode.apply(null,new Uint8Array(buf));\n thisRef.json = JSON.parse(str);\n callback();\n });\n};\n\n/**\n* @name getTextureFile\n* @desc get texture file from json\n* @param {int} order number of texture\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getTextureFile = function(n)\n{\n if (this.json[this.TEXTURES] == null || this.json[this.TEXTURES][n] == null)\n return null;\n\n return this.json[this.TEXTURES][n];\n}\n\n/**\n* @name getModelFile\n* @desc get model file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getModelFile = function()\n{\n return this.json[this.MODEL];\n};\n\n/**\n* @name getTextureNum\n* @desc get the amount of textures from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getTextureNum = function()\n{\n if (this.json[this.TEXTURES] == null) return 0;\n\n return this.json[this.TEXTURES].length;\n}\n\n/**\n* @name getHitAreaNum\n* @desc get the amount of hit area from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getHitAreaNum = function()\n{\n if (this.json[this.HIT_AREAS] == null)\n return 0;\n\n return this.json[this.HIT_AREAS].length;\n}\n\n/**\n* @name getHitAreaID\n* @desc get the hit area ID of given index from json\n* @param {int} index\n* @returns {int} ID\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getHitAreaID = function(n)\n{\n if (this.json[this.HIT_AREAS] == null ||\n this.json[this.HIT_AREAS][n] == null)\n return null;\n\n return this.json[this.HIT_AREAS][n][this.ID];\n}\n\n/**\n* @name getHitAreaName\n* @desc get the hit area name of given index from json\n* @param {int} index\n* @returns {string} name\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getHitAreaName = function(n)\n{\n if (this.json[this.HIT_AREAS] == null ||\n this.json[this.HIT_AREAS][n] == null)\n return null;\n\n return this.json[this.HIT_AREAS][n][this.NAME];\n}\n\n/**\n* @name getPhysicsFile\n* @desc get physics file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getPhysicsFile = function()\n{\n return this.json[this.PHYSICS];\n}\n\n/**\n* @name getPoseFile\n* @desc get pose file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getPoseFile = function()\n{\n return this.json[this.POSE];\n}\n\n/**\n* @name getExpressionNum\n* @desc get the amount of expressions from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getExpressionNum = function()\n{\n return (this.json[this.EXPRESSIONS] == null) ? 0 : this.json[this.EXPRESSIONS].length;\n}\n\n/**\n* @name getExpressionFile\n* @desc get expression file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getExpressionFile = function(n)\n{\n if (this.json[this.EXPRESSIONS] == null)\n return null;\n return this.json[this.EXPRESSIONS][n][this.FILE];\n}\n\n/**\n* @name getExpressionName\n* @desc get the hit expression name of given index from json\n* @param {int} index\n* @returns {string} name\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getExpressionName = function(n)\n{\n if (this.json[this.EXPRESSIONS] == null)\n return null;\n return this.json[this.EXPRESSIONS][n][this.NAME];\n}\n\n/**\n* @name getLayout\n* @desc get the layout from json\n* @param null\n* @returns {string} layout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getLayout = function()\n{\n return this.json[this.LAYOUT];\n}\n\n/**\n* @name getInitParamNum\n* @desc get the amount of init parameter from json\n* @param null\n* @returns {int} amount\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitParamNum = function()\n{\n return (this.json[this.INIT_PARAM] == null) ? 0 : this.json[this.INIT_PARAM].length;\n}\n\n/**\n* @name getMotionNum\n* @desc get the amount of motions from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionNum = function(name)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null)\n return 0;\n\n return this.json[this.MOTION_GROUPS][name].length;\n}\n\n/**\n* @name getMotionFile\n* @desc get motion file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionFile = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null)\n return null;\n\n return this.json[this.MOTION_GROUPS][name][n][this.FILE];\n}\n\n/**\n* @name getMotionSound\n* @desc get motion's sound file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionSound = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null ||\n this.json[this.MOTION_GROUPS][name][n][this.SOUND] == null)\n return null;\n\n return this.json[this.MOTION_GROUPS][name][n][this.SOUND];\n}\n\n/**\n* @name getMotionFadeIn\n* @desc get the motion's fade in setting from json\n* @param {string} name, {int} index\n* @returns {int} time (1000 if not found)\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionFadeIn = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null ||\n this.json[this.MOTION_GROUPS][name][n][this.FADE_IN] == null)\n return 1000;\n\n return this.json[this.MOTION_GROUPS][name][n][this.FADE_IN];\n}\n\n/**\n* @name getMotionFadeOut\n* @desc get the motion's fade out setting from json\n* @param {string} name, {int} index\n* @returns {int} time (1000 if not found)\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionFadeOut = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null ||\n this.json[this.MOTION_GROUPS][name][n][this.FADE_OUT] == null)\n return 1000;\n\n return this.json[this.MOTION_GROUPS][name][n][this.FADE_OUT];\n}\n\n/**\n* @name getInitParamID\n* @desc get the visible ID of init parameter from json\n* @param {(int)} index\n* @returns {int} ID\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitParamID = function(n)\n{\n if (this.json[this.INIT_PARAM] == null ||\n this.json[this.INIT_PARAM][n] == null)\n return null;\n\n return this.json[this.INIT_PARAM][n][this.ID];\n}\n\n/**\n* @name getInitParamValue\n* @desc get the visible value of init parameter from json\n* @param {(int)} index\n* @returns {int} value\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitParamValue = function(n)\n{\n if (this.json[this.INIT_PARAM] == null || this.json[this.INIT_PARAM][n] == null)\n return NaN;\n\n return this.json[this.INIT_PARAM][n][this.VALUE];\n}\n\n/**\n* @name getInitPartsVisibleNum\n* @desc get the amount of init parts visible from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitPartsVisibleNum = function()\n{\n return (this.json[this.INIT_PARTS_VISIBLE] == null) ? 0 : this.json[this.INIT_PARTS_VISIBLE].length;\n}\n\n/**\n* @name getInitPartsVisibleID\n* @desc get the visible ID of init parts from json\n* @param {(int)} index\n* @returns {int} ID\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitPartsVisibleID = function(n)\n{\n if (this.json[this.INIT_PARTS_VISIBLE] == null || this.json[this.INIT_PARTS_VISIBLE][n] == null)\n return null;\n return this.json[this.INIT_PARTS_VISIBLE][n][this.ID];\n}\n\n/**\n* @name getInitPartsVisibleValue\n* @desc get the visible value of init parts from json\n* @param {(int)} index\n* @returns {int} value\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitPartsVisibleValue = function(n)\n{\n if (this.json[this.INIT_PARTS_VISIBLE] == null || this.json[this.INIT_PARTS_VISIBLE][n] == null)\n return NaN;\n\n return this.json[this.INIT_PARTS_VISIBLE][n][this.VALUE];\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/ModelSettingJson.js"],"sourceRoot":""} \ No newline at end of file +{"version":3,"sources":["webpack:///./src/cLive2DApp.js","webpack:///./src/lib/live2d.core.js","webpack:///./src/lib/Live2DFramework.js","webpack:///./src/cDefine.js","webpack:///./src/elementMgr.js","webpack:///./src/utils/MatrixStack.js","webpack:///./src/tmplate/innerHTML.html","webpack:///(webpack)/buildin/system.js","webpack:///./src/cManager.js","webpack:///./src/PlatformManager.js","webpack:///./src/cModel.js","webpack:///./src/utils/ModelSettingJson.js"],"names":["_configMgr","__webpack_require__","_elementMgr","_live2d","_Live2DFramework","_cManager","_MatrixStack","_cDefine","live2DMgr","cManager","isDrawStart","dragMgr","viewMatrix","projMatrix","deviceToScreen","theRealInit","createElement","L2DTargetPoint","ratio","config","display","height","width","left","cDefine","VIEW_LOGICAL_LEFT","right","VIEW_LOGICAL_RIGHT","bottom","top","L2DViewMatrix","setScreenRect","setMaxScreenRect","VIEW_LOGICAL_MAX_LEFT","VIEW_LOGICAL_MAX_RIGHT","VIEW_LOGICAL_MAX_BOTTOM","VIEW_LOGICAL_MAX_TOP","L2DMatrix44","multScale","multTranslate","Live2D","setGL","currWebGL","clearColor","modelurl","model","jsonPath","reloadFlg","count","changeModel","tick","MatrixStack","reset","loadIdentity","update","setDrag","getX","getY","clear","COLOR_BUFFER_BIT","multMatrix","getArray","push","i","numModels","getModel","initialized","updating","draw","pop","requestAnimationFrame","window","mozRequestAnimationFrame","webkitRequestAnimationFrame","msRequestAnimationFrame","currCanvas","captureFrame","toDataURL","j","aa","this","_$MT","_$5S","_$NP","_$42","y","_$0s","_$4s","_$62","aQ","aU","ArrayBuffer","DataView","J","aN","aS","K","aM","_$ST","aK","aJ","_$gr","ay","_$T7","aL","_$nP","_$s7","aH","_$9T","aT","_$KS","aP","getModelContext","setDrawParam","getDrawParam","init","aO","q","_$Rb","prototype","getModelImpl","w","_$zP","getCanvasWidth","getCanvasHeight","getParamFloat","getParamIndex","z","getID","setParamFloat","aI","arguments","length","addToParamFloat","multParamFloat","loadParam","saveParam","_$Rs","_$li","_$Ds","_$K2","_$s2","_$P7","aR","a0","aY","getPartsOpacity","aW","setPartsOpacity","aV","console","log","aZ","getPartsDataIndex","getDrawDataIndex","Z","getDrawData","getTransformedPoints","_$C2","ag","getIndexArray","_$aS","getType","a","_$wb","b","W","clipContextList","Array","glcontext","gl","dp_webgl","curFrameNo","firstError_clipInNotUpdate","colorBuffer","isInitGLFBFunc","tmpBoundsOnModel","av","Q","glContext","frameBuffers","getMaskRenderTexture","tmpModelToViewMatrix","ac","tmpMatrix2","tmpMatrixForMask","tmpMatrixForDraw","CHANNEL_COLORS","o","r","g","setChannelFlagAsColor","CHANNEL_COUNT","RENDER_TEXTURE_USE_MIPMAP","NOT_USED_FRAME","_$L7","splice","releaseShader","deleteFramebuffer","framebuffer","getClipIDList","findSameClip","U","getDrawDataID","addClippedDrawData","clipBufPre_clipContext","createFramebuffer","glno","setupClip","a1","calcClippedDrawTotalBounds","isUsing","getParameter","FRAMEBUFFER_BINDING","canvas","viewport","clippingMaskBufferSize","setupLayoutBounds","bindFramebuffer","FRAMEBUFFER","allClippedDrawRect","layoutChannelNo","layoutBounds","_$jL","expand","identity","translate","scale","x","setMatrix","m","aX","matrixForMask","matrixForDraw","clippingMaskDrawIndexList","setClipBufPre_clipContextForMask","getColorBuffer","clipIDList","a6","_$Ri","a5","clippedDrawContextList","drawDataIndex","_$yo","a4","a3","aw","_$i2","_$No","a2","Math","min","apply","max","Float32Array","owner","_$gP","ah","_$dP","_$eo","_$V0","_$a0","_$JT","setFadeIn","setFadeOut","_$pT","getFadeOut","_$4T","_$mT","getDurationMSec","getLoopDurationMSec","updateParam","_$AT","_$9L","P","getUserTimeMSec","_$z2","_$bs","_$Do","A","_$r2","updateParamExe","_$8s","_$fT","Object","start","_$r","_$0S","getSystemTimeMSec","dump","end","_$Ji","_$dL","_$KL","_$nr","stack","F","_$8P","_$6P","_$EL","_$5T","ak","constructor","call","_$tP","_$27","_$3s","_$vo","_$F2","_$ao","_$1S","an","_$F0","_$6L","_$6S","_$Xr","_$E2","u","p1","N","p2","_$Fo","_$Db","_$L2","_$M2","_$ks","_$9b","_$iP","_$iT","_$lL","_$qP","setup","_$Yb","_$xT","_$p","getPhysicsPoint1","getPhysicsPoint2","_$qr","_$pr","_$5r","_$Cs","atan2","PI","addSrcParam","h","addTargetParam","aF","sqrt","_$oP","_$oo","_$YS","vx","_$s0","vy","_$70","ax","_$7L","_$HL","fx","fy","cos","sin","aC","_$bS","at","_$wL","_$tL","Src","SRC_TO_X","SRC_TO_Y","SRC_TO_G_ANGLE","d","_$YP","Target","TARGET_FROM_ANGLE","TARGET_FROM_ANGLE_V","X","_$fL","_$gL","_$B0","_$z0","_$qT","reflectX","reflectY","_$_T","getFormatVersion","LIVE2D_FORMAT_VERSION_V2_10_SDK2","_$po","_$e","ad","_$ni","isNaN","contains","aG","_$Z2","bb","bo","bp","_$Q2","_$vs","ba","_$Tr","_$zr","bj","bi","a9","a8","br","bn","bm","bg","bf","bu","bt","bl","bk","be","bc","a7","bh","bs","bd","_$br","bq","_$Vr","bV","bW","bC","bX","bH","bw","_$jT","bT","b3","b2","bP","b1","b0","bM","bL","b8","bN","bZ","b7","bU","bS","b6","b5","bQ","bO","bD","bB","by","bx","bG","bE","bv","bA","bz","bY","bK","b4","bJ","bF","bR","e","_$HT","ae","_$dr","_$GS","_$qb","_$Lb","_$mS","clipID","_$ur","_$ES","_$8S","_$52","_$R2","_$or","_$Pr","convertClipIDForV2_11","test","id","split","_$cS","_$Tb","_$MS","_$Nr","_$IS","_$Us","_$Zs","_$7s","_$2b","_$j2","getOpacity","_$zS","getTargetBaseDataID","_$gs","_$32","n","_$2o","preDraw","_$B2","_$Eb","_$ps","_$lT","_$C0","_$tT","_$WL","culling","matrix4x4","premultipliedAlpha","anisotropy","clippingProcess","CLIPPING_PROCESS_NONE","clipBufPre_clipContextMask","clipBufPre_clipContextDraw","CLIPPING_PROCESS_OVERWRITE_ALPHA","CLIPPING_PROCESS_MULTIPLY_ALPHA","CLIPPING_PROCESS_DRAW","CLIPPING_PROCESS_CLEAR_ALPHA","getChannelFlagAsColor","_$ZT","_$Uo","setBaseColor","_$WP","_$IT","setPremultipliedAlpha","isPremultipliedAlpha","setAnisotropy","getAnisotropy","getClippingProcess","setClippingProcess","getClipBufPre_clipContextMask","setClipBufPre_clipContextForDraw","getClipBufPre_clipContextDraw","_$ho","blendMode","L2D_COLOR_BLEND_MODE_MULT","c","_$kP","_$Ai","_$c2","_$_b","readV2_opacity","interpolateOpacity","setInterpolatedOpacity","_$nb","_$a2","getBaseDataID","_$W2","_$CS","_$Mo","_$XP","getTimeMSec","setUserTimeMSec","updateUserTimeMSec","Date","getTime","_$Q","aA","_$VP","_$GP","_$8o","_$ds","_$2r","_$O2","_$ri","_$Pb","getParamID","_$yP","_$N2","_$d2","_$t2","_$Lr","_$wr","_$SL","_$AL","G","startsWith","getChar","charAt","String","fromCharCode","getUint8","createString","Uint16Array","_$LS","_$Ob","_$Ur","_$WS","_$v2","_$Xb","Exception","_$J","_$Qb","_$3T","_$h2","_$J2","getParamCount","_$zs","getCopyMatrix","mult","mult_safe","mult_fast","rotateX","fcos","_$9","rotateY","rotateZ","aD","_$7","_$f","_$H","_$g","_$k","_$w","_$hi","STATE_IDENTITY","_$Z","_$pS","_$kS","_$hb","_$gb","_$fo","_$go","transform","_$RT","_$so","_$CT","Y","motions","_$7r","_$Co","_$D0","_$yT","_$E","loopFadeIn","_$AS","_$cs","_$ar","_$D2","_$1T","loadMotion","t","_$RP","_$hs","_$4P","_$xs","_$us","_$qs","_$Ys","_$ws","_$Ns","_$Fr","_$I0","_$BL","_$r0","_$aL","isLoopFadeIn","setLoopFadeIn","aE","_$P","size","add","_$Ms","_$Qs","_$do","_$Ls","_$1r","_$FT","_$Ss","_$o7","_$S7","_$77","LIVE2D_FORMAT_VERSION_V2_11_SDK2_1","_$Is","_$h0","_$4L","_$7P","_$uT","_$9o","E","ab","f","s","aq","_$QT","_$co","_$qo","_$pb","_$is","_$_2","_$vr","_$Rr","_$Or","_$fs","_$Js","_$3S","_$Bo","_$db","_$8b","_$Hr","_$Ws","_$Vs","_$Er","_$Es","Int16Array","_$ZP","_$b0","_$HP","clipManager","_$_0","_$V2","_$W0","_$jr","_$ZS","_$tr","_$lr","release","getBaseData","_$l2","_$IP","getBaseDataIndex","_$1s","_$02","getDefaultValue","getMinValue","getMaxValue","_$u2","floor","toString","_$sT","_$H7","_$VS","_$BS","_$UT","_$Zo","getParamMax","getParamMin","_$p2","_$q2","_$Bb","_$5s","_$GT","ap","_$0T","_$5","exists","_$ls","_$3b","Int8Array","_$Xs","_$kb","read","_$C","_$js","write","_$TS","close","flush","ar","_$12","_$bb","_$_L","_$jo","_$iL","_$0L","_$Br","_$Dr","_$Cb","_$mr","az","STATE_FIRST","_$T2","_$10","_$uo","_$QS","_$7T","STATE_CLOSING","STATE_CLOSED","STATE_OPENING","STATE_INTERVAL","_$sb","Int32Array","_$As","_$U2","_$NT","_$9r","_$vS","_$no","_$vb","_$Gr","_$cr","_$yL","put","_$oT","_$mb","_$Hs","_$as","setTransform","EXPAND_W","drawElements","Error","_$Sr","setTexture","_$nS","_$Y0","_$Xo","_$io","_$0o","_$Lo","_$To","_$Po","_$gT","al","_$Yr","_$Wr","_$Ib","pow","_$hS","_$8r","_$Jr","_$92","_$NS","getTotalScale","setTotalScale_notForClient","getTotalOpacity","setTotalOpacity","getInterpolatedOpacity","B","_$os","_$Sb","_$NL","_$1b","getDrawDataList","_$kr","_$xo","v","_$zo","loadModel","_$to","_$er","_$PL","_$nL","_$_o","ao","_$o2","_$rr","_$eP","MTN_PREFIX_FADEIN","MTN_PREFIX_FADEOUT","p","byteLength","charCodeAt","_$S0","_$U0","_$o","_$A","_$Eo","H","_$Cr","_$hr","_$VT","transformPoints_sdk2","System","err","printf","transformPoints_sdk1","_$ts","visible","_$g0","_$8L","aj","isVisible","_$6o","_$3o","_$uL","_$KP","_$ET","_$ob","getPartsID","_$MP","_$e0","_$4S","_$Ks","au","context","_$6r","_$xP","_$3r","_$uP","_$Qo","cacheImages","tr","am","_$50","_$Ti","_$Pi","_$B","_$lP","_$bL","save","beginPath","_$Li","clip","_$ei","restore","globalAlpha","_$PS","ceil","rotate","shear","setContext","IGNORE_EXPAND","USE_CACHED_POLYGON_IMAGE","gl_cacheImage","createCanvas","DEBUG_DATA","LDGL_CANVAS_MB","getContext","drawImage","cacheCanvas","cacheContext","IGNORE_CLIP","USE_ADJUST_TRANSLATION","expandClip","clipWithTransform","_$P2","moveTo","lineTo","document","setAttribute","dumpValues","toFixed","_$TT","_$LT","_$FS","_$JS","totalScale","totalOpacity","getPartsIndex","_$x2","_$2s","_$Kr","_$sP","_$cb","_$Ts","_$fb","L2D_DEFORMER_EXTEND","_$Wb","_$yr","L2D_NO_ERROR","_$i7","_$9s","_$es","_$r7","_$07","_$b7","L2D_COLOR_BLEND_MODE_ADD","L2D_COLOR_BLEND_MODE_INTERPOLATE","_$6b","_$cT","fTexture","USE_CANVAS_TRANSFORM","PROFILE_IOS_SPEED","PROFILE_NAME","PROFILE_IOS_QUALITY","PROFILE_IOS_DEFAULT","PROFILE_ANDROID","PROFILE_DESKTOP","initProfile","isIOS","setupProfile","isAndroid","alert","getVersionStr","getVersionNo","getError","dispose","getGL","setClippingMaskBufferSize","getClippingMaskBufferSize","deleteBuffer","PI_F","_$ib","_$fr","_$LP","_$d0","_$Yo","_$JP","_$5P","_$BP","_$Qi","_$6s","_$ms","instanceNo","_$Os","_$ns","_$_s","_$_S","getTextureNo","_$ZL","_$H2","getNumPoints","_$Hb","parseInt","baseOpacity","_$72","aB","k","l","drawParamWebGL","C","V","_$eb","_$tb","startMotion","_$qS","_$w0","_$sr","M","isFinished","stopAllMotions","_$Zr","_$Gs","_$Bs","concatenate","_$eT","textures","firstDraw","anisotropyExt","maxAnisotropy","vertShader","fragShader","vertShaderOff","fragShaderOff","initShader","getExtension","MAX_TEXTURE_MAX_ANISOTROPY_EXT","disable","SCISSOR_TEST","STENCIL_TEST","DEPTH_TEST","frontFace","CW","enable","BLEND","colorMask","bindBuffer","ARRAY_BUFFER","ELEMENT_ARRAY_BUFFER","CCW","useProgram","shaderProgram","T","L","enableVertexAttribArray","a_position_Loc","vertexAttribPointer","FLOAT","activeTexture","TEXTURE1","bindTexture","TEXTURE_2D","uniform1i","s_texture0_Loc","a_texCoord_Loc","uniformMatrix4fv","u_matrix_Loc","uniform4f","u_channelFlag","u_baseColor_Loc","u_maskFlag_Loc","shaderProgramOff","a_position_Loc_Off","s_texture0_Loc_Off","a_texCoord_Loc_Off","u_clipMatrix_Loc_Off","u_matrix_Loc_Off","TEXTURE2","s_texture1_Loc_Off","u_channelFlag_Loc_Off","u_baseColor_Loc_Off","CULL_FACE","ONE","ONE_MINUS_SRC_ALPHA","ZERO","DST_COLOR","blendEquationSeparate","FUNC_ADD","blendFuncSeparate","texParameteri","TEXTURE_MAX_ANISOTROPY_EXT","TRIANGLES","UNSIGNED_SHORT","createBuffer","bufferData","DYNAMIC_DRAW","loadShaders2","getAttribLocation","getUniformLocation","disposeShader","deleteProgram","compileShader","createShader","shaderSource","getShaderParameter","COMPILE_STATUS","getShaderInfoLog","deleteShader","createProgram","VERTEX_SHADER","FRAGMENT_SHADER","attachShader","linkProgram","getProgramParameter","LINK_STATUS","getProgramInfoLog","createRenderbuffer","bindRenderbuffer","RENDERBUFFER","renderbufferStorage","RGBA4","framebufferRenderbuffer","COLOR_ATTACHMENT0","createTexture","texImage2D","RGBA","UNSIGNED_BYTE","TEXTURE_MIN_FILTER","LINEAR","TEXTURE_MAG_FILTER","TEXTURE_WRAP_S","CLAMP_TO_EDGE","TEXTURE_WRAP_T","framebufferTexture2D","renderbuffer","texture","_$R0","buffer","_$3i","_$hL","_$v0","_$S2","_$Ko","_$T","_$F","_$fP","_$3L","_$mP","_$zT","getFloat64","getFloat32","getInt32","getInt8","getInt16","_$2T","O","_$bT","_$5b","Float64Array","_$Jb","_$4b","color","_$2S","_$wS","_$kT","_$tS","SYSTEM_INFO","USER_AGENT","navigator","userAgent","isIPhone","_isIPhone","_isIPad","_isAndroid","getOSVersion","version","getOS","substring","indexOf","os","UtSystem","UtDebug","LDTransform","LDGL","Live2DModelWebGL","Live2DModelJS","Live2DMotion","MotionQueueManager","PhysicsHair","AMotion","PartsDataID","DrawDataID","BaseDataID","ParamID","L2DBaseModel","live2DModel","modelMatrix","eyeBlink","physics","pose","debugMode","alpha","accAlpha","lipSync","lipSyncValue","accelX","accelY","accelZ","dragX","dragY","startTimeMSec","mainMotionManager","L2DMotionManager","expressionManager","expressions","isTexLoaded","texCounter","getModelMatrix","setAlpha","getAlpha","isInitialized","setInitialized","isUpdating","setUpdating","getLive2DModel","setLipSync","setLipSyncValue","setAccel","getMainMotionManager","getExpressionManager","loadModelData","path","callback","pm","Live2DFramework","getPlatformManager","thisRef","loadLive2DModel","l2dModel","L2DModelMatrix","setWidth","setCenterPosition","error","loadTexture","no","name","motion","loadBytes","buf","loadExpression","L2DExpressionMotion","loadJson","loadPose","L2DPose","load","warn","loadPhysics","L2DPhysics","hitTestSimple","drawID","testX","testY","drawIndex","points","tx","invertTransformX","ty","invertTransformY","paramList","EXPRESSION_DEFAULT","TYPE_SET","TYPE_ADD","TYPE_MULT","ret","json","jsonParseFromBytes","fade_in","fade_out","params","paramNum","param","paramID","value","parseFloat","val","calcTypeInt","calc","defaultValue","def","item","L2DExpressionParam","type","timeMSec","weight","motionQueueEnt","L2DEyeBlink","nextBlinkTime","stateStartTime","blinkIntervalMsec","eyeState","EYE_STATE","closingMotionMsec","closedMotionMsec","openingMotionMsec","closeIfZero","eyeID_L","eyeID_R","calcNextBlink","random","setInterval","setEyeMotion","eyeParamValue","time","mul","dst","getScaleX","getScaleY","transformX","src","transformY","shiftX","shiftY","tr1","translateX","translateY","scaleX","scaleY","setPosition","setY","setX","centerX","centerY","setHeight","currentPriority","reservePriority","super","getCurrentPriority","getReservePriority","reserveMotion","priority","setReservePriority","updated","startMotionPrio","physicsList","physics_hair","resist","regist","mass","srcList","srcNum","typeStr","ptype","targetList","targets","targetNum","target","lastTime","lastModel","partsGroups","poseListInfo","parts_visible","poseNum","i_pose","idListInfo","group","idNum","partsGroup","i_group","partsInfo","parts","L2DPartsParam","link","linkListInfo","linkNum","i_link","linkParts","initParam","curTime","deltaTimeSec","normalizePartsOpacityGroup","copyOpacityOtherParts","initIndex","partsIndex","paramIndex","visibleParts","visibleOpacity","opacity","partsParam","EPSILON","faceTargetX","faceTargetY","faceX","faceY","faceVX","faceVY","lastTimeSec","FRAME_RATE","setPoint","MAX_V","curTimeSec","deltaTimeWeight","MAX_A","dx","dy","abs","max_v","cur_v","screenLeft","screenRight","screenTop","screenBottom","maxLeft","maxRight","maxTop","maxBottom","adjustTranslate","adjustScale","cx","cy","tr2","tr3","getScreenLeft","getScreenRight","getScreenBottom","getScreenTop","getMaxLeft","getMaxRight","getMaxBottom","getMaxTop","platformManager","setPlatformManager","PRIORITY_NONE","PRIORITY_IDLE","PRIORITY_NORMAL","PRIORITY_FORCE","MOTION_GROUP_IDLE","MOTION_GROUP_TAP_BODY","MOTION_GROUP_FLICK_HEAD","MOTION_GROUP_PINCH_IN","MOTION_GROUP_PINCH_OUT","MOTION_GROUP_SHAKE","HIT_AREA_HEAD","HIT_AREA_BODY","_innerHTML","undefined","getElementById","div","body","removeChild","newElem","innerHTML","_innerHTML2","default","newCanvasElem","superSample","style","setProperty","react","opacityDefault","position","hOffset","vOffset","dev","border","appendChild","exports","NAMES","ctx","antialias","failIfMajorPerformanceCaveat","WebGLRenderingContext","initWebGL","matrixStack","depth","currentMatrix","tmp","nextOffset","myError","offset","getMatrix","matNew","module","import","_PlatformManager","_cModel","models","PlatformManager","createModel","cModel","releaseModel","tapEvent","DEBUG_LOG","hitTest","setRandomExpression","startRandomMotion","request","XMLHttpRequest","open","responseType","onload","status","response","send","loadString","loadedImage","Image","crossOrigin","onerror","pixelStorei","UNPACK_PREMULTIPLY_ALPHA_WEBGL","UNPACK_FLIP_Y_WEBGL","TEXTURE0","LINEAR_MIPMAP_NEAREST","generateMipmap","jsonStr","bomCode","Uint8Array","JSON","parse","txt","_ModelSettingJson","modelHomeDir","modelSetting","tmpMatrix","modelSettingPath","lastIndexOf","ModelSettingJson","loadModelSetting","getModelFile","getTextureNum","getTextureFile","texPaths","getExpressionNum","expName","getExpressionName","expFilePath","getExpressionFile","getPhysicsFile","getPoseFile","getLayout","layout","getInitParamNum","getInitParamID","getInitParamValue","getInitPartsVisibleNum","getInitPartsVisibleID","getInitPartsVisibleValue","preloadMotionGroup","deleteTexture","getMotionNum","file","getMotionFile","getMotionFadeIn","getMotionFadeOut","Number","setExpression","motionName","mtn","setFadeInFadeOut","getMotionSound","soundName","snd","play","len","getHitAreaNum","getHitAreaName","getHitAreaID","NAME","ID","MODEL","TEXTURES","HIT_AREAS","PHYSICS","POSE","EXPRESSIONS","MOTION_GROUPS","SOUND","FADE_IN","FADE_OUT","LAYOUT","INIT_PARAM","INIT_PARTS_VISIBLE","VALUE","FILE","str","NaN"],"mappings":"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","file":"clL2D.0.min.js","sourcesContent":["/**\n * @description The main part of live2d-widget\n */\n\n\nimport { config } from './config/configMgr';\nimport { createElement, currWebGL, currCanvas } from './elementMgr';\nimport { UtSystem,\n UtDebug,\n LDTransform,\n LDGL,\n Live2D,\n Live2DModelWebGL,\n Live2DModelJS,\n Live2DMotion,\n MotionQueueManager,\n PhysicsHair,\n AMotion,\n PartsDataID,\n DrawDataID,\n BaseDataID,\n ParamID } from './lib/live2d.core';\nimport { L2DTargetPoint, L2DViewMatrix, L2DMatrix44 } from \"./lib/Live2DFramework\";\nimport { cManager } from \"./cManager\";\nimport { MatrixStack } from \"./utils/MatrixStack\";\nimport { cDefine } from \"./cDefine\";\n\nlet live2DMgr = new cManager();\nlet isDrawStart = false;\nlet dragMgr = null;\nlet viewMatrix = null;\nlet projMatrix = null;\nlet deviceToScreen = null;\nlet drag = false;\nlet lastMouseX = 0;\nlet lastMouseY = 0;\nlet headPos = 0.5;\nlet opacityDefault = 0.7;\nlet opacityHover = 1;\n\n\n\n/**\n * Main function of live2d-widget\n * @return {null}\n */\n\nfunction theRealInit (){\n\n createElement();\n\n dragMgr = new L2DTargetPoint();\n let ratio = config.display.height / config.display.width;\n let left = cDefine.VIEW_LOGICAL_LEFT;\n let right = cDefine.VIEW_LOGICAL_RIGHT;\n let bottom = -ratio;\n let top = ratio;\n\n viewMatrix = new L2DViewMatrix();\n\n viewMatrix.setScreenRect(left, right, bottom, top);\n\n viewMatrix.setMaxScreenRect(cDefine.VIEW_LOGICAL_MAX_LEFT,\n cDefine.VIEW_LOGICAL_MAX_RIGHT,\n cDefine.VIEW_LOGICAL_MAX_BOTTOM,\n cDefine.VIEW_LOGICAL_MAX_TOP);\n\n projMatrix = new L2DMatrix44();\n projMatrix.multScale(1, (config.display.width / config.display.height));\n\n deviceToScreen = new L2DMatrix44();\n deviceToScreen.multTranslate(-config.display.width / 2.0, -config.display.height / 2.0); // #32\n deviceToScreen.multScale(2 / config.display.width, -2 / config.display.height); // #32\n\n\n Live2D.setGL(currWebGL);\n currWebGL.clearColor(0.0, 0.0, 0.0, 0.0);\n changeModel(config.model.jsonPath);\n startDraw();\n\n}\n/**\n * Return the data URI of current frame, MINE type is image/png.\n * @return {DOMString} Which contains data URI, MINE type is image/png\n * @example\n * You can use codes below to let the user download the current frame\n *\n * let link = document.createElement('a');\n * document.body.appendChild(link);\n * link.setAttribute('type', 'hidden');\n * link.href = L2Dwidget.captureFrame();\n * link.download = 'live2d.png';\n * link.click();\n *\n * @description Thanks to @journey-ad https://github.com/journey-ad/live2d_src/commit/97356a19f93d2abd83966f032a53b5ca1109fbc3\n * @todo Seems feedback empty image only\n */\n\nfunction captureFrame(){\n return currCanvas.toDataURL();\n}\n\nfunction initEvent(){/*\n if (currCanvas.addEventListener) {\n window.addEventListener(\"click\", mouseEvent);\n window.addEventListener(\"mousedown\", mouseEvent);\n window.addEventListener(\"mousemove\", mouseEvent);\n window.addEventListener(\"mouseup\", mouseEvent);\n document.addEventListener(\"mouseleave\", mouseEvent);\n window.addEventListener(\"touchstart\", touchEvent);\n window.addEventListener(\"touchend\", touchEvent);\n window.addEventListener(\"touchmove\", touchEvent);\n }*/\n}\n\nfunction startDraw() {\n if (!isDrawStart) {\n isDrawStart = true;\n (function tick() {\n draw();\n let requestAnimationFrame =\n window.requestAnimationFrame ||\n window.mozRequestAnimationFrame ||\n window.webkitRequestAnimationFrame ||\n window.msRequestAnimationFrame;\n\n requestAnimationFrame(tick, currCanvas);\n })();\n }\n}\n\nfunction draw()\n{\n MatrixStack.reset();\n MatrixStack.loadIdentity();\n dragMgr.update();\n live2DMgr.setDrag(dragMgr.getX(), dragMgr.getY());\n\n currWebGL.clear(currWebGL.COLOR_BUFFER_BIT);\n\n MatrixStack.multMatrix(projMatrix.getArray());\n MatrixStack.multMatrix(viewMatrix.getArray());\n MatrixStack.push();\n\n for (let i = 0; i < live2DMgr.numModels(); i++)\n {\n let model = live2DMgr.getModel(i);\n\n if(model == null) return;\n\n if (model.initialized && !model.updating)\n {\n model.update();\n model.draw(currWebGL);\n }\n }\n MatrixStack.pop();\n}\n\nfunction changeModel(modelurl) // 更换模型\n{\n live2DMgr.reloadFlg = true;\n live2DMgr.count++; // 现在仍有多模型支持,稍后可以精简\n live2DMgr.changeModel(currWebGL, modelurl);\n}\n\nfunction modelScaling(scale) {\n viewMatrix.adjustScale(0, 0, scale);\n}\n/*\nfunction transformRange(center, transform, range)\n{\n let a = {\n x: transform.x - center.x,\n y: transform.y - center.y\n }\n let r = Math.sqrt(Math.pow(a.x,2) + Math.pow(a.y,2));\n if (r > range) {\n a = {\n x: a.x / r * range + center.x,\n y: a.y / r * range + center.y\n };\n return a;\n } else {\n return transform;\n }\n}\n*/\nfunction dot(A,B)\n{\n return A.x * B.x + A.y * B.y;\n}\n\nfunction normalize(x,y)\n{\n let length = Math.sqrt(x * x + y * y)\n return {\n x: x / length,\n y: y / length\n }\n}\n\nfunction transformRect(center, transform, rect)\n{\n if (transform.x < rect.left + rect.width && transform.y < rect.top + rect.height &&\n transform.x > rect.left && transform.y > rect.top) return transform;\n let Len_X = center.x - transform.x;\n let Len_Y = center.y - transform.y;\n\n function angle(Len_X, Len_Y)\n {\n return Math.acos(dot({\n x: 0,\n y: 1\n }, normalize(Len_X, Len_Y))) * 180 / Math.PI\n }\n\n let angleTarget = angle(Len_X, Len_Y);\n if (transform.x < center.x) angleTarget = 360 - angleTarget;\n let angleLeftTop = 360 - angle(rect.left - center.x, (rect.top - center.y) * -1);\n let angleLeftBottom = 360 - angle(rect.left - center.x, (rect.top + rect.height - center.y) * -1);\n let angleRightTop = angle(rect.left + rect.width - center.x, (rect.top - center.y) * -1);\n let angleRightBottom = angle(rect.left + rect.width - center.x, (rect.top + rect.height - center.y) * -1);\n let scale = Len_Y / Len_X;\n let res = {};\n\n if (angleTarget < angleRightTop) {\n let y3 = rect.top - center.y;\n let x3 = y3 / scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n } else if(angleTarget < angleRightBottom) {\n let x3 = rect.left + rect.width - center.x;\n let y3 = x3 * scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n } else if (angleTarget < angleLeftBottom) {\n let y3 = rect.top + rect.height - center.y;\n let x3 = y3 / scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n } else if (angleTarget < angleLeftTop) {\n let x3 = center.x - rect.left;\n let y3 = x3 * scale;\n res = {\n y: center.y - y3,\n x: center.x - x3\n }\n } else {\n let y3 = rect.top - center.y;\n let x3 = y3 / scale;\n res = {\n y: center.y + y3,\n x: center.x + x3\n }\n }\n\n return res;\n}\n\nfunction modelTurnHead(event)\n{\n drag = true;\n\n let rect = currCanvas.getBoundingClientRect();\n\n let sx = transformScreenX(event.clientX - rect.left);\n let sy = transformScreenY(event.clientY - rect.top);\n let target = transformRect({\n x: rect.left + rect.width / 2,\n y: rect.top + rect.height * headPos\n }, {\n x: event.clientX,\n y: event.clientY\n }, rect)\n let vx = transformViewX(target.x - rect.left);\n let vy = transformViewY(target.y - rect.top);\n\n if (cDefine.DEBUG_MOUSE_LOG)\n console.log(\"modelTurnHead onMouseMove device( x:\" + event.clientX + \" y:\" + event.clientY + \" ) view( x:\" + vx + \" y:\" + vy + \")\");\n\n lastMouseX = sx;\n lastMouseY = sy;\n\n dragMgr.setPoint(vx, vy);\n}\n\nfunction modelTapEvent(event)\n{\n drag = true;\n\n let rect = currCanvas.getBoundingClientRect();\n\n let sx = transformScreenX(event.clientX - rect.left);\n let sy = transformScreenY(event.clientY - rect.top);\n let target = transformRect({\n x: rect.left + rect.width / 2,\n y: rect.top + rect.height * headPos\n }, {\n x: event.clientX,\n y: event.clientY\n }, rect)\n let vx = transformViewX(target.x - rect.left);\n let vy = transformViewY(target.y - rect.top);\n\n if (cDefine.DEBUG_MOUSE_LOG)\n console.log(\"modelTapEvent onMouseDown device( x:\" + event.clientX + \" y:\" + event.clientY + \" ) view( x:\" + vx + \" y:\" + vy + \")\");\n\n lastMouseX = sx;\n lastMouseY = sy;\n\n live2DMgr.tapEvent(vx, vy);\n}\n\nfunction followPointer(event)\n{\n let rect = currCanvas.getBoundingClientRect();\n\n let sx = transformScreenX(event.clientX - rect.left);\n let sy = transformScreenY(event.clientY - rect.top);\n\n // log but seems ok\n // console.log(\"ecx=\" + event.clientX + \" ecy=\" + event.clientY + \" sx=\" + sx + \" sy=\" + sy);\n\n let target = transformRect({// seems ok here\n x: rect.left + rect.width / 2,\n y: rect.top + rect.height * headPos\n }, {\n x: event.clientX,\n y: event.clientY\n }, rect)\n let vx = transformViewX(target.x - rect.left);\n let vy = transformViewY(target.y - rect.top);\n\n if (cDefine.DEBUG_MOUSE_LOG)\n console.log(\"followPointer onMouseMove device( x:\" + event.clientX + \" y:\" + event.clientY + \" ) view( x:\" + vx + \" y:\" + vy + \")\");\n\n if (drag)\n {\n lastMouseX = sx;\n lastMouseY = sy;\n dragMgr.setPoint(vx, vy);\n }\n}\n\nfunction lookFront()\n{\n if (drag) {\n drag = false;\n }\n dragMgr.setPoint(0, 0);\n}\n\nfunction mouseEvent(e)\n{\n //e.preventDefault();\n if (e.type == \"mousedown\") {\n modelTapEvent(e);\n } else if (e.type == \"mousemove\") {\n modelTurnHead(e);\n } else if (e.type == \"mouseup\") {\n if(\"button\" in e && e.button != 0) return;\n // lookFront();\n } else if (e.type == \"mouseleave\") {\n lookFront();\n }\n}\n\nfunction touchEvent(e)\n{\n var touch = e.touches[0];\n if (e.type == \"touchstart\") {\n if (e.touches.length == 1) modelTapEvent(touch);\n // onClick(touch);\n } else if (e.type == \"touchmove\") {\n followPointer(touch);\n } else if (e.type == \"touchend\") {\n lookFront();\n }\n}\n\nfunction transformViewX(deviceX)\n{\n var screenX = deviceToScreen.transformX(deviceX);\n return viewMatrix.invertTransformX(screenX);\n}\n\n\nfunction transformViewY(deviceY)\n{\n var screenY = deviceToScreen.transformY(deviceY);\n return viewMatrix.invertTransformY(screenY);\n}\n\n\nfunction transformScreenX(deviceX)\n{\n return deviceToScreen.transformX(deviceX);\n}\n\n\nfunction transformScreenY(deviceY)\n{\n return deviceToScreen.transformY(deviceY);\n}\n\nexport{\n theRealInit,\n captureFrame,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/cLive2DApp.js","/**\n * ============================================================\n * Live2D Cubism SDK for WebGL Version 2.1.00_1\n *\n * (c) Live2D Inc.\n * ============================================================\n *\n * This is a Software Development Kit (SDK) for developing Live2D-Cubism-powered applications on WebGL.\n * The SDK contains proprietary libraries and sample projects.\n * Read this document when using the SDK.\n *\n * ------------------------------\n * License\n * ------------------------------\n * Read Live2D License Agreement\n * for business\n * http://live2d.com/en/sdk_license_cubism3\n *\n * for indie\n * http://live2d.com/en/sdk_license_cubism_indie\n *\n * After agree and accept Live2D SDK License Agreement, the content in the following folders may be placed in the server which you control.\n * SDK\n * ├─framework\n * │ Live2DFramework.js\n * │\n * ├─lib\n * │ live2d.min.js\n * │\n * └─sample\n */\n\n// Changes have been done and intention:\n// 1. Pretty the code using Chrome for easy editing.\n// 2. Use ES6's module system to prevent functions from exposing to 'window' and easy compatibility for ES6.\n\n\nvar j = true;\nfunction aa() {\n if (j) {\n return;\n }\n this._$MT = null;\n this._$5S = null;\n this._$NP = 0;\n aa._$42++;\n this._$5S = new y(this);\n}\naa._$0s = 1;\naa._$4s = 2;\naa._$42 = 0;\naa._$62 = function(aQ, aU) {\n try {\n if (aU instanceof ArrayBuffer) {\n aU = new DataView(aU);\n }\n if (!(aU instanceof DataView)) {\n throw new J(\"_$SS#loadModel(b) / b _$x be DataView or ArrayBuffer\");\n }\n var aS = new K(aU);\n var aM = aS._$ST();\n var aK = aS._$ST();\n var aJ = aS._$ST();\n var aN;\n if (aM == 109 && aK == 111 && aJ == 99) {\n aN = aS._$ST();\n } else {\n throw new J(\"_$gi _$C _$li , _$Q0 _$P0.\");\n }\n aS._$gr(aN);\n if (aN > ay._$T7) {\n aQ._$NP |= aa._$4s;\n var aR = ay._$T7;\n var aI = \"_$gi _$C _$li , _$n0 _$_ version _$li ( SDK : \" + aR + \" < _$f0 : \" + aN + \" )@_$SS#loadModel()\\n\";\n throw new J(aI);\n }\n var aL = aS._$nP();\n if (aN >= ay._$s7) {\n var aH = aS._$9T();\n var aT = aS._$9T();\n if (aH != -30584 || aT != -30584) {\n aQ._$NP |= aa._$0s;\n throw new J(\"_$gi _$C _$li , _$0 _$6 _$Ui.\");\n }\n }\n aQ._$KS(aL);\n var aP = aQ.getModelContext();\n aP.setDrawParam(aQ.getDrawParam());\n aP.init();\n } catch (aO) {\n q._$Rb(aO);\n }\n}\n;\naa.prototype._$KS = function(aH) {\n this._$MT = aH;\n}\n;\naa.prototype.getModelImpl = function() {\n if (this._$MT == null) {\n this._$MT = new w();\n this._$MT._$zP();\n }\n return this._$MT;\n}\n;\naa.prototype.getCanvasWidth = function() {\n if (this._$MT == null) {\n return 0;\n }\n return this._$MT.getCanvasWidth();\n}\n;\naa.prototype.getCanvasHeight = function() {\n if (this._$MT == null) {\n return 0;\n }\n return this._$MT.getCanvasHeight();\n}\n;\naa.prototype.getParamFloat = function(aH) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n return this._$5S.getParamFloat(aH);\n}\n;\naa.prototype.setParamFloat = function(aH, aJ, aI) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n if (arguments.length < 3) {\n aI = 1;\n }\n this._$5S.setParamFloat(aH, this._$5S.getParamFloat(aH) * (1 - aI) + aJ * aI);\n}\n;\naa.prototype.addToParamFloat = function(aH, aJ, aI) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n if (arguments.length < 3) {\n aI = 1;\n }\n this._$5S.setParamFloat(aH, this._$5S.getParamFloat(aH) + aJ * aI);\n}\n;\naa.prototype.multParamFloat = function(aH, aJ, aI) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getParamIndex(z.getID(aH));\n }\n if (arguments.length < 3) {\n aI = 1;\n }\n this._$5S.setParamFloat(aH, this._$5S.getParamFloat(aH) * (1 + (aJ - 1) * aI));\n}\n;\naa.prototype.getParamIndex = function(aH) {\n return this._$5S.getParamIndex(z.getID(aH));\n}\n;\naa.prototype.loadParam = function() {\n this._$5S.loadParam();\n}\n;\naa.prototype.saveParam = function() {\n this._$5S.saveParam();\n}\n;\naa.prototype.init = function() {\n this._$5S.init();\n}\n;\naa.prototype.update = function() {\n this._$5S.update();\n}\n;\naa.prototype._$Rs = function() {\n q._$li(\"_$60 _$PT _$Rs()\");\n return -1;\n}\n;\naa.prototype._$Ds = function(aH) {\n q._$li(\"_$60 _$PT _$SS#_$Ds() \\n\");\n}\n;\naa.prototype._$K2 = function() {}\n;\naa.prototype.draw = function() {}\n;\naa.prototype.getModelContext = function() {\n return this._$5S;\n}\n;\naa.prototype._$s2 = function() {\n return this._$NP;\n}\n;\naa.prototype._$P7 = function(aK, aR, aH, a0) {\n var aU = -1;\n var aY = 0;\n var aM = this;\n var aJ = 0.5;\n var aI = 0.15;\n var aX = true;\n if (aH == 0) {\n for (var aV = 0; aV < aK.length; aV++) {\n var aP = aK[aV];\n var aO = aR[aV];\n var aS = (aM.getParamFloat(aP) != 0);\n aM.setPartsOpacity(aO, (aS ? 1 : 0));\n }\n return;\n } else {\n if (aK.length == 1) {\n var aP = aK[0];\n var aT = (aM.getParamFloat(aP) != 0);\n var aO = aR[0];\n var aQ = aM.getPartsOpacity(aO);\n var aW = aH / a0;\n if (aT) {\n aQ += aW;\n if (aQ > 1) {\n aQ = 1;\n }\n } else {\n aQ -= aW;\n if (aQ < 0) {\n aQ = 0;\n }\n }\n aM.setPartsOpacity(aO, aQ);\n } else {\n for (var aV = 0; aV < aK.length; aV++) {\n var aP = aK[aV];\n var aS = (aM.getParamFloat(aP) != 0);\n if (aS) {\n if (aU >= 0) {\n break;\n }\n aU = aV;\n var aO = aR[aV];\n aY = aM.getPartsOpacity(aO);\n aY += aH / a0;\n if (aY > 1) {\n aY = 1;\n }\n }\n }\n if (aU < 0) {\n console.log(\"No _$wi _$q0/ _$U default[%s]\", aK[0]);\n aU = 0;\n aY = 1;\n aM.loadParam();\n aM.setParamFloat(aK[aU], aY);\n aM.saveParam();\n }\n for (var aV = 0; aV < aK.length; aV++) {\n var aO = aR[aV];\n if (aU == aV) {\n aM.setPartsOpacity(aO, aY);\n } else {\n var aL = aM.getPartsOpacity(aO);\n var aZ;\n if (aY < aJ) {\n aZ = aY * (aJ - 1) / aJ + 1;\n } else {\n aZ = (1 - aY) * aJ / (1 - aJ);\n }\n if (aX) {\n var aN = (1 - aZ) * (1 - aY);\n if (aN > aI) {\n aZ = 1 - aI / (1 - aY);\n }\n }\n if (aL > aZ) {\n aL = aZ;\n }\n aM.setPartsOpacity(aO, aL);\n }\n }\n }\n }\n}\n;\naa.prototype.setPartsOpacity = function(aI, aH) {\n if (typeof aI != \"number\") {\n aI = this._$5S.getPartsDataIndex(i.getID(aI));\n }\n this._$5S.setPartsOpacity(aI, aH);\n}\n;\naa.prototype.getPartsDataIndex = function(aH) {\n if (!(aH instanceof i)) {\n aH = i.getID(aH);\n }\n return this._$5S.getPartsDataIndex(aH);\n}\n;\naa.prototype.getPartsOpacity = function(aH) {\n if (typeof aH != \"number\") {\n aH = this._$5S.getPartsDataIndex(i.getID(aH));\n }\n if (aH < 0) {\n return 0;\n }\n return this._$5S.getPartsOpacity(aH);\n}\n;\naa.prototype.getDrawParam = function() {}\n;\naa.prototype.getDrawDataIndex = function(aH) {\n return this._$5S.getDrawDataIndex(Z.getID(aH));\n}\n;\naa.prototype.getDrawData = function(aH) {\n return this._$5S.getDrawData(aH);\n}\n;\naa.prototype.getTransformedPoints = function(aH) {\n var aI = this._$5S._$C2(aH);\n if (aI instanceof ag) {\n return (aI).getTransformedPoints();\n }\n return null;\n}\n;\naa.prototype.getIndexArray = function(aI) {\n if (aI < 0 || aI >= this._$5S._$aS.length) {\n return null;\n }\n var aH = this._$5S._$aS[aI];\n if (aH != null && aH.getType() == a._$wb) {\n if (aH instanceof b) {\n return aH.getIndexArray();\n }\n }\n return null;\n}\n;\nfunction W(aJ) {\n if (j) {\n return;\n }\n this.clipContextList = new Array();\n this.glcontext = aJ.gl;\n this.dp_webgl = aJ;\n this.curFrameNo = 0;\n this.firstError_clipInNotUpdate = true;\n this.colorBuffer = 0;\n this.isInitGLFBFunc = false;\n this.tmpBoundsOnModel = new av();\n if (Q.glContext.length > Q.frameBuffers.length) {\n this.curFrameNo = this.getMaskRenderTexture();\n } else {}\n this.tmpModelToViewMatrix = new ac();\n this.tmpMatrix2 = new ac();\n this.tmpMatrixForMask = new ac();\n this.tmpMatrixForDraw = new ac();\n this.CHANNEL_COLORS = new Array();\n var aI = new o();\n aI = new o();\n aI.r = 0;\n aI.g = 0;\n aI.b = 0;\n aI.a = 1;\n this.CHANNEL_COLORS.push(aI);\n aI = new o();\n aI.r = 1;\n aI.g = 0;\n aI.b = 0;\n aI.a = 0;\n this.CHANNEL_COLORS.push(aI);\n aI = new o();\n aI.r = 0;\n aI.g = 1;\n aI.b = 0;\n aI.a = 0;\n this.CHANNEL_COLORS.push(aI);\n aI = new o();\n aI.r = 0;\n aI.g = 0;\n aI.b = 1;\n aI.a = 0;\n this.CHANNEL_COLORS.push(aI);\n for (var aH = 0; aH < this.CHANNEL_COLORS.length; aH++) {\n this.dp_webgl.setChannelFlagAsColor(aH, this.CHANNEL_COLORS[aH]);\n }\n}\nW.CHANNEL_COUNT = 4;\nW.RENDER_TEXTURE_USE_MIPMAP = false;\nW.NOT_USED_FRAME = -100;\nW.prototype._$L7 = function() {\n if (this.tmpModelToViewMatrix) {\n this.tmpModelToViewMatrix = null;\n }\n if (this.tmpMatrix2) {\n this.tmpMatrix2 = null;\n }\n if (this.tmpMatrixForMask) {\n this.tmpMatrixForMask = null;\n }\n if (this.tmpMatrixForDraw) {\n this.tmpMatrixForDraw = null;\n }\n if (this.tmpBoundsOnModel) {\n this.tmpBoundsOnModel = null;\n }\n if (this.CHANNEL_COLORS) {\n for (var aH = this.CHANNEL_COLORS.length - 1; aH >= 0; --aH) {\n this.CHANNEL_COLORS.splice(aH, 1);\n }\n this.CHANNEL_COLORS = [];\n }\n this.releaseShader();\n}\n;\nW.prototype.releaseShader = function() {\n var aI = Q.frameBuffers.length;\n for (var aH = 0; aH < aI; aH++) {\n this.gl.deleteFramebuffer(Q.frameBuffers[aH].framebuffer);\n }\n Q.frameBuffers = [];\n Q.glContext = [];\n}\n;\nW.prototype.init = function(aO, aN, aL) {\n for (var aM = 0; aM < aN.length; aM++) {\n var aH = aN[aM].getClipIDList();\n if (aH == null) {\n continue;\n }\n var aJ = this.findSameClip(aH);\n if (aJ == null) {\n aJ = new U(this,aO,aH);\n this.clipContextList.push(aJ);\n }\n var aI = aN[aM].getDrawDataID();\n var aK = aO.getDrawDataIndex(aI);\n aJ.addClippedDrawData(aI, aK);\n var aP = aL[aM];\n aP.clipBufPre_clipContext = aJ;\n }\n}\n;\nW.prototype.getMaskRenderTexture = function() {\n var aH = null;\n aH = this.dp_webgl.createFramebuffer();\n Q.frameBuffers[this.dp_webgl.glno] = aH;\n return this.dp_webgl.glno;\n}\n;\nW.prototype.setupClip = function(a1, aQ) {\n var aK = 0;\n for (var aO = 0; aO < this.clipContextList.length; aO++) {\n var aP = this.clipContextList[aO];\n this.calcClippedDrawTotalBounds(a1, aP);\n if (aP.isUsing) {\n aK++;\n }\n }\n if (aK > 0) {\n var aM = aQ.gl.getParameter(aQ.gl.FRAMEBUFFER_BINDING);\n var aW = new Array(4);\n aW[0] = 0;\n aW[1] = 0;\n aW[2] = aQ.gl.canvas.width;\n aW[3] = aQ.gl.canvas.height;\n aQ.gl.viewport(0, 0, Q.clippingMaskBufferSize, Q.clippingMaskBufferSize);\n this.setupLayoutBounds(aK);\n aQ.gl.bindFramebuffer(aQ.gl.FRAMEBUFFER, Q.frameBuffers[this.curFrameNo].framebuffer);\n aQ.gl.clearColor(0, 0, 0, 0);\n aQ.gl.clear(aQ.gl.COLOR_BUFFER_BIT);\n for (var aO = 0; aO < this.clipContextList.length; aO++) {\n var aP = this.clipContextList[aO];\n var aT = aP.allClippedDrawRect;\n var aN = aP.layoutChannelNo;\n var aV = aP.layoutBounds;\n var aJ = 0.05;\n this.tmpBoundsOnModel._$jL(aT);\n this.tmpBoundsOnModel.expand(aT.width * aJ, aT.height * aJ);\n var aZ = aV.width / this.tmpBoundsOnModel.width;\n var aY = aV.height / this.tmpBoundsOnModel.height;\n this.tmpMatrix2.identity();\n this.tmpMatrix2.translate(-1, -1, 0);\n this.tmpMatrix2.scale(2, 2, 1);\n this.tmpMatrix2.translate(aV.x, aV.y, 0);\n this.tmpMatrix2.scale(aZ, aY, 1);\n this.tmpMatrix2.translate(-this.tmpBoundsOnModel.x, -this.tmpBoundsOnModel.y, 0);\n this.tmpMatrixForMask.setMatrix(this.tmpMatrix2.m);\n this.tmpMatrix2.identity();\n this.tmpMatrix2.translate(aV.x, aV.y, 0);\n this.tmpMatrix2.scale(aZ, aY, 1);\n this.tmpMatrix2.translate(-this.tmpBoundsOnModel.x, -this.tmpBoundsOnModel.y, 0);\n this.tmpMatrixForDraw.setMatrix(this.tmpMatrix2.m);\n var aH = this.tmpMatrixForMask.getArray();\n for (var aX = 0; aX < 16; aX++) {\n aP.matrixForMask[aX] = aH[aX];\n }\n var a0 = this.tmpMatrixForDraw.getArray();\n for (var aX = 0; aX < 16; aX++) {\n aP.matrixForDraw[aX] = a0[aX];\n }\n var aS = aP.clippingMaskDrawIndexList.length;\n for (var aU = 0; aU < aS; aU++) {\n var aR = aP.clippingMaskDrawIndexList[aU];\n var aI = a1.getDrawData(aR);\n var aL = a1._$C2(aR);\n aQ.setClipBufPre_clipContextForMask(aP);\n aI.draw(aQ, a1, aL);\n }\n }\n aQ.gl.bindFramebuffer(aQ.gl.FRAMEBUFFER, aM);\n aQ.setClipBufPre_clipContextForMask(null);\n aQ.gl.viewport(aW[0], aW[1], aW[2], aW[3]);\n }\n}\n;\nW.prototype.getColorBuffer = function() {\n return this.colorBuffer;\n}\n;\nW.prototype.findSameClip = function(aK) {\n for (var aN = 0; aN < this.clipContextList.length; aN++) {\n var aO = this.clipContextList[aN];\n var aH = aO.clipIDList.length;\n if (aH != aK.length) {\n continue;\n }\n var aI = 0;\n for (var aM = 0; aM < aH; aM++) {\n var aL = aO.clipIDList[aM];\n for (var aJ = 0; aJ < aH; aJ++) {\n if (aK[aJ] == aL) {\n aI++;\n break;\n }\n }\n }\n if (aI == aH) {\n return aO;\n }\n }\n return null;\n}\n;\nW.prototype.calcClippedDrawTotalBounds = function(a6, aV) {\n var aU = a6._$Ri.getModelImpl().getCanvasWidth();\n var a5 = a6._$Ri.getModelImpl().getCanvasHeight();\n var aJ = aU > a5 ? aU : a5;\n var aT = aJ;\n var aR = aJ;\n var aS = 0;\n var aP = 0;\n var aL = aV.clippedDrawContextList.length;\n for (var aM = 0; aM < aL; aM++) {\n var aW = aV.clippedDrawContextList[aM];\n var aN = aW.drawDataIndex;\n var aK = a6._$C2(aN);\n if (aK._$yo()) {\n var aX = aK.getTransformedPoints();\n var a4 = aX.length;\n var aI = [];\n var aH = [];\n var aO = 0;\n for (var a3 = aw._$i2; a3 < a4; a3 += aw._$No) {\n aI[aO] = aX[a3];\n aH[aO] = aX[a3 + 1];\n aO++;\n }\n var a2 = Math.min.apply(null, aI);\n var a1 = Math.min.apply(null, aH);\n var a0 = Math.max.apply(null, aI);\n var aZ = Math.max.apply(null, aH);\n if (a2 < aT) {\n aT = a2;\n }\n if (a1 < aR) {\n aR = a1;\n }\n if (a0 > aS) {\n aS = a0;\n }\n if (aZ > aP) {\n aP = aZ;\n }\n }\n }\n if (aT == aJ) {\n aV.allClippedDrawRect.x = 0;\n aV.allClippedDrawRect.y = 0;\n aV.allClippedDrawRect.width = 0;\n aV.allClippedDrawRect.height = 0;\n aV.isUsing = false;\n } else {\n var aQ = aS - aT;\n var aY = aP - aR;\n aV.allClippedDrawRect.x = aT;\n aV.allClippedDrawRect.y = aR;\n aV.allClippedDrawRect.width = aQ;\n aV.allClippedDrawRect.height = aY;\n aV.isUsing = true;\n }\n}\n;\nW.prototype.setupLayoutBounds = function(aQ) {\n var aI = aQ / W.CHANNEL_COUNT;\n var aP = aQ % W.CHANNEL_COUNT;\n aI = ~~aI;\n aP = ~~aP;\n var aH = 0;\n for (var aJ = 0; aJ < W.CHANNEL_COUNT; aJ++) {\n var aM = aI + (aJ < aP ? 1 : 0);\n if (aM == 0) {} else {\n if (aM == 1) {\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = 0;\n aL.layoutBounds.y = 0;\n aL.layoutBounds.width = 1;\n aL.layoutBounds.height = 1;\n } else {\n if (aM == 2) {\n for (var aO = 0; aO < aM; aO++) {\n var aN = aO % 2;\n var aK = 0;\n aN = ~~aN;\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = aN * 0.5;\n aL.layoutBounds.y = 0;\n aL.layoutBounds.width = 0.5;\n aL.layoutBounds.height = 1;\n }\n } else {\n if (aM <= 4) {\n for (var aO = 0; aO < aM; aO++) {\n var aN = aO % 2;\n var aK = aO / 2;\n aN = ~~aN;\n aK = ~~aK;\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = aN * 0.5;\n aL.layoutBounds.y = aK * 0.5;\n aL.layoutBounds.width = 0.5;\n aL.layoutBounds.height = 0.5;\n }\n } else {\n if (aM <= 9) {\n for (var aO = 0; aO < aM; aO++) {\n var aN = aO % 3;\n var aK = aO / 3;\n aN = ~~aN;\n aK = ~~aK;\n var aL = this.clipContextList[aH++];\n aL.layoutChannelNo = aJ;\n aL.layoutBounds.x = aN / 3;\n aL.layoutBounds.y = aK / 3;\n aL.layoutBounds.width = 1 / 3;\n aL.layoutBounds.height = 1 / 3;\n }\n } else {\n q._$li(\"_$6 _$0P mask count : %d\", aM);\n }\n }\n }\n }\n }\n }\n}\n;\nfunction U(aH, aK, aI) {\n this.clipIDList = new Array();\n this.clipIDList = aI;\n this.clippingMaskDrawIndexList = new Array();\n for (var aJ = 0; aJ < aI.length; aJ++) {\n this.clippingMaskDrawIndexList.push(aK.getDrawDataIndex(aI[aJ]));\n }\n this.clippedDrawContextList = new Array();\n this.isUsing = true;\n this.layoutChannelNo = 0;\n this.layoutBounds = new av();\n this.allClippedDrawRect = new av();\n this.matrixForMask = new Float32Array(16);\n this.matrixForDraw = new Float32Array(16);\n this.owner = aH;\n}\nU.prototype.addClippedDrawData = function(aJ, aI) {\n var aH = new R(aJ,aI);\n this.clippedDrawContextList.push(aH);\n}\n;\nfunction R(aI, aH) {\n this._$gP = aI;\n this.drawDataIndex = aH;\n}\nfunction I() {\n if (j) {\n return;\n }\n this.color = null;\n}\nfunction ah() {\n if (j) {\n return;\n }\n this._$dP = null;\n this._$eo = null;\n this._$V0 = null;\n this._$dP = 1000;\n this._$eo = 1000;\n this._$V0 = 1;\n this._$a0();\n}\nah._$JT = function(aP, aN, aO) {\n var aQ = aP / aN;\n var a1 = aO / aN;\n var aU = a1;\n var aZ = 1 / 3;\n var aR = 2 / 3;\n var a0 = 1 - (1 - a1) * (1 - a1);\n var a2 = 1 - (1 - aU) * (1 - aU);\n var aM = 0;\n var aL = ((1 - a1) * aZ) * a0 + (aU * aR + (1 - aU) * aZ) * (1 - a0);\n var aK = (aU + (1 - aU) * aR) * a2 + (a1 * aZ + (1 - a1) * aR) * (1 - a2);\n var aJ = 1;\n var aY = aJ - 3 * aK + 3 * aL - aM;\n var aX = 3 * aK - 6 * aL + 3 * aM;\n var aW = 3 * aL - 3 * aM;\n var aV = aM;\n if (aQ <= 0) {\n return 0;\n } else {\n if (aQ >= 1) {\n return 1;\n }\n }\n var aS = aQ;\n var aI = aS * aS;\n var aH = aS * aI;\n var aT = aY * aH + aX * aI + aW * aS + aV;\n return aT;\n}\n;\nah.prototype._$a0 = function() {}\n;\nah.prototype.setFadeIn = function(aH) {\n this._$dP = aH;\n}\n;\nah.prototype.setFadeOut = function(aH) {\n this._$eo = aH;\n}\n;\nah.prototype._$pT = function(aH) {\n this._$V0 = aH;\n}\n;\nah.prototype.getFadeOut = function() {\n return this._$eo;\n}\n;\nah.prototype._$4T = function() {\n return this._$eo;\n}\n;\nah.prototype._$mT = function() {\n return this._$V0;\n}\n;\nah.prototype.getDurationMSec = function() {\n return -1;\n}\n;\nah.prototype.getLoopDurationMSec = function() {\n return -1;\n}\n;\nah.prototype.updateParam = function(aJ, aN) {\n if (!aN._$AT || aN._$9L) {\n return;\n }\n var aL = P.getUserTimeMSec();\n if (aN._$z2 < 0) {\n aN._$z2 = aL;\n aN._$bs = aL;\n var aM = this.getDurationMSec();\n if (aN._$Do < 0) {\n aN._$Do = (aM <= 0) ? -1 : aN._$z2 + aM;\n }\n }\n var aI = this._$V0;\n var aH = (this._$dP == 0) ? 1 : A._$r2(((aL - aN._$bs) / (this._$dP)));\n var aK = (this._$eo == 0 || aN._$Do < 0) ? 1 : A._$r2(((aN._$Do - aL) / (this._$eo)));\n aI = aI * aH * aK;\n if (!((0 <= aI && aI <= 1))) {\n console.log(\"### assert!! ### \");\n }\n this.updateParamExe(aJ, aL, aI, aN);\n if (aN._$Do > 0 && aN._$Do < aL) {\n aN._$9L = true;\n }\n}\n;\nah.prototype.updateParamExe = function(aH, aI, aJ, aK) {}\n;\nfunction q() {}\nq._$8s = 0;\nq._$fT = new Object();\nq.start = function(aI) {\n var aH = q._$fT[aI];\n if (aH == null) {\n aH = new af();\n aH._$r = aI;\n q._$fT[aI] = aH;\n }\n aH._$0S = P.getSystemTimeMSec();\n}\n;\nq.dump = function(aJ) {\n var aH = q._$fT[aJ];\n if (aH != null) {\n var aI = P.getSystemTimeMSec();\n var aK = aI - aH._$0S;\n console.log(aJ + \" : \" + aK + \"ms\");\n return aK;\n } else {\n return -1;\n }\n}\n;\nq.end = function(aJ) {\n var aH = q._$fT[aJ];\n if (aH != null) {\n var aI = P.getSystemTimeMSec();\n return aI - aH._$0S;\n } else {\n return -1;\n }\n}\n;\nq._$li = function(aI, aH) {\n console.log(\"_$li : \" + aI + \"\\n\", aH);\n}\n;\nq._$Ji = function(aI, aH) {\n console.log(aI, aH);\n}\n;\nq._$dL = function(aI, aH) {\n console.log(aI, aH);\n console.log(\"\\n\");\n}\n;\nq._$KL = function(aJ, aI) {\n for (var aH = 0; aH < aI; aH++) {\n if (aH % 16 == 0 && aH > 0) {\n console.log(\"\\n\");\n } else {\n if (aH % 8 == 0 && aH > 0) {\n console.log(\" \");\n }\n }\n console.log(\"%02X \", (aJ[aH] & 255));\n }\n console.log(\"\\n\");\n}\n;\nq._$nr = function(aL, aI, aK) {\n console.log(\"%s\\n\", aL);\n var aH = aI.length;\n for (var aJ = 0; aJ < aH; ++aJ) {\n console.log(\"%5d\", aI[aJ]);\n console.log(\"%s\\n\", aK);\n console.log(\",\");\n }\n console.log(\"\\n\");\n}\n;\nq._$Rb = function(aH) {\n console.log(\"dump exception : \" + aH);\n console.log(\"stack :: \" + aH.stack);\n}\n;\nfunction af() {\n this._$r = null;\n this._$0S = null;\n}\nfunction F() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n this.width = null;\n this.height = null;\n}\nF.prototype._$8P = function() {\n return 0.5 * (this.x + this.x + this.width);\n}\n;\nF.prototype._$6P = function() {\n return 0.5 * (this.y + this.y + this.height);\n}\n;\nF.prototype._$EL = function() {\n return this.x + this.width;\n}\n;\nF.prototype._$5T = function() {\n return this.y + this.height;\n}\n;\nF.prototype._$jL = function(aI, aK, aJ, aH) {\n this.x = aI;\n this.y = aK;\n this.width = aJ;\n this.height = aH;\n}\n;\nF.prototype._$jL = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n this.width = aH.width;\n this.height = aH.height;\n}\n;\nfunction i(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\ni.prototype = new ak();\ni._$tP = new Object();\ni._$27 = function() {\n i._$tP.clear();\n}\n;\ni.getID = function(aH) {\n var aI = i._$tP[aH];\n if (aI == null) {\n aI = new i(aH);\n i._$tP[aH] = aI;\n }\n return aI;\n}\n;\ni.prototype._$3s = function() {\n return new i();\n}\n;\nfunction S() {}\nfunction z(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\nz.prototype = new ak();\nz._$tP = new Object();\nz._$27 = function() {\n z._$tP.clear();\n}\n;\nz.getID = function(aH) {\n var aI = z._$tP[aH];\n if (aI == null) {\n aI = new z(aH);\n z._$tP[aH] = aI;\n }\n return aI;\n}\n;\nz.prototype._$3s = function() {\n return new z();\n}\n;\nfunction w() {\n if (j) {\n return;\n }\n this._$vo = null;\n this._$F2 = null;\n this._$ao = 400;\n this._$1S = 400;\n w._$42++;\n}\nw._$42 = 0;\nw.prototype._$zP = function() {\n if (this._$vo == null) {\n this._$vo = new an();\n }\n if (this._$F2 == null) {\n this._$F2 = new Array();\n }\n}\n;\nw.prototype.getCanvasWidth = function() {\n return this._$ao;\n}\n;\nw.prototype.getCanvasHeight = function() {\n return this._$1S;\n}\n;\nw.prototype._$F0 = function(aH) {\n this._$vo = aH._$nP();\n this._$F2 = aH._$nP();\n this._$ao = aH._$6L();\n this._$1S = aH._$6L();\n}\n;\nw.prototype._$6S = function(aH) {\n this._$F2.push(aH);\n}\n;\nw.prototype._$Xr = function() {\n return this._$F2;\n}\n;\nw.prototype._$E2 = function() {\n return this._$vo;\n}\n;\nfunction u() {\n if (j) {\n return;\n }\n this.p1 = new N();\n this.p2 = new N();\n this._$Fo = 0;\n this._$Db = 0;\n this._$L2 = 0;\n this._$M2 = 0;\n this._$ks = 0;\n this._$9b = 0;\n this._$iP = 0;\n this._$iT = 0;\n this._$lL = new Array();\n this._$qP = new Array();\n this.setup(0.3, 0.5, 0.1);\n}\nu.prototype.setup = function(aJ, aI, aH) {\n this._$ks = this._$Yb();\n this.p2._$xT();\n if (arguments.length == 3) {\n this._$Fo = aJ;\n this._$L2 = aI;\n this.p1._$p = aH;\n this.p2._$p = aH;\n this.p2.y = aJ;\n this.setup();\n }\n}\n;\nu.prototype.getPhysicsPoint1 = function() {\n return this.p1;\n}\n;\nu.prototype.getPhysicsPoint2 = function() {\n return this.p2;\n}\n;\nu.prototype._$qr = function() {\n return this._$Db;\n}\n;\nu.prototype._$pr = function(aH) {\n this._$Db = aH;\n}\n;\nu.prototype._$5r = function() {\n return this._$M2;\n}\n;\nu.prototype._$Cs = function() {\n return this._$9b;\n}\n;\nu.prototype._$Yb = function() {\n return (-180 * (Math.atan2(this.p1.x - this.p2.x, -(this.p1.y - this.p2.y))) / Math.PI);\n}\n;\nu.prototype.addSrcParam = function(aJ, aH, aL, aI) {\n var aK = new h(aJ,aH,aL,aI);\n this._$lL.push(aK);\n}\n;\nu.prototype.addTargetParam = function(aJ, aH, aK, aI) {\n var aL = new aF(aJ,aH,aK,aI);\n this._$qP.push(aL);\n}\n;\nu.prototype.update = function(aI, aL) {\n if (this._$iP == 0) {\n this._$iP = this._$iT = aL;\n this._$Fo = (Math.sqrt((this.p1.x - this.p2.x) * (this.p1.x - this.p2.x) + (this.p1.y - this.p2.y) * (this.p1.y - this.p2.y)));\n return;\n }\n var aK = (aL - this._$iT) / 1000;\n if (aK != 0) {\n for (var aJ = this._$lL.length - 1; aJ >= 0; --aJ) {\n var aM = this._$lL[aJ];\n aM._$oP(aI, this);\n }\n this._$oo(aI, aK);\n this._$M2 = this._$Yb();\n this._$9b = (this._$M2 - this._$ks) / aK;\n this._$ks = this._$M2;\n }\n for (var aJ = this._$qP.length - 1; aJ >= 0; --aJ) {\n var aH = this._$qP[aJ];\n aH._$YS(aI, this);\n }\n this._$iT = aL;\n}\n;\nu.prototype._$oo = function(aN, aI) {\n if (aI < 0.033) {\n aI = 0.033;\n }\n var aU = 1 / aI;\n this.p1.vx = (this.p1.x - this.p1._$s0) * aU;\n this.p1.vy = (this.p1.y - this.p1._$70) * aU;\n this.p1.ax = (this.p1.vx - this.p1._$7L) * aU;\n this.p1.ay = (this.p1.vy - this.p1._$HL) * aU;\n this.p1.fx = this.p1.ax * this.p1._$p;\n this.p1.fy = this.p1.ay * this.p1._$p;\n this.p1._$xT();\n var aM = -(Math.atan2((this.p1.y - this.p2.y), this.p1.x - this.p2.x));\n var aL;\n var aV;\n var aR = Math.cos(aM);\n var aH = Math.sin(aM);\n var aW = 9.8 * this.p2._$p;\n var aQ = (this._$Db * aC._$bS);\n var aP = (aW * Math.cos(aM - aQ));\n aL = (aP * aH);\n aV = (aP * aR);\n var aK = (-this.p1.fx * aH * aH);\n var aT = (-this.p1.fy * aH * aR);\n var aJ = ((-this.p2.vx * this._$L2));\n var aS = ((-this.p2.vy * this._$L2));\n this.p2.fx = ((aL + aK + aJ));\n this.p2.fy = ((aV + aT + aS));\n this.p2.ax = this.p2.fx / this.p2._$p;\n this.p2.ay = this.p2.fy / this.p2._$p;\n this.p2.vx += this.p2.ax * aI;\n this.p2.vy += this.p2.ay * aI;\n this.p2.x += this.p2.vx * aI;\n this.p2.y += this.p2.vy * aI;\n var aO = (Math.sqrt((this.p1.x - this.p2.x) * (this.p1.x - this.p2.x) + (this.p1.y - this.p2.y) * (this.p1.y - this.p2.y)));\n this.p2.x = this.p1.x + this._$Fo * (this.p2.x - this.p1.x) / aO;\n this.p2.y = this.p1.y + this._$Fo * (this.p2.y - this.p1.y) / aO;\n this.p2.vx = (this.p2.x - this.p2._$s0) * aU;\n this.p2.vy = (this.p2.y - this.p2._$70) * aU;\n this.p2._$xT();\n}\n;\nfunction N() {\n this._$p = 1;\n this.x = 0;\n this.y = 0;\n this.vx = 0;\n this.vy = 0;\n this.ax = 0;\n this.ay = 0;\n this.fx = 0;\n this.fy = 0;\n this._$s0 = 0;\n this._$70 = 0;\n this._$7L = 0;\n this._$HL = 0;\n}\nN.prototype._$xT = function() {\n this._$s0 = this.x;\n this._$70 = this.y;\n this._$7L = this.vx;\n this._$HL = this.vy;\n}\n;\nfunction at(aJ, aI, aH) {\n this._$wL = null;\n this.scale = null;\n this._$V0 = null;\n this._$wL = aJ;\n this.scale = aI;\n this._$V0 = aH;\n}\nat.prototype._$oP = function(aI, aH) {}\n;\nfunction h(aJ, aK, aI, aH) {\n at.prototype.constructor.call(this, aK, aI, aH);\n this._$tL = null;\n this._$tL = aJ;\n}\nh.prototype = new at();\nh.prototype._$oP = function(aJ, aH) {\n var aK = this.scale * aJ.getParamFloat(this._$wL);\n var aL = aH.getPhysicsPoint1();\n switch (this._$tL) {\n default:\n case u.Src.SRC_TO_X:\n aL.x = aL.x + (aK - aL.x) * this._$V0;\n break;\n case u.Src.SRC_TO_Y:\n aL.y = aL.y + (aK - aL.y) * this._$V0;\n break;\n case u.Src.SRC_TO_G_ANGLE:\n var aI = aH._$qr();\n aI = aI + (aK - aI) * this._$V0;\n aH._$pr(aI);\n break;\n }\n}\n;\nfunction d(aJ, aI, aH) {\n this._$wL = null;\n this.scale = null;\n this._$V0 = null;\n this._$wL = aJ;\n this.scale = aI;\n this._$V0 = aH;\n}\nd.prototype._$YS = function(aI, aH) {}\n;\nfunction aF(aI, aK, aJ, aH) {\n d.prototype.constructor.call(this, aK, aJ, aH);\n this._$YP = null;\n this._$YP = aI;\n}\naF.prototype = new d();\naF.prototype._$YS = function(aI, aH) {\n switch (this._$YP) {\n default:\n case u.Target.TARGET_FROM_ANGLE:\n aI.setParamFloat(this._$wL, this.scale * aH._$5r(), this._$V0);\n break;\n case u.Target.TARGET_FROM_ANGLE_V:\n aI.setParamFloat(this._$wL, this.scale * aH._$Cs(), this._$V0);\n break;\n }\n}\n;\nu.Src = function() {}\n;\nu.Src.SRC_TO_X = \"SRC_TO_X\";\nu.Src.SRC_TO_Y = \"SRC_TO_Y\";\nu.Src.SRC_TO_G_ANGLE = \"SRC_TO_G_ANGLE\";\nu.Target = function() {}\n;\nu.Target.TARGET_FROM_ANGLE = \"TARGET_FROM_ANGLE\";\nu.Target.TARGET_FROM_ANGLE_V = \"TARGET_FROM_ANGLE_V\";\nfunction X() {\n if (j) {\n return;\n }\n this._$fL = 0;\n this._$gL = 0;\n this._$B0 = 1;\n this._$z0 = 1;\n this._$qT = 0;\n this.reflectX = false;\n this.reflectY = false;\n}\nX.prototype.init = function(aH) {\n this._$fL = aH._$fL;\n this._$gL = aH._$gL;\n this._$B0 = aH._$B0;\n this._$z0 = aH._$z0;\n this._$qT = aH._$qT;\n this.reflectX = aH.reflectX;\n this.reflectY = aH.reflectY;\n}\n;\nX.prototype._$F0 = function(aH) {\n this._$fL = aH._$_T();\n this._$gL = aH._$_T();\n this._$B0 = aH._$_T();\n this._$z0 = aH._$_T();\n this._$qT = aH._$_T();\n if (aH.getFormatVersion() >= ay.LIVE2D_FORMAT_VERSION_V2_10_SDK2) {\n this.reflectX = aH._$po();\n this.reflectY = aH._$po();\n }\n}\n;\nX.prototype._$e = function() {}\n;\nvar ad = function() {};\nad._$ni = function(aL, aJ, aR, aQ, aK, aI, aH, aS, aN) {\n var aM = (aH * aI - aS * aK);\n if (aM == 0) {\n return null;\n } else {\n var aO = ((aL - aR) * aI - (aJ - aQ) * aK) / aM;\n var aP;\n if (aK != 0) {\n aP = (aL - aR - aO * aH) / aK;\n } else {\n aP = (aJ - aQ - aO * aS) / aI;\n }\n if (isNaN(aP)) {\n aP = (aL - aR - aO * aH) / aK;\n if (isNaN(aP)) {\n aP = (aJ - aQ - aO * aS) / aI;\n }\n if (isNaN(aP)) {\n console.log(\"a is NaN @UtVector#_$ni() \");\n console.log(\"v1x : \" + aK);\n console.log(\"v1x != 0 ? \" + (aK != 0));\n }\n }\n if (aN == null) {\n return new Array(aP,aO);\n } else {\n aN[0] = aP;\n aN[1] = aO;\n return aN;\n }\n }\n}\n;\nfunction av() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n this.width = null;\n this.height = null;\n}\nav.prototype._$8P = function() {\n return this.x + 0.5 * this.width;\n}\n;\nav.prototype._$6P = function() {\n return this.y + 0.5 * this.height;\n}\n;\nav.prototype._$EL = function() {\n return this.x + this.width;\n}\n;\nav.prototype._$5T = function() {\n return this.y + this.height;\n}\n;\nav.prototype._$jL = function(aI, aK, aJ, aH) {\n this.x = aI;\n this.y = aK;\n this.width = aJ;\n this.height = aH;\n}\n;\nav.prototype._$jL = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n this.width = aH.width;\n this.height = aH.height;\n}\n;\nav.prototype.contains = function(aH, aI) {\n return this.x <= this.x && this.y <= this.y && (this.x <= this.x + this.width) && (this.y <= this.y + this.height);\n}\n;\nav.prototype.expand = function(aH, aI) {\n this.x -= aH;\n this.y -= aI;\n this.width += aH * 2;\n this.height += aI * 2;\n}\n;\nfunction aG() {}\naG._$Z2 = function(bb, bo, bp, a2) {\n var a1 = bo._$Q2(bb, bp);\n var a3 = bb._$vs();\n var ba = bb._$Tr();\n bo._$zr(a3, ba, a1);\n if (a1 <= 0) {\n return a2[a3[0]];\n } else {\n if (a1 == 1) {\n var bj = a2[a3[0]];\n var bi = a2[a3[1]];\n var a9 = ba[0];\n return (bj + (bi - bj) * a9) | 0;\n } else {\n if (a1 == 2) {\n var bj = a2[a3[0]];\n var bi = a2[a3[1]];\n var a0 = a2[a3[2]];\n var aZ = a2[a3[3]];\n var a9 = ba[0];\n var a8 = ba[1];\n var br = (bj + (bi - bj) * a9) | 0;\n var bq = (a0 + (aZ - a0) * a9) | 0;\n return (br + (bq - br) * a8) | 0;\n } else {\n if (a1 == 3) {\n var aP = a2[a3[0]];\n var aO = a2[a3[1]];\n var bn = a2[a3[2]];\n var bm = a2[a3[3]];\n var aK = a2[a3[4]];\n var aJ = a2[a3[5]];\n var bg = a2[a3[6]];\n var bf = a2[a3[7]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var bj = (aP + (aO - aP) * a9) | 0;\n var bi = (bn + (bm - bn) * a9) | 0;\n var a0 = (aK + (aJ - aK) * a9) | 0;\n var aZ = (bg + (bf - bg) * a9) | 0;\n var br = (bj + (bi - bj) * a8) | 0;\n var bq = (a0 + (aZ - a0) * a8) | 0;\n return (br + (bq - br) * a6) | 0;\n } else {\n if (a1 == 4) {\n var aT = a2[a3[0]];\n var aS = a2[a3[1]];\n var bu = a2[a3[2]];\n var bt = a2[a3[3]];\n var aN = a2[a3[4]];\n var aM = a2[a3[5]];\n var bl = a2[a3[6]];\n var bk = a2[a3[7]];\n var be = a2[a3[8]];\n var bc = a2[a3[9]];\n var aX = a2[a3[10]];\n var aW = a2[a3[11]];\n var a7 = a2[a3[12]];\n var a5 = a2[a3[13]];\n var aR = a2[a3[14]];\n var aQ = a2[a3[15]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var a4 = ba[3];\n var aP = (aT + (aS - aT) * a9) | 0;\n var aO = (bu + (bt - bu) * a9) | 0;\n var bn = (aN + (aM - aN) * a9) | 0;\n var bm = (bl + (bk - bl) * a9) | 0;\n var aK = (be + (bc - be) * a9) | 0;\n var aJ = (aX + (aW - aX) * a9) | 0;\n var bg = (a7 + (a5 - a7) * a9) | 0;\n var bf = (aR + (aQ - aR) * a9) | 0;\n var bj = (aP + (aO - aP) * a8) | 0;\n var bi = (bn + (bm - bn) * a8) | 0;\n var a0 = (aK + (aJ - aK) * a8) | 0;\n var aZ = (bg + (bf - bg) * a8) | 0;\n var br = (bj + (bi - bj) * a6) | 0;\n var bq = (a0 + (aZ - a0) * a6) | 0;\n return (br + (bq - br) * a4) | 0;\n } else {\n var aV = 1 << a1;\n var aY = new Float32Array(aV);\n for (var bh = 0; bh < aV; bh++) {\n var aI = bh;\n var aH = 1;\n for (var aL = 0; aL < a1; aL++) {\n aH *= (aI % 2 == 0) ? (1 - ba[aL]) : ba[aL];\n aI /= 2;\n }\n aY[bh] = aH;\n }\n var bs = new Float32Array(aV);\n for (var aU = 0; aU < aV; aU++) {\n bs[aU] = a2[a3[aU]];\n }\n var bd = 0;\n for (var aU = 0; aU < aV; aU++) {\n bd += aY[aU] * bs[aU];\n }\n return (bd + 0.5) | 0;\n }\n }\n }\n }\n }\n}\n;\naG._$br = function(ba, bo, bp, bg) {\n var a1 = bo._$Q2(ba, bp);\n var a2 = ba._$vs();\n var a9 = ba._$Tr();\n bo._$zr(a2, a9, a1);\n if (a1 <= 0) {\n return bg[a2[0]];\n } else {\n if (a1 == 1) {\n var bj = bg[a2[0]];\n var bi = bg[a2[1]];\n var a8 = a9[0];\n return bj + (bi - bj) * a8;\n } else {\n if (a1 == 2) {\n var bj = bg[a2[0]];\n var bi = bg[a2[1]];\n var a0 = bg[a2[2]];\n var aZ = bg[a2[3]];\n var a8 = a9[0];\n var a7 = a9[1];\n return (1 - a7) * (bj + (bi - bj) * a8) + a7 * (a0 + (aZ - a0) * a8);\n } else {\n if (a1 == 3) {\n var aP = bg[a2[0]];\n var aO = bg[a2[1]];\n var bn = bg[a2[2]];\n var bm = bg[a2[3]];\n var aK = bg[a2[4]];\n var aJ = bg[a2[5]];\n var bf = bg[a2[6]];\n var be = bg[a2[7]];\n var a8 = a9[0];\n var a7 = a9[1];\n var a5 = a9[2];\n return (1 - a5) * ((1 - a7) * (aP + (aO - aP) * a8) + a7 * (bn + (bm - bn) * a8)) + a5 * ((1 - a7) * (aK + (aJ - aK) * a8) + a7 * (bf + (be - bf) * a8));\n } else {\n if (a1 == 4) {\n var aT = bg[a2[0]];\n var aS = bg[a2[1]];\n var bs = bg[a2[2]];\n var br = bg[a2[3]];\n var aN = bg[a2[4]];\n var aM = bg[a2[5]];\n var bl = bg[a2[6]];\n var bk = bg[a2[7]];\n var bd = bg[a2[8]];\n var bb = bg[a2[9]];\n var aX = bg[a2[10]];\n var aW = bg[a2[11]];\n var a6 = bg[a2[12]];\n var a4 = bg[a2[13]];\n var aR = bg[a2[14]];\n var aQ = bg[a2[15]];\n var a8 = a9[0];\n var a7 = a9[1];\n var a5 = a9[2];\n var a3 = a9[3];\n return (1 - a3) * ((1 - a5) * ((1 - a7) * (aT + (aS - aT) * a8) + a7 * (bs + (br - bs) * a8)) + a5 * ((1 - a7) * (aN + (aM - aN) * a8) + a7 * (bl + (bk - bl) * a8))) + a3 * ((1 - a5) * ((1 - a7) * (bd + (bb - bd) * a8) + a7 * (aX + (aW - aX) * a8)) + a5 * ((1 - a7) * (a6 + (a4 - a6) * a8) + a7 * (aR + (aQ - aR) * a8)));\n } else {\n var aV = 1 << a1;\n var aY = new Float32Array(aV);\n for (var bh = 0; bh < aV; bh++) {\n var aI = bh;\n var aH = 1;\n for (var aL = 0; aL < a1; aL++) {\n aH *= (aI % 2 == 0) ? (1 - a9[aL]) : a9[aL];\n aI /= 2;\n }\n aY[bh] = aH;\n }\n var bq = new Float32Array(aV);\n for (var aU = 0; aU < aV; aU++) {\n bq[aU] = bg[a2[aU]];\n }\n var bc = 0;\n for (var aU = 0; aU < aV; aU++) {\n bc += aY[aU] * bq[aU];\n }\n return bc;\n }\n }\n }\n }\n }\n}\n;\naG._$Vr = function(bV, bW, a5, aI, bC, a3, bX, bH) {\n var aN = bW._$Q2(bV, a5);\n var bw = bV._$vs();\n var a2 = bV._$Tr();\n bW._$zr(bw, a2, aN);\n var aJ = aI * 2;\n var aQ = bX;\n if (aN <= 0) {\n var bI = bw[0];\n var bq = bC[bI];\n if (bH == 2 && bX == 0) {\n P._$jT(bq, 0, a3, 0, aJ);\n } else {\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = bq[bt++];\n a3[aQ + 1] = bq[bt++];\n aQ += bH;\n }\n }\n } else {\n if (aN == 1) {\n var bq = bC[bw[0]];\n var bp = bC[bw[1]];\n var b3 = a2[0];\n var bT = 1 - b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = bq[bt] * bT + bp[bt] * b3;\n ++bt;\n a3[aQ + 1] = bq[bt] * bT + bp[bt] * b3;\n ++bt;\n aQ += bH;\n }\n } else {\n if (aN == 2) {\n var bq = bC[bw[0]];\n var bp = bC[bw[1]];\n var aZ = bC[bw[2]];\n var aY = bC[bw[3]];\n var b3 = a2[0];\n var b1 = a2[1];\n var bT = 1 - b3;\n var bP = 1 - b1;\n var b2 = bP * bT;\n var b0 = bP * b3;\n var bM = b1 * bT;\n var bL = b1 * b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = b2 * bq[bt] + b0 * bp[bt] + bM * aZ[bt] + bL * aY[bt];\n ++bt;\n a3[aQ + 1] = b2 * bq[bt] + b0 * bp[bt] + bM * aZ[bt] + bL * aY[bt];\n ++bt;\n aQ += bH;\n }\n } else {\n if (aN == 3) {\n var ba = bC[bw[0]];\n var a9 = bC[bw[1]];\n var aP = bC[bw[2]];\n var aO = bC[bw[3]];\n var a6 = bC[bw[4]];\n var a4 = bC[bw[5]];\n var aL = bC[bw[6]];\n var aK = bC[bw[7]];\n var b3 = a2[0];\n var b1 = a2[1];\n var bZ = a2[2];\n var bT = 1 - b3;\n var bP = 1 - b1;\n var bN = 1 - bZ;\n var b8 = bN * bP * bT;\n var b7 = bN * bP * b3;\n var bU = bN * b1 * bT;\n var bS = bN * b1 * b3;\n var b6 = bZ * bP * bT;\n var b5 = bZ * bP * b3;\n var bQ = bZ * b1 * bT;\n var bO = bZ * b1 * b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = b8 * ba[bt] + b7 * a9[bt] + bU * aP[bt] + bS * aO[bt] + b6 * a6[bt] + b5 * a4[bt] + bQ * aL[bt] + bO * aK[bt];\n ++bt;\n a3[aQ + 1] = b8 * ba[bt] + b7 * a9[bt] + bU * aP[bt] + bS * aO[bt] + b6 * a6[bt] + b5 * a4[bt] + bQ * aL[bt] + bO * aK[bt];\n ++bt;\n aQ += bH;\n }\n } else {\n if (aN == 4) {\n var bD = bC[bw[0]];\n var bB = bC[bw[1]];\n var bo = bC[bw[2]];\n var bm = bC[bw[3]];\n var by = bC[bw[4]];\n var bx = bC[bw[5]];\n var be = bC[bw[6]];\n var bd = bC[bw[7]];\n var bG = bC[bw[8]];\n var bE = bC[bw[9]];\n var bv = bC[bw[10]];\n var bu = bC[bw[11]];\n var bA = bC[bw[12]];\n var bz = bC[bw[13]];\n var bn = bC[bw[14]];\n var bl = bC[bw[15]];\n var b3 = a2[0];\n var b1 = a2[1];\n var bZ = a2[2];\n var bY = a2[3];\n var bT = 1 - b3;\n var bP = 1 - b1;\n var bN = 1 - bZ;\n var bK = 1 - bY;\n var bk = bK * bN * bP * bT;\n var bi = bK * bN * bP * b3;\n var aW = bK * bN * b1 * bT;\n var aV = bK * bN * b1 * b3;\n var bc = bK * bZ * bP * bT;\n var bb = bK * bZ * bP * b3;\n var aS = bK * bZ * b1 * bT;\n var aR = bK * bZ * b1 * b3;\n var bs = bY * bN * bP * bT;\n var br = bY * bN * bP * b3;\n var a1 = bY * bN * b1 * bT;\n var a0 = bY * bN * b1 * b3;\n var bh = bY * bZ * bP * bT;\n var bf = bY * bZ * bP * b3;\n var aU = bY * bZ * b1 * bT;\n var aT = bY * bZ * b1 * b3;\n for (var bt = 0; bt < aJ; ) {\n a3[aQ] = bk * bD[bt] + bi * bB[bt] + aW * bo[bt] + aV * bm[bt] + bc * by[bt] + bb * bx[bt] + aS * be[bt] + aR * bd[bt] + bs * bG[bt] + br * bE[bt] + a1 * bv[bt] + a0 * bu[bt] + bh * bA[bt] + bf * bz[bt] + aU * bn[bt] + aT * bl[bt];\n ++bt;\n a3[aQ + 1] = bk * bD[bt] + bi * bB[bt] + aW * bo[bt] + aV * bm[bt] + bc * by[bt] + bb * bx[bt] + aS * be[bt] + aR * bd[bt] + bs * bG[bt] + br * bE[bt] + a1 * bv[bt] + a0 * bu[bt] + bh * bA[bt] + bf * bz[bt] + aU * bn[bt] + aT * bl[bt];\n ++bt;\n aQ += bH;\n }\n } else {\n var b4 = 1 << aN;\n var bJ = new Float32Array(b4);\n for (var bj = 0; bj < b4; bj++) {\n var aH = bj;\n var aM = 1;\n for (var bF = 0; bF < aN; bF++) {\n aM *= (aH % 2 == 0) ? (1 - a2[bF]) : a2[bF];\n aH /= 2;\n }\n bJ[bj] = aM;\n }\n var bg = new Float32Array(b4);\n for (var aX = 0; aX < b4; aX++) {\n bg[aX] = bC[bw[aX]];\n }\n for (var bt = 0; bt < aJ; ) {\n var a8 = 0\n , a7 = 0;\n var bR = bt + 1;\n for (var aX = 0; aX < b4; aX++) {\n a8 += bJ[aX] * bg[aX][bt];\n a7 += bJ[aX] * bg[aX][bR];\n }\n bt += 2;\n a3[aQ] = a8;\n a3[aQ + 1] = a7;\n aQ += bH;\n }\n }\n }\n }\n }\n }\n}\n;\nfunction e() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n}\ne.prototype._$HT = function(aH, aI) {\n this.x = aH;\n this.y = aI;\n}\n;\ne.prototype._$HT = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n}\n;\nfunction ae() {\n if (j) {\n return;\n }\n this._$gP = null;\n this._$dr = null;\n this._$GS = null;\n this._$qb = null;\n this._$Lb = null;\n this._$mS = null;\n this.clipID = null;\n this.clipIDList = new Array();\n}\nae._$ur = -2;\nae._$ES = 500;\nae._$wb = 2;\nae._$8S = 3;\nae._$52 = ae._$ES;\nae._$R2 = ae._$ES;\nae._$or = function() {\n return ae._$52;\n}\n;\nae._$Pr = function() {\n return ae._$R2;\n}\n;\nae.prototype.convertClipIDForV2_11 = function(aI) {\n var aH = [];\n if (aI == null) {\n return null;\n }\n if (aI.length == 0) {\n return null;\n }\n if (!/,/.test(aI)) {\n aH.push(aI.id);\n return aH;\n }\n aH = aI.id.split(\",\");\n return aH;\n}\n;\nae.prototype._$F0 = function(aH) {\n this._$gP = aH._$nP();\n this._$dr = aH._$nP();\n this._$GS = aH._$nP();\n this._$qb = aH._$6L();\n this._$Lb = aH._$cS();\n this._$mS = aH._$Tb();\n if (aH.getFormatVersion() >= ay._$T7) {\n this.clipID = aH._$nP();\n this.clipIDList = this.convertClipIDForV2_11(this.clipID);\n } else {\n this.clipIDList = [];\n }\n this._$MS(this._$Lb);\n}\n;\nae.prototype.getClipIDList = function() {\n return this.clipIDList;\n}\n;\nae.prototype.init = function(aH) {}\n;\nae.prototype._$Nr = function(aH, aI) {\n aI._$IS[0] = false;\n aI._$Us = aG._$Z2(aH, this._$GS, aI._$IS, this._$Lb);\n if (Q._$Zs) {} else {\n if (aI._$IS[0]) {\n return;\n }\n }\n aI._$7s = aG._$br(aH, this._$GS, aI._$IS, this._$mS);\n}\n;\nae.prototype._$2b = function(aH, aI) {}\n;\nae.prototype.getDrawDataID = function() {\n return this._$gP;\n}\n;\nae.prototype._$j2 = function(aH) {\n this._$gP = aH;\n}\n;\nae.prototype.getOpacity = function(aH, aI) {\n return aI._$7s;\n}\n;\nae.prototype._$zS = function(aH, aI) {\n return aI._$Us;\n}\n;\nae.prototype._$MS = function(aJ) {\n for (var aI = aJ.length - 1; aI >= 0; --aI) {\n var aH = aJ[aI];\n if (aH < ae._$52) {\n ae._$52 = aH;\n } else {\n if (aH > ae._$R2) {\n ae._$R2 = aH;\n }\n }\n }\n}\n;\nae.prototype.getTargetBaseDataID = function() {\n return this._$dr;\n}\n;\nae.prototype._$gs = function(aH) {\n this._$dr = aH;\n}\n;\nae.prototype._$32 = function() {\n return (this._$dr != null && (this._$dr != n._$2o()));\n}\n;\nae.prototype.preDraw = function(aJ, aH, aI) {}\n;\nae.prototype.draw = function(aJ, aH, aI) {}\n;\nae.prototype.getType = function() {}\n;\nae.prototype._$B2 = function(aI, aH, aJ) {}\n;\nfunction ax() {\n if (j) {\n return;\n }\n this._$Eb = ax._$ps;\n this._$lT = 1;\n this._$C0 = 1;\n this._$tT = 1;\n this._$WL = 1;\n this.culling = false;\n this.matrix4x4 = new Float32Array(16);\n this.premultipliedAlpha = false;\n this.anisotropy = 0;\n this.clippingProcess = ax.CLIPPING_PROCESS_NONE;\n this.clipBufPre_clipContextMask = null;\n this.clipBufPre_clipContextDraw = null;\n this.CHANNEL_COLORS = new Array();\n}\nax._$ps = 32;\nax.CLIPPING_PROCESS_NONE = 0;\nax.CLIPPING_PROCESS_OVERWRITE_ALPHA = 1;\nax.CLIPPING_PROCESS_MULTIPLY_ALPHA = 2;\nax.CLIPPING_PROCESS_DRAW = 3;\nax.CLIPPING_PROCESS_CLEAR_ALPHA = 4;\nax.prototype.setChannelFlagAsColor = function(aH, aI) {\n this.CHANNEL_COLORS[aH] = aI;\n}\n;\nax.prototype.getChannelFlagAsColor = function(aH) {\n return this.CHANNEL_COLORS[aH];\n}\n;\nax.prototype._$ZT = function() {}\n;\nax.prototype._$Uo = function(aM, aK, aJ, aL, aN, aI, aH) {}\n;\nax.prototype._$Rs = function() {\n return -1;\n}\n;\nax.prototype._$Ds = function(aH) {}\n;\nax.prototype.setBaseColor = function(aK, aJ, aI, aH) {\n if (aK < 0) {\n aK = 0;\n } else {\n if (aK > 1) {\n aK = 1;\n }\n }\n if (aJ < 0) {\n aJ = 0;\n } else {\n if (aJ > 1) {\n aJ = 1;\n }\n }\n if (aI < 0) {\n aI = 0;\n } else {\n if (aI > 1) {\n aI = 1;\n }\n }\n if (aH < 0) {\n aH = 0;\n } else {\n if (aH > 1) {\n aH = 1;\n }\n }\n this._$lT = aK;\n this._$C0 = aJ;\n this._$tT = aI;\n this._$WL = aH;\n}\n;\nax.prototype._$WP = function(aH) {\n this.culling = aH;\n}\n;\nax.prototype.setMatrix = function(aH) {\n for (var aI = 0; aI < 16; aI++) {\n this.matrix4x4[aI] = aH[aI];\n }\n}\n;\nax.prototype._$IT = function() {\n return this.matrix4x4;\n}\n;\nax.prototype.setPremultipliedAlpha = function(aH) {\n this.premultipliedAlpha = aH;\n}\n;\nax.prototype.isPremultipliedAlpha = function() {\n return this.premultipliedAlpha;\n}\n;\nax.prototype.setAnisotropy = function(aH) {\n this.anisotropy = aH;\n}\n;\nax.prototype.getAnisotropy = function() {\n return this.anisotropy;\n}\n;\nax.prototype.getClippingProcess = function() {\n return this.clippingProcess;\n}\n;\nax.prototype.setClippingProcess = function(aH) {\n this.clippingProcess = aH;\n}\n;\nax.prototype.setClipBufPre_clipContextForMask = function(aH) {\n this.clipBufPre_clipContextMask = aH;\n}\n;\nax.prototype.getClipBufPre_clipContextMask = function() {\n return this.clipBufPre_clipContextMask;\n}\n;\nax.prototype.setClipBufPre_clipContextForDraw = function(aH) {\n this.clipBufPre_clipContextDraw = aH;\n}\n;\nax.prototype.getClipBufPre_clipContextDraw = function() {\n return this.clipBufPre_clipContextDraw;\n}\n;\nfunction o() {\n if (j) {\n return;\n }\n this.a = 1;\n this.r = 1;\n this.g = 1;\n this.b = 1;\n this.scale = 1;\n this._$ho = 1;\n this.blendMode = Q.L2D_COLOR_BLEND_MODE_MULT;\n}\nfunction c() {\n if (j) {\n return;\n }\n this._$kP = null;\n this._$dr = null;\n this._$Ai = true;\n this._$mS = null;\n}\nc._$ur = -2;\nc._$c2 = 1;\nc._$_b = 2;\nc.prototype._$F0 = function(aH) {\n this._$kP = aH._$nP();\n this._$dr = aH._$nP();\n}\n;\nc.prototype.readV2_opacity = function(aH) {\n if (aH.getFormatVersion() >= ay.LIVE2D_FORMAT_VERSION_V2_10_SDK2) {\n this._$mS = aH._$Tb();\n }\n}\n;\nc.prototype.init = function(aH) {}\n;\nc.prototype._$Nr = function(aI, aH) {}\n;\nc.prototype.interpolateOpacity = function(aJ, aK, aI, aH) {\n if (this._$mS == null) {\n aI.setInterpolatedOpacity(1);\n } else {\n aI.setInterpolatedOpacity(aG._$br(aJ, aK, aH, this._$mS));\n }\n}\n;\nc.prototype._$2b = function(aI, aH) {}\n;\nc.prototype._$nb = function(aL, aK, aM, aH, aI, aJ, aN) {}\n;\nc.prototype.getType = function() {}\n;\nc.prototype._$gs = function(aH) {\n this._$dr = aH;\n}\n;\nc.prototype._$a2 = function(aH) {\n this._$kP = aH;\n}\n;\nc.prototype.getTargetBaseDataID = function() {\n return this._$dr;\n}\n;\nc.prototype.getBaseDataID = function() {\n return this._$kP;\n}\n;\nc.prototype._$32 = function() {\n return (this._$dr != null && (this._$dr != n._$2o()));\n}\n;\nfunction P() {}\nP._$W2 = 0;\nP._$CS = P._$W2;\nP._$Mo = function() {\n return true;\n}\n;\nP._$XP = function(aI) {\n try {\n var aJ = getTimeMSec();\n while (getTimeMSec() - aJ < aI) {}\n } catch (aH) {\n aH._$Rb();\n }\n}\n;\nP.getUserTimeMSec = function() {\n return (P._$CS == P._$W2) ? P.getSystemTimeMSec() : P._$CS;\n}\n;\nP.setUserTimeMSec = function(aH) {\n P._$CS = aH;\n}\n;\nP.updateUserTimeMSec = function() {\n return (P._$CS = P.getSystemTimeMSec());\n}\n;\nP.getTimeMSec = function() {\n return new Date().getTime();\n}\n;\nP.getSystemTimeMSec = function() {\n return new Date().getTime();\n}\n;\nP._$Q = function(aH) {}\n;\nP._$jT = function(aM, aJ, aI, aL, aH) {\n for (var aK = 0; aK < aH; aK++) {\n aI[aL + aK] = aM[aJ + aK];\n }\n}\n;\nfunction aA() {\n if (j) {\n return;\n }\n this._$VP = 0;\n this._$wL = null;\n this._$GP = null;\n this._$8o = aA._$ds;\n this._$2r = -1;\n this._$O2 = 0;\n this._$ri = 0;\n}\naA._$ds = -2;\naA.prototype._$F0 = function(aH) {\n this._$wL = aH._$nP();\n this._$VP = aH._$6L();\n this._$GP = aH._$nP();\n}\n;\naA.prototype.getParamIndex = function(aH) {\n if (this._$2r != aH) {\n this._$8o = aA._$ds;\n }\n return this._$8o;\n}\n;\naA.prototype._$Pb = function(aI, aH) {\n this._$8o = aI;\n this._$2r = aH;\n}\n;\naA.prototype.getParamID = function() {\n return this._$wL;\n}\n;\naA.prototype._$yP = function(aH) {\n this._$wL = aH;\n}\n;\naA.prototype._$N2 = function() {\n return this._$VP;\n}\n;\naA.prototype._$d2 = function() {\n return this._$GP;\n}\n;\naA.prototype._$t2 = function(aI, aH) {\n this._$VP = aI;\n this._$GP = aH;\n}\n;\naA.prototype._$Lr = function() {\n return this._$O2;\n}\n;\naA.prototype._$wr = function(aH) {\n this._$O2 = aH;\n}\n;\naA.prototype._$SL = function() {\n return this._$ri;\n}\n;\naA.prototype._$AL = function(aH) {\n this._$ri = aH;\n}\n;\nfunction G() {}\nG.startsWith = function(aJ, aL, aK) {\n var aH = aL + aK.length;\n if (aH >= aJ.length) {\n return false;\n }\n for (var aI = aL; aI < aH; aI++) {\n if (G.getChar(aJ, aI) != aK.charAt(aI - aL)) {\n return false;\n }\n }\n return true;\n}\n;\nG.getChar = function(aI, aH) {\n return String.fromCharCode(aI.getUint8(aH));\n}\n;\nG.createString = function(aM, aL, aJ) {\n var aH = new ArrayBuffer(aJ * 2);\n var aK = new Uint16Array(aH);\n for (var aI = 0; aI < aJ; aI++) {\n aK[aI] = aM.getUint8(aL + aI);\n }\n return String.fromCharCode.apply(null, aK);\n}\n;\nG._$LS = function(aP, aM, aR, aK) {\n if (aP instanceof ArrayBuffer) {\n aP = new DataView(aP);\n }\n var aL = aR;\n var aJ = false;\n var aQ = false;\n var aS = 0;\n var aO = G.getChar(aP, aL);\n if (aO == \"-\") {\n aJ = true;\n aL++;\n }\n var aN = false;\n for (; aL < aM; aL++) {\n aO = G.getChar(aP, aL);\n switch (aO) {\n case \"0\":\n aS = aS * 10;\n break;\n case \"1\":\n aS = aS * 10 + 1;\n break;\n case \"2\":\n aS = aS * 10 + 2;\n break;\n case \"3\":\n aS = aS * 10 + 3;\n break;\n case \"4\":\n aS = aS * 10 + 4;\n break;\n case \"5\":\n aS = aS * 10 + 5;\n break;\n case \"6\":\n aS = aS * 10 + 6;\n break;\n case \"7\":\n aS = aS * 10 + 7;\n break;\n case \"8\":\n aS = aS * 10 + 8;\n break;\n case \"9\":\n aS = aS * 10 + 9;\n break;\n case \".\":\n aQ = true;\n aL++;\n aN = true;\n break;\n default:\n aN = true;\n break;\n }\n if (aN) {\n break;\n }\n }\n if (aQ) {\n var aI = 0.1;\n var aH = false;\n for (; aL < aM; aL++) {\n aO = G.getChar(aP, aL);\n switch (aO) {\n case \"0\":\n break;\n case \"1\":\n aS += aI * 1;\n break;\n case \"2\":\n aS += aI * 2;\n break;\n case \"3\":\n aS += aI * 3;\n break;\n case \"4\":\n aS += aI * 4;\n break;\n case \"5\":\n aS += aI * 5;\n break;\n case \"6\":\n aS += aI * 6;\n break;\n case \"7\":\n aS += aI * 7;\n break;\n case \"8\":\n aS += aI * 8;\n break;\n case \"9\":\n aS += aI * 9;\n break;\n default:\n aH = true;\n break;\n }\n aI *= 0.1;\n if (aH) {\n break;\n }\n }\n }\n if (aJ) {\n aS = -aS;\n }\n aK[0] = aL;\n return aS;\n}\n;\nfunction g() {\n if (j) {\n return;\n }\n this._$Ob = null;\n}\ng.prototype._$zP = function() {\n this._$Ob = new Array();\n}\n;\ng.prototype._$F0 = function(aH) {\n this._$Ob = aH._$nP();\n}\n;\ng.prototype._$Ur = function(aK) {\n if (aK._$WS()) {\n return true;\n }\n var aH = aK._$v2();\n for (var aJ = this._$Ob.length - 1; aJ >= 0; --aJ) {\n var aI = this._$Ob[aJ].getParamIndex(aH);\n if (aI == aA._$ds) {\n aI = aK.getParamIndex(this._$Ob[aJ].getParamID());\n }\n if (aK._$Xb(aI)) {\n return true;\n }\n }\n return false;\n}\n;\ng.prototype._$Q2 = function(aL, aV) {\n var aX = this._$Ob.length;\n var aJ = aL._$v2();\n var aN = 0;\n var aI;\n var aQ;\n for (var aK = 0; aK < aX; aK++) {\n var aH = this._$Ob[aK];\n aI = aH.getParamIndex(aJ);\n if (aI == aA._$ds) {\n aI = aL.getParamIndex(aH.getParamID());\n aH._$Pb(aI, aJ);\n }\n if (aI < 0) {\n throw new Exception(\"err 23242 : \" + aH.getParamID());\n }\n var aU = aI < 0 ? 0 : aL.getParamFloat(aI);\n aQ = aH._$N2();\n var aM = aH._$d2();\n var aP = -1;\n var aT = 0;\n var aS;\n var aR;\n if (aQ < 1) {} else {\n if (aQ == 1) {\n aS = aM[0];\n if (aS - aw._$J < aU && aU < aS + aw._$J) {\n aP = 0;\n aT = 0;\n } else {\n aP = 0;\n aV[0] = true;\n }\n } else {\n aS = aM[0];\n if (aU < aS - aw._$J) {\n aP = 0;\n aV[0] = true;\n } else {\n if (aU < aS + aw._$J) {\n aP = 0;\n } else {\n var aW = false;\n for (var aO = 1; aO < aQ; ++aO) {\n aR = aM[aO];\n if (aU < aR + aw._$J) {\n if (aR - aw._$J < aU) {\n aP = aO;\n } else {\n aP = aO - 1;\n aT = (aU - aS) / (aR - aS);\n aN++;\n }\n aW = true;\n break;\n }\n aS = aR;\n }\n if (!aW) {\n aP = aQ - 1;\n aT = 0;\n aV[0] = true;\n }\n }\n }\n }\n }\n aH._$wr(aP);\n aH._$AL(aT);\n }\n return aN;\n}\n;\ng.prototype._$zr = function(aN, aT, aP) {\n var aR = 1 << aP;\n if (aR + 1 > aw._$Qb) {\n console.log(\"err 23245\\n\");\n }\n var aS = this._$Ob.length;\n var aK = 1;\n var aH = 1;\n var aJ = 0;\n for (var aQ = 0; aQ < aR; ++aQ) {\n aN[aQ] = 0;\n }\n for (var aL = 0; aL < aS; ++aL) {\n var aI = this._$Ob[aL];\n if (aI._$SL() == 0) {\n var aO = aI._$Lr() * aK;\n if (aO < 0 && Q._$3T) {\n throw new Exception(\"err 23246\");\n }\n for (var aQ = 0; aQ < aR; ++aQ) {\n aN[aQ] += aO;\n }\n } else {\n var aO = aK * aI._$Lr();\n var aM = aK * (aI._$Lr() + 1);\n for (var aQ = 0; aQ < aR; ++aQ) {\n aN[aQ] += ((aQ / aH | 0) % 2 == 0) ? aO : aM;\n }\n aT[aJ++] = aI._$SL();\n aH *= 2;\n }\n aK *= aI._$N2();\n }\n aN[aR] = 65535;\n aT[aJ] = -1;\n}\n;\ng.prototype._$h2 = function(aJ, aH, aK) {\n var aM = new Float32Array(aH);\n for (var aL = 0; aL < aH; ++aL) {\n aM[aL] = aK[aL];\n }\n var aI = new aA();\n aI._$yP(aJ);\n aI._$t2(aH, aM);\n this._$Ob.push(aI);\n}\n;\ng.prototype._$J2 = function(aO) {\n var aN = aO;\n var aM = this._$Ob.length;\n for (var aK = 0; aK < aM; ++aK) {\n var aI = this._$Ob[aK];\n var aH = aI._$N2();\n var aJ = aN % aI._$N2();\n var aL = aI._$d2()[aJ];\n console.log(\"%s[%d]=%7.2f / \", aI.getParamID(), aJ, aL);\n aN /= aH;\n }\n console.log(\"\\n\");\n}\n;\ng.prototype.getParamCount = function() {\n return this._$Ob.length;\n}\n;\ng.prototype._$zs = function() {\n return this._$Ob;\n}\n;\nfunction ac() {\n this.m = new Float32Array(16);\n this.identity();\n}\nac.prototype.identity = function() {\n for (var aH = 0; aH < 16; aH++) {\n this.m[aH] = ((aH % 5) == 0) ? 1 : 0;\n }\n}\n;\nac.prototype.getArray = function() {\n return this.m;\n}\n;\nac.prototype.getCopyMatrix = function() {\n return new Float32Array(this.m);\n}\n;\nac.prototype.setMatrix = function(aI) {\n if (aI == null || aI.length != 16) {\n return;\n }\n for (var aH = 0; aH < 16; aH++) {\n this.m[aH] = aI[aH];\n }\n}\n;\nac.prototype.mult = function(aH, aJ, aI) {\n if (aJ == null) {\n return null;\n }\n if (this == aJ) {\n this.mult_safe(this.m, aH.m, aJ.m, aI);\n } else {\n this.mult_fast(this.m, aH.m, aJ.m, aI);\n }\n return aJ;\n}\n;\nac.prototype.mult_safe = function(aI, aH, aM, aJ) {\n if (aI == aM) {\n var aL = new Array(16);\n this.mult_fast(aI, aH, aL, aJ);\n for (var aK = 15; aK >= 0; --aK) {\n aM[aK] = aL[aK];\n }\n } else {\n this.mult_fast(aI, aH, aM, aJ);\n }\n}\n;\nac.prototype.mult_fast = function(aI, aH, aK, aJ) {\n if (aJ) {\n aK[0] = aI[0] * aH[0] + aI[4] * aH[1] + aI[8] * aH[2];\n aK[4] = aI[0] * aH[4] + aI[4] * aH[5] + aI[8] * aH[6];\n aK[8] = aI[0] * aH[8] + aI[4] * aH[9] + aI[8] * aH[10];\n aK[12] = aI[0] * aH[12] + aI[4] * aH[13] + aI[8] * aH[14] + aI[12];\n aK[1] = aI[1] * aH[0] + aI[5] * aH[1] + aI[9] * aH[2];\n aK[5] = aI[1] * aH[4] + aI[5] * aH[5] + aI[9] * aH[6];\n aK[9] = aI[1] * aH[8] + aI[5] * aH[9] + aI[9] * aH[10];\n aK[13] = aI[1] * aH[12] + aI[5] * aH[13] + aI[9] * aH[14] + aI[13];\n aK[2] = aI[2] * aH[0] + aI[6] * aH[1] + aI[10] * aH[2];\n aK[6] = aI[2] * aH[4] + aI[6] * aH[5] + aI[10] * aH[6];\n aK[10] = aI[2] * aH[8] + aI[6] * aH[9] + aI[10] * aH[10];\n aK[14] = aI[2] * aH[12] + aI[6] * aH[13] + aI[10] * aH[14] + aI[14];\n aK[3] = aK[7] = aK[11] = 0;\n aK[15] = 1;\n } else {\n aK[0] = aI[0] * aH[0] + aI[4] * aH[1] + aI[8] * aH[2] + aI[12] * aH[3];\n aK[4] = aI[0] * aH[4] + aI[4] * aH[5] + aI[8] * aH[6] + aI[12] * aH[7];\n aK[8] = aI[0] * aH[8] + aI[4] * aH[9] + aI[8] * aH[10] + aI[12] * aH[11];\n aK[12] = aI[0] * aH[12] + aI[4] * aH[13] + aI[8] * aH[14] + aI[12] * aH[15];\n aK[1] = aI[1] * aH[0] + aI[5] * aH[1] + aI[9] * aH[2] + aI[13] * aH[3];\n aK[5] = aI[1] * aH[4] + aI[5] * aH[5] + aI[9] * aH[6] + aI[13] * aH[7];\n aK[9] = aI[1] * aH[8] + aI[5] * aH[9] + aI[9] * aH[10] + aI[13] * aH[11];\n aK[13] = aI[1] * aH[12] + aI[5] * aH[13] + aI[9] * aH[14] + aI[13] * aH[15];\n aK[2] = aI[2] * aH[0] + aI[6] * aH[1] + aI[10] * aH[2] + aI[14] * aH[3];\n aK[6] = aI[2] * aH[4] + aI[6] * aH[5] + aI[10] * aH[6] + aI[14] * aH[7];\n aK[10] = aI[2] * aH[8] + aI[6] * aH[9] + aI[10] * aH[10] + aI[14] * aH[11];\n aK[14] = aI[2] * aH[12] + aI[6] * aH[13] + aI[10] * aH[14] + aI[14] * aH[15];\n aK[3] = aI[3] * aH[0] + aI[7] * aH[1] + aI[11] * aH[2] + aI[15] * aH[3];\n aK[7] = aI[3] * aH[4] + aI[7] * aH[5] + aI[11] * aH[6] + aI[15] * aH[7];\n aK[11] = aI[3] * aH[8] + aI[7] * aH[9] + aI[11] * aH[10] + aI[15] * aH[11];\n aK[15] = aI[3] * aH[12] + aI[7] * aH[13] + aI[11] * aH[14] + aI[15] * aH[15];\n }\n}\n;\nac.prototype.translate = function(aH, aJ, aI) {\n this.m[12] = this.m[0] * aH + this.m[4] * aJ + this.m[8] * aI + this.m[12];\n this.m[13] = this.m[1] * aH + this.m[5] * aJ + this.m[9] * aI + this.m[13];\n this.m[14] = this.m[2] * aH + this.m[6] * aJ + this.m[10] * aI + this.m[14];\n this.m[15] = this.m[3] * aH + this.m[7] * aJ + this.m[11] * aI + this.m[15];\n}\n;\nac.prototype.scale = function(aJ, aI, aH) {\n this.m[0] *= aJ;\n this.m[4] *= aI;\n this.m[8] *= aH;\n this.m[1] *= aJ;\n this.m[5] *= aI;\n this.m[9] *= aH;\n this.m[2] *= aJ;\n this.m[6] *= aI;\n this.m[10] *= aH;\n this.m[3] *= aJ;\n this.m[7] *= aI;\n this.m[11] *= aH;\n}\n;\nac.prototype.rotateX = function(aH) {\n var aK = aC.fcos(aH);\n var aJ = aC._$9(aH);\n var aI = this.m[4];\n this.m[4] = aI * aK + this.m[8] * aJ;\n this.m[8] = aI * -aJ + this.m[8] * aK;\n aI = this.m[5];\n this.m[5] = aI * aK + this.m[9] * aJ;\n this.m[9] = aI * -aJ + this.m[9] * aK;\n aI = this.m[6];\n this.m[6] = aI * aK + this.m[10] * aJ;\n this.m[10] = aI * -aJ + this.m[10] * aK;\n aI = this.m[7];\n this.m[7] = aI * aK + this.m[11] * aJ;\n this.m[11] = aI * -aJ + this.m[11] * aK;\n}\n;\nac.prototype.rotateY = function(aH) {\n var aK = aC.fcos(aH);\n var aJ = aC._$9(aH);\n var aI = this.m[0];\n this.m[0] = aI * aK + this.m[8] * -aJ;\n this.m[8] = aI * aJ + this.m[8] * aK;\n aI = this.m[1];\n this.m[1] = aI * aK + this.m[9] * -aJ;\n this.m[9] = aI * aJ + this.m[9] * aK;\n aI = m[2];\n this.m[2] = aI * aK + this.m[10] * -aJ;\n this.m[10] = aI * aJ + this.m[10] * aK;\n aI = m[3];\n this.m[3] = aI * aK + this.m[11] * -aJ;\n this.m[11] = aI * aJ + this.m[11] * aK;\n}\n;\nac.prototype.rotateZ = function(aH) {\n var aK = aC.fcos(aH);\n var aJ = aC._$9(aH);\n var aI = this.m[0];\n this.m[0] = aI * aK + this.m[4] * aJ;\n this.m[4] = aI * -aJ + this.m[4] * aK;\n aI = this.m[1];\n this.m[1] = aI * aK + this.m[5] * aJ;\n this.m[5] = aI * -aJ + this.m[5] * aK;\n aI = this.m[2];\n this.m[2] = aI * aK + this.m[6] * aJ;\n this.m[6] = aI * -aJ + this.m[6] * aK;\n aI = this.m[3];\n this.m[3] = aI * aK + this.m[7] * aJ;\n this.m[7] = aI * -aJ + this.m[7] * aK;\n}\n;\nfunction Z(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\nZ.prototype = new ak();\nZ._$tP = new Object();\nZ._$27 = function() {\n Z._$tP.clear();\n}\n;\nZ.getID = function(aH) {\n var aI = Z._$tP[aH];\n if (aI == null) {\n aI = new Z(aH);\n Z._$tP[aH] = aI;\n }\n return aI;\n}\n;\nZ.prototype._$3s = function() {\n return new Z();\n}\n;\nfunction aD() {\n if (j) {\n return;\n }\n this._$7 = 1;\n this._$f = 0;\n this._$H = 0;\n this._$g = 1;\n this._$k = 0;\n this._$w = 0;\n this._$hi = STATE_IDENTITY;\n this._$Z = _$pS;\n}\naD._$kS = -1;\naD._$pS = 0;\naD._$hb = 1;\naD.STATE_IDENTITY = 0;\naD._$gb = 1;\naD._$fo = 2;\naD._$go = 4;\naD.prototype.transform = function(aK, aI, aH) {\n var aT, aS, aR, aM, aL, aJ;\n var aQ = 0;\n var aN = 0;\n switch (this._$hi) {\n default:\n return;\n case (aD._$go | aD._$fo | aD._$gb):\n aT = this._$7;\n aS = this._$H;\n aR = this._$k;\n aM = this._$f;\n aL = this._$g;\n aJ = this._$w;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n var aO = aK[aQ++];\n aI[aN++] = (aT * aP + aS * aO + aR);\n aI[aN++] = (aM * aP + aL * aO + aJ);\n }\n return;\n case (aD._$go | aD._$fo):\n aT = this._$7;\n aS = this._$H;\n aM = this._$f;\n aL = this._$g;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n var aO = aK[aQ++];\n aI[aN++] = (aT * aP + aS * aO);\n aI[aN++] = (aM * aP + aL * aO);\n }\n return;\n case (aD._$go | aD._$gb):\n aS = this._$H;\n aR = this._$k;\n aM = this._$f;\n aJ = this._$w;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n aI[aN++] = (aS * aK[aQ++] + aR);\n aI[aN++] = (aM * aP + aJ);\n }\n return;\n case (aD._$go):\n aS = this._$H;\n aM = this._$f;\n while (--aH >= 0) {\n var aP = aK[aQ++];\n aI[aN++] = (aS * aK[aQ++]);\n aI[aN++] = (aM * aP);\n }\n return;\n case (aD._$fo | aD._$gb):\n aT = this._$7;\n aR = this._$k;\n aL = this._$g;\n aJ = this._$w;\n while (--aH >= 0) {\n aI[aN++] = (aT * aK[aQ++] + aR);\n aI[aN++] = (aL * aK[aQ++] + aJ);\n }\n return;\n case (aD._$fo):\n aT = this._$7;\n aL = this._$g;\n while (--aH >= 0) {\n aI[aN++] = (aT * aK[aQ++]);\n aI[aN++] = (aL * aK[aQ++]);\n }\n return;\n case (aD._$gb):\n aR = this._$k;\n aJ = this._$w;\n while (--aH >= 0) {\n aI[aN++] = (aK[aQ++] + aR);\n aI[aN++] = (aK[aQ++] + aJ);\n }\n return;\n case (aD.STATE_IDENTITY):\n if (aK != aI || aQ != aN) {\n P._$jT(aK, aQ, aI, aN, aH * 2);\n }\n return;\n }\n}\n;\naD.prototype.update = function() {\n if (this._$H == 0 && this._$f == 0) {\n if (this._$7 == 1 && this._$g == 1) {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = aD.STATE_IDENTITY;\n this._$Z = aD._$pS;\n } else {\n this._$hi = aD._$gb;\n this._$Z = aD._$hb;\n }\n } else {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = aD._$fo;\n this._$Z = aD._$kS;\n } else {\n this._$hi = (aD._$fo | aD._$gb);\n this._$Z = aD._$kS;\n }\n }\n } else {\n if (this._$7 == 0 && this._$g == 0) {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = aD._$go;\n this._$Z = aD._$kS;\n } else {\n this._$hi = (aD._$go | aD._$gb);\n this._$Z = aD._$kS;\n }\n } else {\n if (this._$k == 0 && this._$w == 0) {\n this._$hi = (aD._$go | aD._$fo);\n this._$Z = aD._$kS;\n } else {\n this._$hi = (aD._$go | aD._$fo | aD._$gb);\n this._$Z = aD._$kS;\n }\n }\n }\n}\n;\naD.prototype._$RT = function(aK) {\n this._$IT(aK);\n var aJ = aK[0];\n var aH = aK[2];\n var aN = aK[1];\n var aM = aK[3];\n var aI = Math.sqrt(aJ * aJ + aN * aN);\n var aL = aJ * aM - aH * aN;\n if (aI == 0) {\n if (Q._$so) {\n console.log(\"affine._$RT() / rt==0\");\n }\n } else {\n aK[0] = aI;\n aK[1] = aL / aI;\n aK[2] = (aN * aM + aJ * aH) / aL;\n aK[3] = Math.atan2(aN, aJ);\n }\n}\n;\naD.prototype._$ho = function(aN, aM, aI, aH) {\n var aL = new Float32Array(6);\n var aK = new Float32Array(6);\n aN._$RT(aL);\n aM._$RT(aK);\n var aJ = new Float32Array(6);\n aJ[0] = aL[0] + (aK[0] - aL[0]) * aI;\n aJ[1] = aL[1] + (aK[1] - aL[1]) * aI;\n aJ[2] = aL[2] + (aK[2] - aL[2]) * aI;\n aJ[3] = aL[3] + (aK[3] - aL[3]) * aI;\n aJ[4] = aL[4] + (aK[4] - aL[4]) * aI;\n aJ[5] = aL[5] + (aK[5] - aL[5]) * aI;\n aH._$CT(aJ);\n}\n;\naD.prototype._$CT = function(aJ) {\n var aI = Math.cos(aJ[3]);\n var aH = Math.sin(aJ[3]);\n this._$7 = aJ[0] * aI;\n this._$f = aJ[0] * aH;\n this._$H = aJ[1] * (aJ[2] * aI - aH);\n this._$g = aJ[1] * (aJ[2] * aH + aI);\n this._$k = aJ[4];\n this._$w = aJ[5];\n this.update();\n}\n;\naD.prototype._$IT = function(aH) {\n aH[0] = this._$7;\n aH[1] = this._$f;\n aH[2] = this._$H;\n aH[3] = this._$g;\n aH[4] = this._$k;\n aH[5] = this._$w;\n}\n;\nfunction Y() {\n if (j) {\n return;\n }\n ah.prototype.constructor.call(this);\n this.motions = new Array();\n this._$7r = null;\n this._$7r = Y._$Co++;\n this._$D0 = 30;\n this._$yT = 0;\n this._$E = true;\n this.loopFadeIn = true;\n this._$AS = -1;\n _$a0();\n}\nY.prototype = new ah();\nY._$cs = \"VISIBLE:\";\nY._$ar = \"LAYOUT:\";\nY._$Co = 0;\nY._$D2 = [];\nY._$1T = 1;\nY.loadMotion = function(aR) {\n var aM = new Y();\n var aI = [0];\n var aP = aR.length;\n aM._$yT = 0;\n for (var aJ = 0; aJ < aP; ++aJ) {\n var aQ = (aR[aJ] & 255);\n if (aQ == \"\\n\" || aQ == \"\\r\") {\n continue;\n }\n if (aQ == \"#\") {\n for (; aJ < aP; ++aJ) {\n if (aR[aJ] == \"\\n\" || aR[aJ] == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if (aQ == \"$\") {\n var aT = aJ;\n var aK = -1;\n for (; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \"=\") {\n aK = aJ;\n break;\n }\n }\n var aO = false;\n if (aK >= 0) {\n if (aK == aT + 4 && aR[aT + 1] == \"f\" && aR[aT + 2] == \"p\" && aR[aT + 3] == \"s\") {\n aO = true;\n }\n for (aJ = aK + 1; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \",\" || aQ == \" \" || aQ == \"\\t\") {\n continue;\n }\n var aL = G._$LS(aR, aP, aJ, aI);\n if (aI[0] > 0) {\n if (aO && 5 < aL && aL < 121) {\n aM._$D0 = aL;\n }\n }\n aJ = aI[0];\n }\n }\n for (; aJ < aP; ++aJ) {\n if (aR[aJ] == \"\\n\" || aR[aJ] == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if ((\"a\" <= aQ && aQ <= \"z\") || (\"A\" <= aQ && aQ <= \"Z\") || aQ == \"_\") {\n var aT = aJ;\n var aK = -1;\n for (; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \"=\") {\n aK = aJ;\n break;\n }\n }\n if (aK >= 0) {\n var aN = new t();\n if (G.startsWith(aR, aT, Y._$cs)) {\n aN._$RP = t._$hs;\n aN._$4P = new String(aR,aT,aK - aT);\n } else {\n if (G.startsWith(aR, aT, Y._$ar)) {\n aN._$4P = new String(aR,aT + 7,aK - aT - 7);\n if (G.startsWith(aR, aT + 7, \"ANCHOR_X\")) {\n aN._$RP = t._$xs;\n } else {\n if (G.startsWith(aR, aT + 7, \"ANCHOR_Y\")) {\n aN._$RP = t._$us;\n } else {\n if (G.startsWith(aR, aT + 7, \"SCALE_X\")) {\n aN._$RP = t._$qs;\n } else {\n if (G.startsWith(aR, aT + 7, \"SCALE_Y\")) {\n aN._$RP = t._$Ys;\n } else {\n if (G.startsWith(aR, aT + 7, \"X\")) {\n aN._$RP = t._$ws;\n } else {\n if (G.startsWith(aR, aT + 7, \"Y\")) {\n aN._$RP = t._$Ns;\n }\n }\n }\n }\n }\n }\n } else {\n aN._$RP = t._$Fr;\n aN._$4P = new String(aR,aT,aK - aT);\n }\n }\n aM.motions.push(aN);\n var aS = 0;\n Y._$D2.clear();\n for (aJ = aK + 1; aJ < aP; ++aJ) {\n aQ = (aR[aJ] & 255);\n if (aQ == \"\\r\" || aQ == \"\\n\") {\n break;\n }\n if (aQ == \",\" || aQ == \" \" || aQ == \"\\t\") {\n continue;\n }\n var aL = G._$LS(aR, aP, aJ, aI);\n if (aI[0] > 0) {\n Y._$D2.push(aL);\n aS++;\n var aH = aI[0];\n if (aH < aJ) {\n console.log(\"_$n0 _$hi . @Live2DMotion loadMotion()\\n\");\n break;\n }\n aJ = aH;\n }\n }\n aN._$I0 = Y._$D2._$BL();\n if (aS > aM._$yT) {\n aM._$yT = aS;\n }\n }\n }\n }\n aM._$AS = ((1000 * aM._$yT) / aM._$D0) | 0;\n return aM;\n}\n;\nY.prototype.getDurationMSec = function() {\n return this._$AS;\n}\n;\nY.prototype.dump = function() {\n for (var aJ = 0; aJ < this.motions.length; aJ++) {\n var aH = this.motions[aJ];\n console.log(\"_$wL[%s] [%d]. \", aH._$4P, aH._$I0.length);\n for (var aI = 0; aI < aH._$I0.length && aI < 10; aI++) {\n console.log(\"%5.2f ,\", aH._$I0[aI]);\n }\n console.log(\"\\n\");\n }\n}\n;\nY.prototype.updateParamExe = function(aH, aL, aO, aX) {\n var aM = aL - aX._$z2;\n var aV = aM * this._$D0 / 1000;\n var aJ = aV | 0;\n var aP = aV - aJ;\n for (var aU = 0; aU < this.motions.length; aU++) {\n var aS = this.motions[aU];\n var aK = aS._$I0.length;\n var aQ = aS._$4P;\n if (aS._$RP == t._$hs) {\n var aT = aS._$I0[(aJ >= aK ? aK - 1 : aJ)];\n aH.setParamFloat(aQ, aT);\n } else {\n if (t._$ws <= aS._$RP && aS._$RP <= t._$Ys) {} else {\n var aR = aH.getParamFloat(aQ);\n var aY = aS._$I0[(aJ >= aK ? aK - 1 : aJ)];\n var aW = aS._$I0[(aJ + 1 >= aK ? aK - 1 : aJ + 1)];\n var aI = aY + (aW - aY) * aP;\n var aN = aR + (aI - aR) * aO;\n aH.setParamFloat(aQ, aN);\n }\n }\n }\n if (aJ >= this._$yT) {\n if (this._$E) {\n aX._$z2 = aL;\n if (this.loopFadeIn) {\n aX._$bs = aL;\n }\n } else {\n aX._$9L = true;\n }\n }\n}\n;\nY.prototype._$r0 = function() {\n return this._$E;\n}\n;\nY.prototype._$aL = function(aH) {\n this._$E = aH;\n}\n;\nY.prototype.isLoopFadeIn = function() {\n return this.loopFadeIn;\n}\n;\nY.prototype.setLoopFadeIn = function(aH) {\n this.loopFadeIn = aH;\n}\n;\nfunction aE() {\n this._$P = new Float32Array(100);\n this.size = 0;\n}\naE.prototype.clear = function() {\n this.size = 0;\n}\n;\naE.prototype.add = function(aI) {\n if (this._$P.length <= this.size) {\n var aH = new Float32Array(this.size * 2);\n P._$jT(this._$P, 0, aH, 0, this.size);\n this._$P = aH;\n }\n this._$P[this.size++] = aI;\n}\n;\naE.prototype._$BL = function() {\n var aH = new Float32Array(this.size);\n P._$jT(this._$P, 0, aH, 0, this.size);\n return aH;\n}\n;\nfunction t() {\n this._$4P = null;\n this._$I0 = null;\n this._$RP = null;\n}\nt._$Fr = 0;\nt._$hs = 1;\nt._$ws = 100;\nt._$Ns = 101;\nt._$xs = 102;\nt._$us = 103;\nt._$qs = 104;\nt._$Ys = 105;\nfunction aw() {}\naw._$Ms = 1;\naw._$Qs = 2;\naw._$i2 = 0;\naw._$No = 2;\naw._$do = aw._$Ms;\naw._$Ls = true;\naw._$1r = 5;\naw._$Qb = 65;\naw._$J = 0.0001;\naw._$FT = 0.001;\naw._$Ss = 3;\nfunction ay() {}\nay._$o7 = 6;\nay._$S7 = 7;\nay._$s7 = 8;\nay._$77 = 9;\nay.LIVE2D_FORMAT_VERSION_V2_10_SDK2 = 10;\nay.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1 = 11;\nay._$T7 = ay.LIVE2D_FORMAT_VERSION_V2_11_SDK2_1;\nay._$Is = -2004318072;\nay._$h0 = 0;\nay._$4L = 23;\nay._$7P = 33;\nay._$uT = function(aH) {\n console.log(\"_$bo :: _$6 _$mo _$E0 : %d\\n\", aH);\n}\n;\nay._$9o = function(aH) {\n if (aH < 40) {\n ay._$uT(aH);\n return null;\n } else {\n if (aH < 50) {\n ay._$uT(aH);\n return null;\n } else {\n if (aH < 60) {\n ay._$uT(aH);\n return null;\n } else {\n if (aH < 100) {\n switch (aH) {\n case 65:\n return new E();\n case 66:\n return new g();\n case 67:\n return new aA();\n case 68:\n return new ab();\n case 69:\n return new X();\n case 70:\n return new b();\n default:\n ay._$uT(aH);\n return null;\n }\n } else {\n if (aH < 150) {\n switch (aH) {\n case 131:\n return new f();\n case 133:\n return new s();\n case 136:\n return new w();\n case 137:\n return new an();\n case 142:\n return new aq();\n }\n }\n }\n }\n }\n }\n ay._$uT(aH);\n return null;\n}\n;\nfunction y(aH) {\n if (j) {\n return;\n }\n this._$QT = true;\n this._$co = -1;\n this._$qo = 0;\n this._$pb = new Array(y._$is);\n this._$_2 = new Float32Array(y._$is);\n this._$vr = new Float32Array(y._$is);\n this._$Rr = new Float32Array(y._$is);\n this._$Or = new Float32Array(y._$is);\n this._$fs = new Float32Array(y._$is);\n this._$Js = new Array(y._$is);\n this._$3S = new Array();\n this._$aS = new Array();\n this._$Bo = null;\n this._$F2 = new Array();\n this._$db = new Array();\n this._$8b = new Array();\n this._$Hr = new Array();\n this._$Ws = null;\n this._$Vs = null;\n this._$Er = null;\n this._$Es = new Int16Array(aw._$Qb);\n this._$ZP = new Float32Array(aw._$1r * 2);\n this._$Ri = aH;\n this._$b0 = y._$HP++;\n this.clipManager = null;\n this.dp_webgl = null;\n}\ny._$HP = 0;\ny._$_0 = true;\ny._$V2 = -1;\ny._$W0 = -1;\ny._$jr = false;\ny._$ZS = true;\ny._$tr = (-1000000);\ny._$lr = (1000000);\ny._$is = 32;\ny._$e = false;\ny.prototype.getDrawDataIndex = function(aI) {\n for (var aH = this._$aS.length - 1; aH >= 0; --aH) {\n if (this._$aS[aH] != null && this._$aS[aH].getDrawDataID() == aI) {\n return aH;\n }\n }\n return -1;\n}\n;\ny.prototype.getDrawData = function(aH) {\n if (aH instanceof Z) {\n if (this._$Bo == null) {\n this._$Bo = new Object();\n var aJ = this._$aS.length;\n for (var aI = 0; aI < aJ; aI++) {\n var aL = this._$aS[aI];\n var aK = aL.getDrawDataID();\n if (aK == null) {\n continue;\n }\n this._$Bo[aK] = aL;\n }\n }\n return this._$Bo[id];\n } else {\n if (aH < this._$aS.length) {\n return this._$aS[aH];\n } else {\n return null;\n }\n }\n}\n;\ny.prototype.release = function() {\n this._$3S.clear();\n this._$aS.clear();\n this._$F2.clear();\n if (this._$Bo != null) {\n this._$Bo.clear();\n }\n this._$db.clear();\n this._$8b.clear();\n this._$Hr.clear();\n}\n;\ny.prototype.init = function() {\n this._$co++;\n if (this._$F2.length > 0) {\n this.release();\n }\n var aO = this._$Ri.getModelImpl();\n var aT = aO._$Xr();\n var aS = aT.length;\n var aH = new Array();\n var a3 = new Array();\n for (var aV = 0; aV < aS; ++aV) {\n var a4 = aT[aV];\n this._$F2.push(a4);\n this._$Hr.push(a4.init(this));\n var aK = a4.getBaseData();\n var aR = aK.length;\n for (var aU = 0; aU < aR; ++aU) {\n aH.push(aK[aU]);\n }\n for (var aU = 0; aU < aR; ++aU) {\n var aM = aK[aU].init(this);\n aM._$l2(aV);\n a3.push(aM);\n }\n var a1 = a4.getDrawData();\n var aP = a1.length;\n for (var aU = 0; aU < aP; ++aU) {\n var aZ = a1[aU];\n var a0 = aZ.init(this);\n a0._$IP = aV;\n this._$aS.push(aZ);\n this._$8b.push(a0);\n }\n }\n var aY = aH.length;\n var aN = n._$2o();\n while (true) {\n var aX = false;\n for (var aV = 0; aV < aY; ++aV) {\n var aL = aH[aV];\n if (aL == null) {\n continue;\n }\n var a2 = aL.getTargetBaseDataID();\n if (a2 == null || a2 == aN || this.getBaseDataIndex(a2) >= 0) {\n this._$3S.push(aL);\n this._$db.push(a3[aV]);\n aH[aV] = null;\n aX = true;\n }\n }\n if (!aX) {\n break;\n }\n }\n var aI = aO._$E2();\n if (aI != null) {\n var aJ = aI._$1s();\n if (aJ != null) {\n var aW = aJ.length;\n for (var aV = 0; aV < aW; ++aV) {\n var aQ = aJ[aV];\n if (aQ == null) {\n continue;\n }\n this._$02(aQ.getParamID(), aQ.getDefaultValue(), aQ.getMinValue(), aQ.getMaxValue());\n }\n }\n }\n this.clipManager = new W(this.dp_webgl);\n this.clipManager.init(this, this._$aS, this._$8b);\n this._$QT = true;\n}\n;\ny.prototype.update = function() {\n if (y._$e) {\n q.start(\"_$zL\");\n }\n var aK = this._$_2.length;\n for (var aW = 0; aW < aK; aW++) {\n if (this._$_2[aW] != this._$vr[aW]) {\n this._$Js[aW] = y._$ZS;\n this._$vr[aW] = this._$_2[aW];\n }\n }\n var aX = false;\n var aQ = this._$3S.length;\n var aN = this._$aS.length;\n var aS = a._$or();\n var aZ = a._$Pr();\n var aU = aZ - aS + 1;\n if (this._$Ws == null || this._$Ws.length < aU) {\n this._$Ws = new Int16Array(aU);\n this._$Vs = new Int16Array(aU);\n }\n for (var aW = 0; aW < aU; aW++) {\n this._$Ws[aW] = y._$V2;\n this._$Vs[aW] = y._$V2;\n }\n if (this._$Er == null || this._$Er.length < aN) {\n this._$Er = new Int16Array(aN);\n }\n for (var aW = 0; aW < aN; aW++) {\n this._$Er[aW] = y._$W0;\n }\n if (y._$e) {\n q.dump(\"_$zL\");\n }\n if (y._$e) {\n q.start(\"_$UL\");\n }\n var aL = null;\n for (var aV = 0; aV < aQ; ++aV) {\n var aJ = this._$3S[aV];\n var aH = this._$db[aV];\n try {\n aJ._$Nr(this, aH);\n aJ._$2b(this, aH);\n } catch (aY) {\n if (aL == null) {\n aL = aY;\n }\n }\n }\n if (aL != null) {\n if (y._$_0) {\n q._$Rb(aL);\n }\n }\n if (y._$e) {\n q.dump(\"_$UL\");\n }\n if (y._$e) {\n q.start(\"_$DL\");\n }\n var aR = null;\n for (var aO = 0; aO < aN; ++aO) {\n var aM = this._$aS[aO];\n var aI = this._$8b[aO];\n try {\n aM._$Nr(this, aI);\n if (aI._$u2()) {\n continue;\n }\n aM._$2b(this, aI);\n var aT = Math.floor(aM._$zS(this, aI) - aS);\n var aP;\n try {\n aP = this._$Vs[aT];\n } catch (aY) {\n console.log(\"_$li :: %s / %s @@_$fS\\n\", aY.toString(), aM.getDrawDataID().toString());\n aT = Math.floor(aM._$zS(this, aI) - aS);\n continue;\n }\n if (aP == y._$V2) {\n this._$Ws[aT] = aO;\n } else {\n this._$Er[aP] = aO;\n }\n this._$Vs[aT] = aO;\n } catch (aY) {\n if (aR == null) {\n aR = aY;\n Q._$sT(Q._$H7);\n }\n }\n }\n if (aR != null) {\n if (y._$_0) {\n q._$Rb(aR);\n }\n }\n if (y._$e) {\n q.dump(\"_$DL\");\n }\n if (y._$e) {\n q.start(\"_$eL\");\n }\n for (var aW = this._$Js.length - 1; aW >= 0; aW--) {\n this._$Js[aW] = y._$jr;\n }\n this._$QT = false;\n if (y._$e) {\n q.dump(\"_$eL\");\n }\n return aX;\n}\n;\ny.prototype.preDraw = function(aH) {\n if (this.clipManager != null) {\n aH._$ZT();\n this.clipManager.setupClip(this, aH);\n }\n}\n;\ny.prototype.draw = function(aM) {\n if (this._$Ws == null) {\n q._$li(\"call _$Ri.update() before _$Ri.draw() \");\n return;\n }\n var aP = this._$Ws.length;\n aM._$ZT();\n for (var aK = 0; aK < aP; ++aK) {\n var aN = this._$Ws[aK];\n if (aN == y._$V2) {\n continue;\n }\n do {\n var aH = this._$aS[aN];\n var aI = this._$8b[aN];\n if (aI._$yo()) {\n var aJ = aI._$IP;\n var aL = this._$Hr[aJ];\n aI._$VS = aL.getPartsOpacity();\n aH.draw(aM, this, aI);\n }\n var aO = this._$Er[aN];\n if (aO <= aN || aO == y._$W0) {\n break;\n }\n aN = aO;\n } while (true);\n }\n}\n;\ny.prototype.getParamIndex = function(aH) {\n for (var aI = this._$pb.length - 1; aI >= 0; --aI) {\n if (this._$pb[aI] == aH) {\n return aI;\n }\n }\n return this._$02(aH, 0, y._$tr, y._$lr);\n}\n;\ny.prototype._$BS = function(aH) {\n return this.getBaseDataIndex(aH);\n}\n;\ny.prototype.getBaseDataIndex = function(aH) {\n for (var aI = this._$3S.length - 1; aI >= 0; --aI) {\n if (this._$3S[aI] != null && this._$3S[aI].getBaseDataID() == aH) {\n return aI;\n }\n }\n return -1;\n}\n;\ny.prototype._$UT = function(aJ, aH) {\n var aI = new Float32Array(aH);\n P._$jT(aJ, 0, aI, 0, aJ.length);\n return aI;\n}\n;\ny.prototype._$02 = function(aN, aM, aL, aH) {\n if (this._$qo >= this._$pb.length) {\n var aK = this._$pb.length;\n var aJ = new Array(aK * 2);\n P._$jT(this._$pb, 0, aJ, 0, aK);\n this._$pb = aJ;\n this._$_2 = this._$UT(this._$_2, aK * 2);\n this._$vr = this._$UT(this._$vr, aK * 2);\n this._$Rr = this._$UT(this._$Rr, aK * 2);\n this._$Or = this._$UT(this._$Or, aK * 2);\n var aI = new Array();\n P._$jT(this._$Js, 0, aI, 0, aK);\n this._$Js = aI;\n }\n this._$pb[this._$qo] = aN;\n this._$_2[this._$qo] = aM;\n this._$vr[this._$qo] = aM;\n this._$Rr[this._$qo] = aL;\n this._$Or[this._$qo] = aH;\n this._$Js[this._$qo] = y._$ZS;\n return this._$qo++;\n}\n;\ny.prototype._$Zo = function(aI, aH) {\n this._$3S[aI] = aH;\n}\n;\ny.prototype.setParamFloat = function(aH, aI) {\n if (aI < this._$Rr[aH]) {\n aI = this._$Rr[aH];\n }\n if (aI > this._$Or[aH]) {\n aI = this._$Or[aH];\n }\n this._$_2[aH] = aI;\n}\n;\ny.prototype.loadParam = function() {\n var aH = this._$_2.length;\n if (aH > this._$fs.length) {\n aH = this._$fs.length;\n }\n P._$jT(this._$fs, 0, this._$_2, 0, aH);\n}\n;\ny.prototype.saveParam = function() {\n var aH = this._$_2.length;\n if (aH > this._$fs.length) {\n this._$fs = new Float32Array(aH);\n }\n P._$jT(this._$_2, 0, this._$fs, 0, aH);\n}\n;\ny.prototype._$v2 = function() {\n return this._$co;\n}\n;\ny.prototype._$WS = function() {\n return this._$QT;\n}\n;\ny.prototype._$Xb = function(aH) {\n return this._$Js[aH] == y._$ZS;\n}\n;\ny.prototype._$vs = function() {\n return this._$Es;\n}\n;\ny.prototype._$Tr = function() {\n return this._$ZP;\n}\n;\ny.prototype.getBaseData = function(aH) {\n return this._$3S[aH];\n}\n;\ny.prototype.getParamFloat = function(aH) {\n return this._$_2[aH];\n}\n;\ny.prototype.getParamMax = function(aH) {\n return this._$Or[aH];\n}\n;\ny.prototype.getParamMin = function(aH) {\n return this._$Rr[aH];\n}\n;\ny.prototype.setPartsOpacity = function(aJ, aH) {\n var aI = this._$Hr[aJ];\n aI.setPartsOpacity(aH);\n}\n;\ny.prototype.getPartsOpacity = function(aI) {\n var aH = this._$Hr[aI];\n return aH.getPartsOpacity();\n}\n;\ny.prototype.getPartsDataIndex = function(aI) {\n for (var aH = this._$F2.length - 1; aH >= 0; --aH) {\n if (this._$F2[aH] != null && this._$F2[aH]._$p2() == aI) {\n return aH;\n }\n }\n return -1;\n}\n;\ny.prototype._$q2 = function(aH) {\n return this._$db[aH];\n}\n;\ny.prototype._$C2 = function(aH) {\n return this._$8b[aH];\n}\n;\ny.prototype._$Bb = function(aH) {\n return this._$Hr[aH];\n}\n;\ny.prototype._$5s = function(aO, aK) {\n var aJ = this._$Ws.length;\n var aN = aO;\n for (var aL = 0; aL < aJ; ++aL) {\n var aI = this._$Ws[aL];\n if (aI == y._$V2) {\n continue;\n }\n do {\n var aM = this._$8b[aI];\n if (aM._$yo()) {\n aM._$GT()._$B2(this, aM, aN);\n aN += aK;\n }\n var aH = this._$Er[aI];\n if (aH <= aI || aH == y._$W0) {\n break;\n }\n aI = aH;\n } while (true);\n }\n}\n;\ny.prototype.setDrawParam = function(aH) {\n this.dp_webgl = aH;\n}\n;\ny.prototype.getDrawParam = function() {\n return this.dp_webgl;\n}\n;\nfunction ap() {}\nap._$0T = function(aH) {\n return ap._$0T(new _$5(aH));\n}\n;\nap._$0T = function(aJ) {\n if (!aJ.exists()) {\n throw new _$ls(aJ._$3b());\n }\n var aH = aJ.length();\n var aI = new Int8Array(aH);\n var aM = new _$Xs(new _$kb(aJ),8192);\n var aK;\n var aL = 0;\n while ((aK = aM.read(aI, aL, aH - aL)) > 0) {\n aL += aK;\n }\n return aI;\n}\n;\nap._$C = function(aJ) {\n var aI = null;\n var aL = null;\n try {\n aI = (aJ instanceof Array) ? aJ : new _$Xs(aJ,8192);\n aL = new _$js();\n var aM = 1000;\n var aK;\n var aH = new Int8Array(aM);\n while ((aK = aI.read(aH)) > 0) {\n aL.write(aH, 0, aK);\n }\n return aL._$TS();\n } finally {\n if (aJ != null) {\n aJ.close();\n }\n if (aL != null) {\n aL.flush();\n aL.close();\n }\n }\n}\n;\nfunction ar() {\n if (j) {\n return;\n }\n this._$12 = null;\n this._$bb = null;\n this._$_L = null;\n this._$jo = null;\n this._$iL = null;\n this._$0L = null;\n this._$Br = null;\n this._$Dr = null;\n this._$Cb = null;\n this._$mr = null;\n this._$_L = az.STATE_FIRST;\n this._$Br = 4000;\n this._$Dr = 100;\n this._$Cb = 50;\n this._$mr = 150;\n this._$jo = true;\n this._$iL = \"PARAM_EYE_L_OPEN\";\n this._$0L = \"PARAM_EYE_R_OPEN\";\n}\nar.prototype._$T2 = function() {\n var aI = P.getUserTimeMSec();\n var aH = Math._$10();\n return (aI + aH * (2 * this._$Br - 1));\n}\n;\nar.prototype._$uo = function(aH) {\n this._$Br = aH;\n}\n;\nar.prototype._$QS = function(aI, aH, aJ) {\n this._$Dr = aI;\n this._$Cb = aH;\n this._$mr = aJ;\n}\n;\nar.prototype._$7T = function(aI) {\n var aK = P.getUserTimeMSec();\n var aH;\n var aJ = 0;\n switch (this._$_L) {\n case STATE_CLOSING:\n aJ = (aK - this._$bb) / this._$Dr;\n if (aJ >= 1) {\n aJ = 1;\n this._$_L = az.STATE_CLOSED;\n this._$bb = aK;\n }\n aH = 1 - aJ;\n break;\n case STATE_CLOSED:\n aJ = (aK - this._$bb) / this._$Cb;\n if (aJ >= 1) {\n this._$_L = az.STATE_OPENING;\n this._$bb = aK;\n }\n aH = 0;\n break;\n case STATE_OPENING:\n aJ = (aK - this._$bb) / this._$mr;\n if (aJ >= 1) {\n aJ = 1;\n this._$_L = az.STATE_INTERVAL;\n this._$12 = this._$T2();\n }\n aH = aJ;\n break;\n case STATE_INTERVAL:\n if (this._$12 < aK) {\n this._$_L = az.STATE_CLOSING;\n this._$bb = aK;\n }\n aH = 1;\n break;\n case STATE_FIRST:\n default:\n this._$_L = az.STATE_INTERVAL;\n this._$12 = this._$T2();\n aH = 1;\n break;\n }\n if (!this._$jo) {\n aH = -aH;\n }\n aI.setParamFloat(this._$iL, aH);\n aI.setParamFloat(this._$0L, aH);\n}\n;\nvar az = function() {};\naz.STATE_FIRST = \"STATE_FIRST\";\naz.STATE_INTERVAL = \"STATE_INTERVAL\";\naz.STATE_CLOSING = \"STATE_CLOSING\";\naz.STATE_CLOSED = \"STATE_CLOSED\";\naz.STATE_OPENING = \"STATE_OPENING\";\nfunction x() {\n if (j) {\n return;\n }\n ax.prototype.constructor.call(this);\n this._$sb = new Int32Array(x._$As);\n this._$U2 = new Array();\n this.transform = null;\n this.gl = null;\n if (x._$NT == null) {\n x._$NT = x._$9r(256);\n x._$vS = x._$9r(256);\n x._$no = x._$vb(256);\n }\n}\nx.prototype = new ax();\nx._$As = 32;\nx._$Gr = false;\nx._$NT = null;\nx._$vS = null;\nx._$no = null;\nx._$9r = function(aH) {\n var aI = new Float32Array(aH);\n return aI;\n}\n;\nx._$vb = function(aH) {\n var aI = new Int16Array(aH);\n return aI;\n}\n;\nx._$cr = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = x._$9r(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nx._$mb = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = x._$vb(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nx._$Hs = function() {\n return x._$Gr;\n}\n;\nx._$as = function(aH) {\n x._$Gr = aH;\n}\n;\nx.prototype.setGL = function(aH) {\n this.gl = aH;\n}\n;\nx.prototype.setTransform = function(aH) {\n this.transform = aH;\n}\n;\nx.prototype._$ZT = function() {}\n;\nx.prototype._$Uo = function(aO, aH, aP, aI, aQ, aM, aK, aJ) {\n if (aM < 0.01) {\n return;\n }\n var aL = this._$U2[aO];\n var aN = aM > 0.9 ? Q.EXPAND_W : 0;\n this.gl.drawElements(aL, aP, aI, aQ, aM, aN, this.transform, aJ);\n}\n;\nx.prototype._$Rs = function() {\n throw new Error(\"_$Rs\");\n}\n;\nx.prototype._$Ds = function(aH) {\n throw new Error(\"_$Ds\");\n}\n;\nx.prototype._$K2 = function() {\n for (var aH = 0; aH < this._$sb.length; aH++) {\n var aI = this._$sb[aH];\n if (aI != 0) {\n this.gl._$Sr(1, this._$sb, aH);\n this._$sb[aH] = 0;\n }\n }\n}\n;\nx.prototype.setTexture = function(aI, aH) {\n if (this._$sb.length < aI + 1) {\n this._$nS(aI);\n }\n this._$sb[aI] = aH;\n}\n;\nx.prototype.setTexture = function(aH, aI) {\n if (this._$sb.length < aH + 1) {\n this._$nS(aH);\n }\n this._$U2[aH] = aI;\n}\n;\nx.prototype._$nS = function(aH) {\n var aK = Math.max(this._$sb.length * 2, aH + 1 + 10);\n var aI = new Int32Array(aK);\n P._$jT(this._$sb, 0, aI, 0, this._$sb.length);\n this._$sb = aI;\n var aJ = new Array();\n P._$jT(this._$U2, 0, aJ, 0, this._$U2.length);\n this._$U2 = aJ;\n}\n;\nfunction ab() {\n if (j) {\n return;\n }\n c.prototype.constructor.call(this);\n this._$GS = null;\n this._$Y0 = null;\n}\nab.prototype = new c();\nab._$Xo = new Float32Array(2);\nab._$io = new Float32Array(2);\nab._$0o = new Float32Array(2);\nab._$Lo = new Float32Array(2);\nab._$To = new Float32Array(2);\nab._$Po = new Float32Array(2);\nab._$gT = new Array();\nab.prototype._$zP = function() {\n this._$GS = new g();\n this._$GS._$zP();\n this._$Y0 = new Array();\n}\n;\nab.prototype.getType = function() {\n return c._$c2;\n}\n;\nab.prototype._$F0 = function(aH) {\n c.prototype._$F0.call(this, aH);\n this._$GS = aH._$nP();\n this._$Y0 = aH._$nP();\n c.prototype.readV2_opacity.call(this, aH);\n}\n;\nab.prototype.init = function(aH) {\n var aI = new al(this);\n aI._$Yr = new X();\n if (this._$32()) {\n aI._$Wr = new X();\n }\n return aI;\n}\n;\nab.prototype._$Nr = function(bf, bx) {\n if (!((this == bx._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var bm = bx;\n if (!this._$GS._$Ur(bf)) {\n return;\n }\n var bw = ab._$gT;\n bw[0] = false;\n var a2 = this._$GS._$Q2(bf, bw);\n bx._$Ib(bw[0]);\n this.interpolateOpacity(bf, this._$GS, bx, bw);\n var a3 = bf._$vs();\n var ba = bf._$Tr();\n this._$GS._$zr(a3, ba, a2);\n if (a2 <= 0) {\n var bn = this._$Y0[a3[0]];\n bm._$Yr.init(bn);\n } else {\n if (a2 == 1) {\n var bn = this._$Y0[a3[0]];\n var bl = this._$Y0[a3[1]];\n var a9 = ba[0];\n bm._$Yr._$fL = bn._$fL + (bl._$fL - bn._$fL) * a9;\n bm._$Yr._$gL = bn._$gL + (bl._$gL - bn._$gL) * a9;\n bm._$Yr._$B0 = bn._$B0 + (bl._$B0 - bn._$B0) * a9;\n bm._$Yr._$z0 = bn._$z0 + (bl._$z0 - bn._$z0) * a9;\n bm._$Yr._$qT = bn._$qT + (bl._$qT - bn._$qT) * a9;\n } else {\n if (a2 == 2) {\n var bn = this._$Y0[a3[0]];\n var bl = this._$Y0[a3[1]];\n var a1 = this._$Y0[a3[2]];\n var a0 = this._$Y0[a3[3]];\n var a9 = ba[0];\n var a8 = ba[1];\n var bC = bn._$fL + (bl._$fL - bn._$fL) * a9;\n var bB = a1._$fL + (a0._$fL - a1._$fL) * a9;\n bm._$Yr._$fL = bC + (bB - bC) * a8;\n bC = bn._$gL + (bl._$gL - bn._$gL) * a9;\n bB = a1._$gL + (a0._$gL - a1._$gL) * a9;\n bm._$Yr._$gL = bC + (bB - bC) * a8;\n bC = bn._$B0 + (bl._$B0 - bn._$B0) * a9;\n bB = a1._$B0 + (a0._$B0 - a1._$B0) * a9;\n bm._$Yr._$B0 = bC + (bB - bC) * a8;\n bC = bn._$z0 + (bl._$z0 - bn._$z0) * a9;\n bB = a1._$z0 + (a0._$z0 - a1._$z0) * a9;\n bm._$Yr._$z0 = bC + (bB - bC) * a8;\n bC = bn._$qT + (bl._$qT - bn._$qT) * a9;\n bB = a1._$qT + (a0._$qT - a1._$qT) * a9;\n bm._$Yr._$qT = bC + (bB - bC) * a8;\n } else {\n if (a2 == 3) {\n var aP = this._$Y0[a3[0]];\n var aO = this._$Y0[a3[1]];\n var bu = this._$Y0[a3[2]];\n var bs = this._$Y0[a3[3]];\n var aK = this._$Y0[a3[4]];\n var aJ = this._$Y0[a3[5]];\n var bj = this._$Y0[a3[6]];\n var bi = this._$Y0[a3[7]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var bC = aP._$fL + (aO._$fL - aP._$fL) * a9;\n var bB = bu._$fL + (bs._$fL - bu._$fL) * a9;\n var bz = aK._$fL + (aJ._$fL - aK._$fL) * a9;\n var by = bj._$fL + (bi._$fL - bj._$fL) * a9;\n bm._$Yr._$fL = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$gL + (aO._$gL - aP._$gL) * a9;\n bB = bu._$gL + (bs._$gL - bu._$gL) * a9;\n bz = aK._$gL + (aJ._$gL - aK._$gL) * a9;\n by = bj._$gL + (bi._$gL - bj._$gL) * a9;\n bm._$Yr._$gL = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$B0 + (aO._$B0 - aP._$B0) * a9;\n bB = bu._$B0 + (bs._$B0 - bu._$B0) * a9;\n bz = aK._$B0 + (aJ._$B0 - aK._$B0) * a9;\n by = bj._$B0 + (bi._$B0 - bj._$B0) * a9;\n bm._$Yr._$B0 = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$z0 + (aO._$z0 - aP._$z0) * a9;\n bB = bu._$z0 + (bs._$z0 - bu._$z0) * a9;\n bz = aK._$z0 + (aJ._$z0 - aK._$z0) * a9;\n by = bj._$z0 + (bi._$z0 - bj._$z0) * a9;\n bm._$Yr._$z0 = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n bC = aP._$qT + (aO._$qT - aP._$qT) * a9;\n bB = bu._$qT + (bs._$qT - bu._$qT) * a9;\n bz = aK._$qT + (aJ._$qT - aK._$qT) * a9;\n by = bj._$qT + (bi._$qT - bj._$qT) * a9;\n bm._$Yr._$qT = (1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8);\n } else {\n if (a2 == 4) {\n var aT = this._$Y0[a3[0]];\n var aS = this._$Y0[a3[1]];\n var bE = this._$Y0[a3[2]];\n var bD = this._$Y0[a3[3]];\n var aN = this._$Y0[a3[4]];\n var aM = this._$Y0[a3[5]];\n var bp = this._$Y0[a3[6]];\n var bo = this._$Y0[a3[7]];\n var bh = this._$Y0[a3[8]];\n var bg = this._$Y0[a3[9]];\n var aY = this._$Y0[a3[10]];\n var aW = this._$Y0[a3[11]];\n var a7 = this._$Y0[a3[12]];\n var a5 = this._$Y0[a3[13]];\n var aR = this._$Y0[a3[14]];\n var aQ = this._$Y0[a3[15]];\n var a9 = ba[0];\n var a8 = ba[1];\n var a6 = ba[2];\n var a4 = ba[3];\n var bC = aT._$fL + (aS._$fL - aT._$fL) * a9;\n var bB = bE._$fL + (bD._$fL - bE._$fL) * a9;\n var bz = aN._$fL + (aM._$fL - aN._$fL) * a9;\n var by = bp._$fL + (bo._$fL - bp._$fL) * a9;\n var bv = bh._$fL + (bg._$fL - bh._$fL) * a9;\n var bt = aY._$fL + (aW._$fL - aY._$fL) * a9;\n var br = a7._$fL + (a5._$fL - a7._$fL) * a9;\n var bq = aR._$fL + (aQ._$fL - aR._$fL) * a9;\n bm._$Yr._$fL = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$gL + (aS._$gL - aT._$gL) * a9;\n bB = bE._$gL + (bD._$gL - bE._$gL) * a9;\n bz = aN._$gL + (aM._$gL - aN._$gL) * a9;\n by = bp._$gL + (bo._$gL - bp._$gL) * a9;\n bv = bh._$gL + (bg._$gL - bh._$gL) * a9;\n bt = aY._$gL + (aW._$gL - aY._$gL) * a9;\n br = a7._$gL + (a5._$gL - a7._$gL) * a9;\n bq = aR._$gL + (aQ._$gL - aR._$gL) * a9;\n bm._$Yr._$gL = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$B0 + (aS._$B0 - aT._$B0) * a9;\n bB = bE._$B0 + (bD._$B0 - bE._$B0) * a9;\n bz = aN._$B0 + (aM._$B0 - aN._$B0) * a9;\n by = bp._$B0 + (bo._$B0 - bp._$B0) * a9;\n bv = bh._$B0 + (bg._$B0 - bh._$B0) * a9;\n bt = aY._$B0 + (aW._$B0 - aY._$B0) * a9;\n br = a7._$B0 + (a5._$B0 - a7._$B0) * a9;\n bq = aR._$B0 + (aQ._$B0 - aR._$B0) * a9;\n bm._$Yr._$B0 = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$z0 + (aS._$z0 - aT._$z0) * a9;\n bB = bE._$z0 + (bD._$z0 - bE._$z0) * a9;\n bz = aN._$z0 + (aM._$z0 - aN._$z0) * a9;\n by = bp._$z0 + (bo._$z0 - bp._$z0) * a9;\n bv = bh._$z0 + (bg._$z0 - bh._$z0) * a9;\n bt = aY._$z0 + (aW._$z0 - aY._$z0) * a9;\n br = a7._$z0 + (a5._$z0 - a7._$z0) * a9;\n bq = aR._$z0 + (aQ._$z0 - aR._$z0) * a9;\n bm._$Yr._$z0 = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n bC = aT._$qT + (aS._$qT - aT._$qT) * a9;\n bB = bE._$qT + (bD._$qT - bE._$qT) * a9;\n bz = aN._$qT + (aM._$qT - aN._$qT) * a9;\n by = bp._$qT + (bo._$qT - bp._$qT) * a9;\n bv = bh._$qT + (bg._$qT - bh._$qT) * a9;\n bt = aY._$qT + (aW._$qT - aY._$qT) * a9;\n br = a7._$qT + (a5._$qT - a7._$qT) * a9;\n bq = aR._$qT + (aQ._$qT - aR._$qT) * a9;\n bm._$Yr._$qT = (1 - a4) * ((1 - a6) * (bC + (bB - bC) * a8) + a6 * (bz + (by - bz) * a8)) + a4 * ((1 - a6) * (bv + (bt - bv) * a8) + a6 * (br + (bq - br) * a8));\n } else {\n var aV = Math.pow(2, a2) | 0;\n var aZ = new Float32Array(aV);\n for (var bk = 0; bk < aV; bk++) {\n var aI = bk;\n var aH = 1;\n for (var aL = 0; aL < a2; aL++) {\n aH *= (aI % 2 == 0) ? (1 - ba[aL]) : ba[aL];\n aI /= 2;\n }\n aZ[bk] = aH;\n }\n var bA = new Array();\n for (var aU = 0; aU < aV; aU++) {\n bA[aU] = this._$Y0[a3[aU]];\n }\n var be = 0\n , bc = 0\n , bd = 0\n , bb = 0\n , aX = 0;\n for (var aU = 0; aU < aV; aU++) {\n be += aZ[aU] * bA[aU]._$fL;\n bc += aZ[aU] * bA[aU]._$gL;\n bd += aZ[aU] * bA[aU]._$B0;\n bb += aZ[aU] * bA[aU]._$z0;\n aX += aZ[aU] * bA[aU]._$qT;\n }\n bm._$Yr._$fL = be;\n bm._$Yr._$gL = bc;\n bm._$Yr._$B0 = bd;\n bm._$Yr._$z0 = bb;\n bm._$Yr._$qT = aX;\n }\n }\n }\n }\n }\n var bn = this._$Y0[a3[0]];\n bm._$Yr.reflectX = bn.reflectX;\n bm._$Yr.reflectY = bn.reflectY;\n}\n;\nab.prototype._$2b = function(aM, aH) {\n if (!((this == aH._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aR = aH;\n aR._$hS(true);\n if (!this._$32()) {\n aR.setTotalScale_notForClient(aR._$Yr._$B0);\n aR.setTotalOpacity(aR.getInterpolatedOpacity());\n } else {\n var aT = this.getTargetBaseDataID();\n if (aR._$8r == c._$ur) {\n aR._$8r = aM.getBaseDataIndex(aT);\n }\n if (aR._$8r < 0) {\n if (Q._$so) {\n q._$li(\"_$L _$0P _$G :: %s\", aT);\n }\n aR._$hS(false);\n } else {\n var aI = aM.getBaseData(aR._$8r);\n if (aI != null) {\n var aL = aM._$q2(aR._$8r);\n var aS = ab._$Xo;\n aS[0] = aR._$Yr._$fL;\n aS[1] = aR._$Yr._$gL;\n var aJ = ab._$io;\n aJ[0] = 0;\n aJ[1] = -0.1;\n var aO = aL._$GT().getType();\n if (aO == c._$c2) {\n aJ[1] = -10;\n } else {\n aJ[1] = -0.1;\n }\n var aQ = ab._$0o;\n this._$Jr(aM, aI, aL, aS, aJ, aQ);\n var aP = aC._$92(aJ, aQ);\n aI._$nb(aM, aL, aS, aS, 1, 0, 2);\n aR._$Wr._$fL = aS[0];\n aR._$Wr._$gL = aS[1];\n aR._$Wr._$B0 = aR._$Yr._$B0;\n aR._$Wr._$z0 = aR._$Yr._$z0;\n aR._$Wr._$qT = aR._$Yr._$qT - aP * aC._$NS;\n var aK = aL.getTotalScale();\n aR.setTotalScale_notForClient(aK * aR._$Wr._$B0);\n var aN = aL.getTotalOpacity();\n aR.setTotalOpacity(aN * aR.getInterpolatedOpacity());\n aR._$Wr.reflectX = aR._$Yr.reflectX;\n aR._$Wr.reflectY = aR._$Yr.reflectY;\n aR._$hS(aL._$yo());\n } else {\n aR._$hS(false);\n }\n }\n }\n}\n;\nab.prototype._$nb = function(aJ, aR, aL, a4, aT, aO, a2) {\n if (!((this == aR._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aH = aR;\n var aU = aH._$Wr != null ? aH._$Wr : aH._$Yr;\n var a0 = Math.sin(aC._$bS * aU._$qT);\n var aP = Math.cos(aC._$bS * aU._$qT);\n var a3 = aH.getTotalScale();\n var aW = aU.reflectX ? -1 : 1;\n var aV = aU.reflectY ? -1 : 1;\n var aS = aP * a3 * aW;\n var aQ = -a0 * a3 * aV;\n var a1 = a0 * a3 * aW;\n var aZ = aP * a3 * aV;\n var aY = aU._$fL;\n var aX = aU._$gL;\n var aN, aM;\n var aI = aT * a2;\n for (var aK = aO; aK < aI; aK += a2) {\n aN = aL[aK];\n aM = aL[aK + 1];\n a4[aK] = aS * aN + aQ * aM + aY;\n a4[aK + 1] = a1 * aN + aZ * aM + aX;\n }\n}\n;\nab.prototype._$Jr = function(aP, aK, aI, aR, aQ, aH) {\n if (!((aK == aI._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aO = ab._$Lo;\n ab._$Lo[0] = aR[0];\n ab._$Lo[1] = aR[1];\n aK._$nb(aP, aI, aO, aO, 1, 0, 2);\n var aL = ab._$To;\n var aS = ab._$Po;\n var aN = 10;\n var aJ = 1;\n for (var aM = 0; aM < aN; aM++) {\n aS[0] = aR[0] + aJ * aQ[0];\n aS[1] = aR[1] + aJ * aQ[1];\n aK._$nb(aP, aI, aS, aL, 1, 0, 2);\n aL[0] -= aO[0];\n aL[1] -= aO[1];\n if (aL[0] != 0 || aL[1] != 0) {\n aH[0] = aL[0];\n aH[1] = aL[1];\n return;\n }\n aS[0] = aR[0] - aJ * aQ[0];\n aS[1] = aR[1] - aJ * aQ[1];\n aK._$nb(aP, aI, aS, aL, 1, 0, 2);\n aL[0] -= aO[0];\n aL[1] -= aO[1];\n if (aL[0] != 0 || aL[1] != 0) {\n aL[0] = -aL[0];\n aL[0] = -aL[0];\n aH[0] = aL[0];\n aH[1] = aL[1];\n return;\n }\n aJ *= 0.1;\n }\n if (Q._$so) {\n console.log(\"_$L0 to transform _$SP\\n\");\n }\n}\n;\nfunction al(aH) {\n B.prototype.constructor.call(this, aH);\n this._$8r = c._$ur;\n this._$Yr = null;\n this._$Wr = null;\n}\nal.prototype = new B();\nfunction a() {\n if (j) {\n return;\n }\n ae.prototype.constructor.call(this);\n this._$gP = null;\n this._$dr = null;\n this._$GS = null;\n this._$qb = null;\n this._$Lb = null;\n this._$mS = null;\n}\na.prototype = new ae();\na._$ur = -2;\na._$ES = 500;\na._$wb = 2;\na._$8S = 3;\na._$os = 4;\na._$52 = a._$ES;\na._$R2 = a._$ES;\na._$Sb = function(aJ) {\n for (var aI = aJ.length - 1; aI >= 0; --aI) {\n var aH = aJ[aI];\n if (aH < a._$52) {\n a._$52 = aH;\n } else {\n if (aH > a._$R2) {\n a._$R2 = aH;\n }\n }\n }\n}\n;\na._$or = function() {\n return a._$52;\n}\n;\na._$Pr = function() {\n return a._$R2;\n}\n;\na.prototype._$F0 = function(aH) {\n this._$gP = aH._$nP();\n this._$dr = aH._$nP();\n this._$GS = aH._$nP();\n this._$qb = aH._$6L();\n this._$Lb = aH._$cS();\n this._$mS = aH._$Tb();\n if (aH.getFormatVersion() >= ay._$T7) {\n this.clipID = aH._$nP();\n this.clipIDList = this.convertClipIDForV2_11(this.clipID);\n } else {\n this.clipIDList = null;\n }\n a._$Sb(this._$Lb);\n}\n;\na.prototype.getClipIDList = function() {\n return this.clipIDList;\n}\n;\na.prototype._$Nr = function(aI, aH) {\n aH._$IS[0] = false;\n aH._$Us = aG._$Z2(aI, this._$GS, aH._$IS, this._$Lb);\n if (Q._$Zs) {} else {\n if (aH._$IS[0]) {\n return;\n }\n }\n aH._$7s = aG._$br(aI, this._$GS, aH._$IS, this._$mS);\n}\n;\na.prototype._$2b = function(aH) {}\n;\na.prototype.getDrawDataID = function() {\n return this._$gP;\n}\n;\na.prototype._$j2 = function(aH) {\n this._$gP = aH;\n}\n;\na.prototype.getOpacity = function(aH, aI) {\n return aI._$7s;\n}\n;\na.prototype._$zS = function(aH, aI) {\n return aI._$Us;\n}\n;\na.prototype.getTargetBaseDataID = function() {\n return this._$dr;\n}\n;\na.prototype._$gs = function(aH) {\n this._$dr = aH;\n}\n;\na.prototype._$32 = function() {\n return (this._$dr != null && (this._$dr != n._$2o()));\n}\n;\na.prototype.getType = function() {}\n;\nfunction aq() {\n if (j) {\n return;\n }\n this._$NL = null;\n this._$3S = null;\n this._$aS = null;\n aq._$42++;\n}\naq._$42 = 0;\naq.prototype._$1b = function() {\n return this._$3S;\n}\n;\naq.prototype.getDrawDataList = function() {\n return this._$aS;\n}\n;\naq.prototype._$F0 = function(aH) {\n this._$NL = aH._$nP();\n this._$aS = aH._$nP();\n this._$3S = aH._$nP();\n}\n;\naq.prototype._$kr = function(aH) {\n aH._$Zo(this._$3S);\n aH._$xo(this._$aS);\n this._$3S = null;\n this._$aS = null;\n}\n;\nfunction v() {\n if (j) {\n return;\n }\n aa.prototype.constructor.call(this);\n this._$zo = new x();\n}\nv.prototype = new aa();\nv.loadModel = function(aI) {\n var aH = new v();\n aa._$62(aH, aI);\n return aH;\n}\n;\nv.loadModel = function(aI) {\n var aH = new v();\n aa._$62(aH, aI);\n return aH;\n}\n;\nv._$to = function() {\n var aH = new v();\n return aH;\n}\n;\nv._$er = function(aM) {\n var aJ = new _$5(\"../_$_r/_$t0/_$Ri/_$_P._$d\");\n if (aJ.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aJ._$PL());\n }\n var aH = [\"../_$_r/_$t0/_$Ri/_$_P.512/_$CP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$vP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$EP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$pP._$1\"];\n var aK = v.loadModel(aJ._$3b());\n for (var aI = 0; aI < aH.length; aI++) {\n var aL = new _$5(aH[aI]);\n if (aL.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aL._$PL());\n }\n aK.setTexture(aI, _$nL._$_o(aM, aL._$3b()));\n }\n return aK;\n}\n;\nv.prototype.setGL = function(aH) {\n this._$zo.setGL(aH);\n}\n;\nv.prototype.setTransform = function(aH) {\n this._$zo.setTransform(aH);\n}\n;\nv.prototype.draw = function() {\n this._$5S.draw(this._$zo);\n}\n;\nv.prototype._$K2 = function() {\n this._$zo._$K2();\n}\n;\nv.prototype.setTexture = function(aI, aH) {\n if (this._$zo == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this._$zo.setTexture(aI, aH);\n}\n;\nv.prototype.setTexture = function(aI, aH) {\n if (this._$zo == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this._$zo.setTexture(aI, aH);\n}\n;\nv.prototype._$Rs = function() {\n return this._$zo._$Rs();\n}\n;\nv.prototype._$Ds = function(aH) {\n this._$zo._$Ds(aH);\n}\n;\nv.prototype.getDrawParam = function() {\n return this._$zo;\n}\n;\nfunction ao() {\n if (j) {\n return;\n }\n ah.prototype.constructor.call(this);\n this.motions = new Array();\n this._$o2 = null;\n this._$7r = ao._$Co++;\n this._$D0 = 30;\n this._$yT = 0;\n this._$E = false;\n this.loopFadeIn = true;\n this._$rr = -1;\n this._$eP = 0;\n}\nao.prototype = new ah();\nao._$cs = \"VISIBLE:\";\nao._$ar = \"LAYOUT:\";\nao.MTN_PREFIX_FADEIN = \"FADEIN:\";\nao.MTN_PREFIX_FADEOUT = \"FADEOUT:\";\nao._$Co = 0;\nao._$1T = 1;\nao.loadMotion = function(aJ) {\n var aI = ap._$C(aJ);\n var aH = ao.loadMotion(aI);\n return aH;\n}\n;\nfunction p(aI, aH) {\n return String.fromCharCode(aI.getUint8(aH));\n}\nao.loadMotion = function(aT) {\n if (aT instanceof ArrayBuffer) {\n aT = new DataView(aT);\n }\n var aN = new ao();\n var aI = [0];\n var aQ = aT.byteLength;\n aN._$yT = 0;\n for (var aJ = 0; aJ < aQ; ++aJ) {\n var aS = p(aT, aJ);\n var aL = aS.charCodeAt(0);\n if (aS == \"\\n\" || aS == \"\\r\") {\n continue;\n }\n if (aS == \"#\") {\n for (; aJ < aQ; ++aJ) {\n if (p(aT, aJ) == \"\\n\" || p(aT, aJ) == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if (aS == \"$\") {\n var aV = aJ;\n var aK = -1;\n for (; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \"=\") {\n aK = aJ;\n break;\n }\n }\n var aP = false;\n if (aK >= 0) {\n if (aK == aV + 4 && p(aT, aV + 1) == \"f\" && p(aT, aV + 2) == \"p\" && p(aT, aV + 3) == \"s\") {\n aP = true;\n }\n for (aJ = aK + 1; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \",\" || aS == \" \" || aS == \"\\t\") {\n continue;\n }\n var aM = G._$LS(aT, aQ, aJ, aI);\n if (aI[0] > 0) {\n if (aP && 5 < aM && aM < 121) {\n aN._$D0 = aM;\n }\n }\n aJ = aI[0];\n }\n }\n for (; aJ < aQ; ++aJ) {\n if (p(aT, aJ) == \"\\n\" || p(aT, aJ) == \"\\r\") {\n break;\n }\n }\n continue;\n }\n if ((97 <= aL && aL <= 122) || (65 <= aL && aL <= 90) || aS == \"_\") {\n var aV = aJ;\n var aK = -1;\n for (; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \"=\") {\n aK = aJ;\n break;\n }\n }\n if (aK >= 0) {\n var aO = new t();\n if (G.startsWith(aT, aV, ao._$cs)) {\n aO._$RP = t._$hs;\n aO._$4P = G.createString(aT, aV, aK - aV);\n } else {\n if (G.startsWith(aT, aV, ao._$ar)) {\n aO._$4P = G.createString(aT, aV + 7, aK - aV - 7);\n if (G.startsWith(aT, aV + 7, \"ANCHOR_X\")) {\n aO._$RP = t._$xs;\n } else {\n if (G.startsWith(aT, aV + 7, \"ANCHOR_Y\")) {\n aO._$RP = t._$us;\n } else {\n if (G.startsWith(aT, aV + 7, \"SCALE_X\")) {\n aO._$RP = t._$qs;\n } else {\n if (G.startsWith(aT, aV + 7, \"SCALE_Y\")) {\n aO._$RP = t._$Ys;\n } else {\n if (G.startsWith(aT, aV + 7, \"X\")) {\n aO._$RP = t._$ws;\n } else {\n if (G.startsWith(aT, aV + 7, \"Y\")) {\n aO._$RP = t._$Ns;\n }\n }\n }\n }\n }\n }\n } else {\n aO._$RP = t._$Fr;\n aO._$4P = G.createString(aT, aV, aK - aV);\n }\n }\n aN.motions.push(aO);\n var aU = 0;\n var aR = [];\n for (aJ = aK + 1; aJ < aQ; ++aJ) {\n aS = p(aT, aJ);\n if (aS == \"\\r\" || aS == \"\\n\") {\n break;\n }\n if (aS == \",\" || aS == \" \" || aS == \"\\t\") {\n continue;\n }\n var aM = G._$LS(aT, aQ, aJ, aI);\n if (aI[0] > 0) {\n aR.push(aM);\n aU++;\n var aH = aI[0];\n if (aH < aJ) {\n console.log(\"_$n0 _$hi . @Live2DMotion loadMotion()\\n\");\n break;\n }\n aJ = aH - 1;\n }\n }\n aO._$I0 = new Float32Array(aR);\n if (aU > aN._$yT) {\n aN._$yT = aU;\n }\n }\n }\n }\n aN._$rr = ((1000 * aN._$yT) / aN._$D0) | 0;\n return aN;\n}\n;\nao.prototype.getDurationMSec = function() {\n return this._$E ? -1 : this._$rr;\n}\n;\nao.prototype.getLoopDurationMSec = function() {\n return this._$rr;\n}\n;\nao.prototype.dump = function() {\n for (var aJ = 0; aJ < this.motions.length; aJ++) {\n var aH = this.motions[aJ];\n console.log(\"_$wL[%s] [%d]. \", aH._$4P, aH._$I0.length);\n for (var aI = 0; aI < aH._$I0.length && aI < 10; aI++) {\n console.log(\"%5.2f ,\", aH._$I0[aI]);\n }\n console.log(\"\\n\");\n }\n}\n;\nao.prototype.updateParamExe = function(aJ, aN, aQ, a3) {\n var aO = aN - a3._$z2;\n var a0 = aO * this._$D0 / 1000;\n var aK = a0 | 0;\n var aR = a0 - aK;\n for (var aZ = 0; aZ < this.motions.length; aZ++) {\n var aV = this.motions[aZ];\n var aL = aV._$I0.length;\n var aT = aV._$4P;\n if (aV._$RP == t._$hs) {\n var aX = aV._$I0[(aK >= aL ? aL - 1 : aK)];\n aJ.setParamFloat(aT, aX);\n } else {\n if (t._$ws <= aV._$RP && aV._$RP <= t._$Ys) {} else {\n var aH = aJ.getParamIndex(aT);\n var a4 = aJ.getModelContext();\n var aY = a4.getParamMax(aH);\n var aW = a4.getParamMin(aH);\n var aM = 0.4;\n var aS = aM * (aY - aW);\n var aU = a4.getParamFloat(aH);\n var a2 = aV._$I0[(aK >= aL ? aL - 1 : aK)];\n var a1 = aV._$I0[(aK + 1 >= aL ? aL - 1 : aK + 1)];\n var aI;\n if ((a2 < a1 && a1 - a2 > aS) || (a2 > a1 && a2 - a1 > aS)) {\n aI = a2;\n } else {\n aI = a2 + (a1 - a2) * aR;\n }\n var aP = aU + (aI - aU) * aQ;\n aJ.setParamFloat(aT, aP);\n }\n }\n }\n if (aK >= this._$yT) {\n if (this._$E) {\n a3._$z2 = aN;\n if (this.loopFadeIn) {\n a3._$bs = aN;\n }\n } else {\n a3._$9L = true;\n }\n }\n this._$eP = aQ;\n}\n;\nao.prototype._$r0 = function() {\n return this._$E;\n}\n;\nao.prototype._$aL = function(aH) {\n this._$E = aH;\n}\n;\nao.prototype._$S0 = function() {\n return this._$D0;\n}\n;\nao.prototype._$U0 = function(aH) {\n this._$D0 = aH;\n}\n;\nao.prototype.isLoopFadeIn = function() {\n return this.loopFadeIn;\n}\n;\nao.prototype.setLoopFadeIn = function(aH) {\n this.loopFadeIn = aH;\n}\n;\nfunction aE() {\n this._$P = new Float32Array(100);\n this.size = 0;\n}\naE.prototype.clear = function() {\n this.size = 0;\n}\n;\naE.prototype.add = function(aI) {\n if (this._$P.length <= this.size) {\n var aH = new Float32Array(this.size * 2);\n P._$jT(this._$P, 0, aH, 0, this.size);\n this._$P = aH;\n }\n this._$P[this.size++] = aI;\n}\n;\naE.prototype._$BL = function() {\n var aH = new Float32Array(this.size);\n P._$jT(this._$P, 0, aH, 0, this.size);\n return aH;\n}\n;\nfunction t() {\n this._$4P = null;\n this._$I0 = null;\n this._$RP = null;\n}\nt._$Fr = 0;\nt._$hs = 1;\nt._$ws = 100;\nt._$Ns = 101;\nt._$xs = 102;\nt._$us = 103;\nt._$qs = 104;\nt._$Ys = 105;\nfunction E() {\n if (j) {\n return;\n }\n c.prototype.constructor.call(this);\n this._$o = 0;\n this._$A = 0;\n this._$GS = null;\n this._$Eo = null;\n}\nE.prototype = new c();\nE._$gT = new Array();\nE.prototype._$zP = function() {\n this._$GS = new g();\n this._$GS._$zP();\n}\n;\nE.prototype._$F0 = function(aH) {\n c.prototype._$F0.call(this, aH);\n this._$A = aH._$6L();\n this._$o = aH._$6L();\n this._$GS = aH._$nP();\n this._$Eo = aH._$nP();\n c.prototype.readV2_opacity.call(this, aH);\n}\n;\nE.prototype.init = function(aH) {\n var aI = new H(this);\n var aJ = (this._$o + 1) * (this._$A + 1);\n if (aI._$Cr != null) {\n aI._$Cr = null;\n }\n aI._$Cr = new Float32Array(aJ * 2);\n if (aI._$hr != null) {\n aI._$hr = null;\n }\n if (this._$32()) {\n aI._$hr = new Float32Array(aJ * 2);\n } else {\n aI._$hr = null;\n }\n return aI;\n}\n;\nE.prototype._$Nr = function(aJ, aI) {\n var aK = aI;\n if (!this._$GS._$Ur(aJ)) {\n return;\n }\n var aL = this._$VT();\n var aH = E._$gT;\n aH[0] = false;\n aG._$Vr(aJ, this._$GS, aH, aL, this._$Eo, aK._$Cr, 0, 2);\n aI._$Ib(aH[0]);\n this.interpolateOpacity(aJ, this._$GS, aI, aH);\n}\n;\nE.prototype._$2b = function(aK, aJ) {\n var aL = aJ;\n aL._$hS(true);\n if (!this._$32()) {\n aL.setTotalOpacity(aL.getInterpolatedOpacity());\n } else {\n var aH = this.getTargetBaseDataID();\n if (aL._$8r == c._$ur) {\n aL._$8r = aK.getBaseDataIndex(aH);\n }\n if (aL._$8r < 0) {\n if (Q._$so) {\n q._$li(\"_$L _$0P _$G :: %s\", aH);\n }\n aL._$hS(false);\n } else {\n var aN = aK.getBaseData(aL._$8r);\n var aI = aK._$q2(aL._$8r);\n if (aN != null && aI._$yo()) {\n var aM = aI.getTotalScale();\n aL.setTotalScale_notForClient(aM);\n var aO = aI.getTotalOpacity();\n aL.setTotalOpacity(aO * aL.getInterpolatedOpacity());\n aN._$nb(aK, aI, aL._$Cr, aL._$hr, this._$VT(), 0, 2);\n aL._$hS(true);\n } else {\n aL._$hS(false);\n }\n }\n }\n}\n;\nE.prototype._$nb = function(aL, aI, aH, aM, aO, aK, aJ) {\n if (true) {\n var aN = aI;\n var aP = (aN._$hr != null) ? aN._$hr : aN._$Cr;\n E.transformPoints_sdk2(aH, aM, aO, aK, aJ, aP, this._$o, this._$A);\n } else {\n this.transformPoints_sdk1(aL, aI, aH, aM, aO, aK, aJ);\n }\n}\n;\nE.transformPoints_sdk2 = function(a0, bc, a5, aP, aI, aR, aQ, aU) {\n var aW = a5 * aI;\n var aV;\n var bn, bm;\n var aT = 0;\n var aS = 0;\n var bl = 0;\n var bk = 0;\n var bf = 0;\n var be = 0;\n var aZ = false;\n for (var ba = aP; ba < aW; ba += aI) {\n var bd, a7, a4, aX;\n a4 = a0[ba];\n aX = a0[ba + 1];\n bd = a4 * aQ;\n a7 = aX * aU;\n if (bd < 0 || a7 < 0 || aQ <= bd || aU <= a7) {\n var a1 = aQ + 1;\n if (!aZ) {\n aZ = true;\n aT = 0.25 * (aR[((0) + (0) * a1) * 2] + aR[((aQ) + (0) * a1) * 2] + aR[((0) + (aU) * a1) * 2] + aR[((aQ) + (aU) * a1) * 2]);\n aS = 0.25 * (aR[((0) + (0) * a1) * 2 + 1] + aR[((aQ) + (0) * a1) * 2 + 1] + aR[((0) + (aU) * a1) * 2 + 1] + aR[((aQ) + (aU) * a1) * 2 + 1]);\n var aM = aR[((aQ) + (aU) * a1) * 2] - aR[((0) + (0) * a1) * 2];\n var aL = aR[((aQ) + (aU) * a1) * 2 + 1] - aR[((0) + (0) * a1) * 2 + 1];\n var bh = aR[((aQ) + (0) * a1) * 2] - aR[((0) + (aU) * a1) * 2];\n var bg = aR[((aQ) + (0) * a1) * 2 + 1] - aR[((0) + (aU) * a1) * 2 + 1];\n bl = (aM + bh) * 0.5;\n bk = (aL + bg) * 0.5;\n bf = (aM - bh) * 0.5;\n be = (aL - bg) * 0.5;\n if (bl == 0 && bk == 0) {}\n if (bf == 0 && be == 0) {}\n aT -= 0.5 * (bl + bf);\n aS -= 0.5 * (bk + be);\n }\n if ((-2 < a4 && a4 < 3) && (-2 < aX && aX < 3)) {\n if (a4 <= 0) {\n if (aX <= 0) {\n var a3 = aR[((0) + (0) * a1) * 2];\n var a2 = aR[((0) + (0) * a1) * 2 + 1];\n var a8 = aT - 2 * bl;\n var a6 = aS - 2 * bk;\n var aK = aT - 2 * bf;\n var aJ = aS - 2 * be;\n var aO = aT - 2 * bl - 2 * bf;\n var aN = aS - 2 * bk - 2 * be;\n var bj = 0.5 * (a4 - (-2));\n var bi = 0.5 * (aX - (-2));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n if (aX >= 1) {\n var aK = aR[((0) + (aU) * a1) * 2];\n var aJ = aR[((0) + (aU) * a1) * 2 + 1];\n var aO = aT - 2 * bl + 1 * bf;\n var aN = aS - 2 * bk + 1 * be;\n var a3 = aT + 3 * bf;\n var a2 = aS + 3 * be;\n var a8 = aT - 2 * bl + 3 * bf;\n var a6 = aS - 2 * bk + 3 * be;\n var bj = 0.5 * (a4 - (-2));\n var bi = 0.5 * (aX - (1));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n var aH = (a7 | 0);\n if (aH == aU) {\n aH = aU - 1;\n }\n var bj = 0.5 * (a4 - (-2));\n var bi = a7 - aH;\n var bb = aH / aU;\n var a9 = (aH + 1) / aU;\n var aK = aR[((0) + (aH) * a1) * 2];\n var aJ = aR[((0) + (aH) * a1) * 2 + 1];\n var a3 = aR[((0) + (aH + 1) * a1) * 2];\n var a2 = aR[((0) + (aH + 1) * a1) * 2 + 1];\n var aO = aT - 2 * bl + bb * bf;\n var aN = aS - 2 * bk + bb * be;\n var a8 = aT - 2 * bl + a9 * bf;\n var a6 = aS - 2 * bk + a9 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n }\n }\n } else {\n if (1 <= a4) {\n if (aX <= 0) {\n var a8 = aR[((aQ) + (0) * a1) * 2];\n var a6 = aR[((aQ) + (0) * a1) * 2 + 1];\n var a3 = aT + 3 * bl;\n var a2 = aS + 3 * bk;\n var aO = aT + 1 * bl - 2 * bf;\n var aN = aS + 1 * bk - 2 * be;\n var aK = aT + 3 * bl - 2 * bf;\n var aJ = aS + 3 * bk - 2 * be;\n var bj = 0.5 * (a4 - (1));\n var bi = 0.5 * (aX - (-2));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n if (aX >= 1) {\n var aO = aR[((aQ) + (aU) * a1) * 2];\n var aN = aR[((aQ) + (aU) * a1) * 2 + 1];\n var aK = aT + 3 * bl + 1 * bf;\n var aJ = aS + 3 * bk + 1 * be;\n var a8 = aT + 1 * bl + 3 * bf;\n var a6 = aS + 1 * bk + 3 * be;\n var a3 = aT + 3 * bl + 3 * bf;\n var a2 = aS + 3 * bk + 3 * be;\n var bj = 0.5 * (a4 - (1));\n var bi = 0.5 * (aX - (1));\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n var aH = (a7 | 0);\n if (aH == aU) {\n aH = aU - 1;\n }\n var bj = 0.5 * (a4 - (1));\n var bi = a7 - aH;\n var bb = aH / aU;\n var a9 = (aH + 1) / aU;\n var aO = aR[((aQ) + (aH) * a1) * 2];\n var aN = aR[((aQ) + (aH) * a1) * 2 + 1];\n var a8 = aR[((aQ) + (aH + 1) * a1) * 2];\n var a6 = aR[((aQ) + (aH + 1) * a1) * 2 + 1];\n var aK = aT + 3 * bl + bb * bf;\n var aJ = aS + 3 * bk + bb * be;\n var a3 = aT + 3 * bl + a9 * bf;\n var a2 = aS + 3 * bk + a9 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n }\n }\n } else {\n if (aX <= 0) {\n var aY = (bd | 0);\n if (aY == aQ) {\n aY = aQ - 1;\n }\n var bj = bd - aY;\n var bi = 0.5 * (aX - (-2));\n var bp = aY / aQ;\n var bo = (aY + 1) / aQ;\n var a8 = aR[((aY) + (0) * a1) * 2];\n var a6 = aR[((aY) + (0) * a1) * 2 + 1];\n var a3 = aR[((aY + 1) + (0) * a1) * 2];\n var a2 = aR[((aY + 1) + (0) * a1) * 2 + 1];\n var aO = aT + bp * bl - 2 * bf;\n var aN = aS + bp * bk - 2 * be;\n var aK = aT + bo * bl - 2 * bf;\n var aJ = aS + bo * bk - 2 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n if (aX >= 1) {\n var aY = (bd | 0);\n if (aY == aQ) {\n aY = aQ - 1;\n }\n var bj = bd - aY;\n var bi = 0.5 * (aX - (1));\n var bp = aY / aQ;\n var bo = (aY + 1) / aQ;\n var aO = aR[((aY) + (aU) * a1) * 2];\n var aN = aR[((aY) + (aU) * a1) * 2 + 1];\n var aK = aR[((aY + 1) + (aU) * a1) * 2];\n var aJ = aR[((aY + 1) + (aU) * a1) * 2 + 1];\n var a8 = aT + bp * bl + 3 * bf;\n var a6 = aS + bp * bk + 3 * be;\n var a3 = aT + bo * bl + 3 * bf;\n var a2 = aS + bo * bk + 3 * be;\n if (bj + bi <= 1) {\n bc[ba] = aO + (aK - aO) * bj + (a8 - aO) * bi;\n bc[ba + 1] = aN + (aJ - aN) * bj + (a6 - aN) * bi;\n } else {\n bc[ba] = a3 + (a8 - a3) * (1 - bj) + (aK - a3) * (1 - bi);\n bc[ba + 1] = a2 + (a6 - a2) * (1 - bj) + (aJ - a2) * (1 - bi);\n }\n } else {\n System.err.printf(\"_$li calc : %.4f , %.4f @@BDBoxGrid\\n\", a4, aX);\n }\n }\n }\n }\n } else {\n bc[ba] = aT + a4 * bl + aX * bf;\n bc[ba + 1] = aS + a4 * bk + aX * be;\n }\n } else {\n bn = bd - (bd | 0);\n bm = a7 - (a7 | 0);\n aV = 2 * ((bd | 0) + ((a7 | 0)) * (aQ + 1));\n if (bn + bm < 1) {\n bc[ba] = aR[aV] * (1 - bn - bm) + aR[aV + 2] * bn + aR[aV + 2 * (aQ + 1)] * bm;\n bc[ba + 1] = aR[aV + 1] * (1 - bn - bm) + aR[aV + 3] * bn + aR[aV + 2 * (aQ + 1) + 1] * bm;\n } else {\n bc[ba] = aR[aV + 2 * (aQ + 1) + 2] * (bn - 1 + bm) + aR[aV + 2 * (aQ + 1)] * (1 - bn) + aR[aV + 2] * (1 - bm);\n bc[ba + 1] = aR[aV + 2 * (aQ + 1) + 3] * (bn - 1 + bm) + aR[aV + 2 * (aQ + 1) + 1] * (1 - bn) + aR[aV + 3] * (1 - bm);\n }\n }\n }\n}\n;\nE.prototype.transformPoints_sdk1 = function(aJ, aR, aL, a0, aU, aP, aZ) {\n var aH = aR;\n var aO, aN;\n var aM = this._$o;\n var aQ = this._$A;\n var aI = aU * aZ;\n var aS, aY;\n var aV;\n var aX, aW;\n var aT = (aH._$hr != null) ? aH._$hr : aH._$Cr;\n for (var aK = aP; aK < aI; aK += aZ) {\n if (Q._$ts) {\n aO = aL[aK];\n aN = aL[aK + 1];\n if (aO < 0) {\n aO = 0;\n } else {\n if (aO > 1) {\n aO = 1;\n }\n }\n if (aN < 0) {\n aN = 0;\n } else {\n if (aN > 1) {\n aN = 1;\n }\n }\n aO *= aM;\n aN *= aQ;\n aS = (aO | 0);\n aY = (aN | 0);\n if (aS > aM - 1) {\n aS = aM - 1;\n }\n if (aY > aQ - 1) {\n aY = aQ - 1;\n }\n aX = aO - aS;\n aW = aN - aY;\n aV = 2 * (aS + aY * (aM + 1));\n } else {\n aO = aL[aK] * aM;\n aN = aL[aK + 1] * aQ;\n aX = aO - (aO | 0);\n aW = aN - (aN | 0);\n aV = 2 * ((aO | 0) + (aN | 0) * (aM + 1));\n }\n if (aX + aW < 1) {\n a0[aK] = aT[aV] * (1 - aX - aW) + aT[aV + 2] * aX + aT[aV + 2 * (aM + 1)] * aW;\n a0[aK + 1] = aT[aV + 1] * (1 - aX - aW) + aT[aV + 3] * aX + aT[aV + 2 * (aM + 1) + 1] * aW;\n } else {\n a0[aK] = aT[aV + 2 * (aM + 1) + 2] * (aX - 1 + aW) + aT[aV + 2 * (aM + 1)] * (1 - aX) + aT[aV + 2] * (1 - aW);\n a0[aK + 1] = aT[aV + 2 * (aM + 1) + 3] * (aX - 1 + aW) + aT[aV + 2 * (aM + 1) + 1] * (1 - aX) + aT[aV + 3] * (1 - aW);\n }\n }\n}\n;\nE.prototype._$VT = function() {\n return (this._$o + 1) * (this._$A + 1);\n}\n;\nE.prototype.getType = function() {\n return c._$_b;\n}\n;\nfunction H(aH) {\n B.prototype.constructor.call(this, aH);\n this._$8r = c._$ur;\n this._$Cr = null;\n this._$hr = null;\n}\nH.prototype = new B();\nfunction s() {\n if (j) {\n return;\n }\n this.visible = true;\n this._$g0 = false;\n this._$NL = null;\n this._$3S = null;\n this._$aS = null;\n s._$42++;\n}\ns._$42 = 0;\ns.prototype._$zP = function() {\n this._$3S = new Array();\n this._$aS = new Array();\n}\n;\ns.prototype._$F0 = function(aH) {\n this._$g0 = aH._$8L();\n this.visible = aH._$8L();\n this._$NL = aH._$nP();\n this._$3S = aH._$nP();\n this._$aS = aH._$nP();\n}\n;\ns.prototype.init = function(aI) {\n var aH = new aj(this);\n aH.setPartsOpacity(this.isVisible() ? 1 : 0);\n return aH;\n}\n;\ns.prototype._$6o = function(aH) {\n if (this._$3S == null) {\n throw new Error(\"_$3S _$6 _$Wo@_$6o\");\n }\n this._$3S.push(aH);\n}\n;\ns.prototype._$3o = function(aH) {\n if (this._$aS == null) {\n throw new Error(\"_$aS _$6 _$Wo@_$3o\");\n }\n this._$aS.push(aH);\n}\n;\ns.prototype._$Zo = function(aH) {\n this._$3S = aH;\n}\n;\ns.prototype._$xo = function(aH) {\n this._$aS = aH;\n}\n;\ns.prototype.isVisible = function() {\n return this.visible;\n}\n;\ns.prototype._$uL = function() {\n return this._$g0;\n}\n;\ns.prototype._$KP = function(aH) {\n this.visible = aH;\n}\n;\ns.prototype._$ET = function(aH) {\n this._$g0 = aH;\n}\n;\ns.prototype.getBaseData = function() {\n return this._$3S;\n}\n;\ns.prototype.getDrawData = function() {\n return this._$aS;\n}\n;\ns.prototype._$p2 = function() {\n return this._$NL;\n}\n;\ns.prototype._$ob = function(aH) {\n this._$NL = aH;\n}\n;\ns.prototype.getPartsID = function() {\n return this._$NL;\n}\n;\ns.prototype._$MP = function(aH) {\n this._$NL = aH;\n}\n;\nfunction aj(aH) {\n this._$VS = null;\n this._$e0 = null;\n this._$e0 = aH;\n}\naj.prototype = new S();\naj.prototype.getPartsOpacity = function() {\n return this._$VS;\n}\n;\naj.prototype.setPartsOpacity = function(aH) {\n this._$VS = aH;\n}\n;\nfunction ak(aH) {\n if (j) {\n return;\n }\n this.id = aH;\n}\nak._$L7 = function() {\n z._$27();\n n._$27();\n Z._$27();\n i._$27();\n}\n;\nak.prototype.toString = function() {\n return this.id;\n}\n;\nfunction D() {}\nD.prototype._$F0 = function(aH) {}\n;\nfunction an() {\n if (j) {\n return;\n }\n this._$4S = null;\n}\nan.prototype._$1s = function() {\n return this._$4S;\n}\n;\nan.prototype._$zP = function() {\n this._$4S = new Array();\n}\n;\nan.prototype._$F0 = function(aH) {\n this._$4S = aH._$nP();\n}\n;\nan.prototype._$Ks = function(aH) {\n this._$4S.push(aH);\n}\n;\nfunction au(aH, aI) {\n this.canvas = aH;\n this.context = aI;\n this.viewport = new Array(0,0,aH.width,aH.height);\n this._$6r = 1;\n this._$xP = 0;\n this._$3r = 1;\n this._$uP = 0;\n this._$Qo = -1;\n this.cacheImages = {};\n}\nau.tr = new am();\nau._$50 = new am();\nau._$Ti = new Array(0,0);\nau._$Pi = new Array(0,0);\nau._$B = new Array(0,0);\nau.prototype._$lP = function(aI, aK, aJ, aH) {\n this.viewport = new Array(aI,aK,aJ,aH);\n}\n;\nau.prototype._$bL = function() {\n this.context.save();\n var aH = this.viewport;\n if (aH != null) {\n this.context.beginPath();\n this.context._$Li(aH[0], aH[1], aH[2], aH[3]);\n this.context.clip();\n }\n}\n;\nau.prototype._$ei = function() {\n this.context.restore();\n}\n;\nau.prototype.drawElements = function(bc, bm, aX, aJ, bA, aM, bl, bz) {\n try {\n if (bA != this._$Qo) {\n this._$Qo = bA;\n this.context.globalAlpha = bA;\n }\n var a2 = bm.length;\n var aP = bc.width;\n var a5 = bc.height;\n var bE = this.context;\n var a7 = this._$xP;\n var a6 = this._$uP;\n var a1 = this._$6r;\n var aZ = this._$3r;\n var bD = au.tr;\n var aI = au._$Ti;\n var aH = au._$Pi;\n var bu = au._$B;\n for (var by = 0; by < a2; by += 3) {\n bE.save();\n var aW = bm[by];\n var aV = bm[by + 1];\n var aT = bm[by + 2];\n var aL = a7 + a1 * aX[aW * 2];\n var aK = a6 + aZ * aX[aW * 2 + 1];\n var br = a7 + a1 * aX[aV * 2];\n var bp = a6 + aZ * aX[aV * 2 + 1];\n var bh = a7 + a1 * aX[aT * 2];\n var bf = a6 + aZ * aX[aT * 2 + 1];\n if (bl) {\n bl._$PS(aL, aK, bu);\n aL = bu[0];\n aK = bu[1];\n bl._$PS(br, bp, bu);\n br = bu[0];\n bp = bu[1];\n bl._$PS(bh, bf, bu);\n bh = bu[0];\n bf = bu[1];\n }\n var aS = aP * aJ[aW * 2];\n var aQ = a5 - a5 * aJ[aW * 2 + 1];\n var bx = aP * aJ[aV * 2];\n var bw = a5 - a5 * aJ[aV * 2 + 1];\n var bk = aP * aJ[aT * 2];\n var bj = a5 - a5 * aJ[aT * 2 + 1];\n var a3 = Math.atan2(bw - aQ, bx - aS);\n var a0 = Math.atan2(bp - aK, br - aL);\n var aO = br - aL;\n var aN = bp - aK;\n var bi = Math.sqrt(aO * aO + aN * aN);\n var aU = bx - aS;\n var aR = bw - aQ;\n var bt = Math.sqrt(aU * aU + aR * aR);\n var bv = bi / bt;\n ad._$ni(bk, bj, aS, aQ, (bx - aS), (bw - aQ), -(bw - aQ), (bx - aS), aI);\n ad._$ni(bh, bf, aL, aK, (br - aL), (bp - aK), -(bp - aK), (br - aL), aH);\n var aY = (aH[0] - aI[0]) / aI[1];\n var bs = Math.min(aS, bx, bk);\n var bg = Math.max(aS, bx, bk);\n var bq = Math.min(aQ, bw, bj);\n var be = Math.max(aQ, bw, bj);\n var bo = Math.floor(bs);\n var bb = Math.floor(bq);\n var a4 = Math.ceil(bg);\n var bC = Math.ceil(be);\n bD.identity();\n bD.translate(aL, aK);\n bD.rotate(a0);\n bD.scale(1, aH[1] / aI[1]);\n bD.shear(aY, 0);\n bD.scale(bv, bv);\n bD.rotate(-a3);\n bD.translate(-aS, -aQ);\n bD.setContext(bE);\n var a8 = true;\n var a9 = 1.2;\n if (!aM) {\n aM = a8 ? a9 : 0;\n }\n if (Q.IGNORE_EXPAND) {\n aM = 0;\n }\n if (Q.USE_CACHED_POLYGON_IMAGE) {\n var bd = bz._$e0;\n bd.gl_cacheImage = bd.gl_cacheImage || {};\n if (!bd.gl_cacheImage[by]) {\n var bn = au.createCanvas(a4 - bo, bC - bb);\n Q.DEBUG_DATA.LDGL_CANVAS_MB = Q.DEBUG_DATA.LDGL_CANVAS_MB || 0;\n Q.DEBUG_DATA.LDGL_CANVAS_MB += (a4 - bo) * (bC - bb) * 4;\n var ba = bn.getContext(\"2d\");\n ba.translate(-bo, -bb);\n au.clip(ba, bD, aM, bi, aS, aQ, bx, bw, bk, bj, aL, aK, br, bp, bh, bf);\n ba.drawImage(bc, 0, 0);\n bd.gl_cacheImage[by] = {\n cacheCanvas: bn,\n cacheContext: ba\n };\n }\n bE.drawImage(bd.gl_cacheImage[by][\"cacheCanvas\"], bo, bb);\n } else {\n if (!Q.IGNORE_CLIP) {\n au.clip(bE, bD, aM, bi, aS, aQ, bx, bw, bk, bj, aL, aK, br, bp, bh, bf);\n }\n if (Q.USE_ADJUST_TRANSLATION) {\n bs = 0;\n bg = aP;\n bq = 0;\n be = a5;\n }\n bE.drawImage(bc, bs, bq, bg - bs, be - bq, bs, bq, bg - bs, be - bq);\n }\n bE.restore();\n }\n } catch (bB) {\n q._$Rb(bB);\n }\n}\n;\nau.clip = function(aK, aJ, aV, aI, aM, aL, aU, aT, aQ, aP, aO, aN, aH, aW, aS, aR) {\n if (aV > 0.02) {\n au.expandClip(aK, aJ, aV, aI, aO, aN, aH, aW, aS, aR);\n } else {\n au.clipWithTransform(aK, null, aM, aL, aU, aT, aQ, aP);\n }\n}\n;\nau.expandClip = function(aV, bg, aK, a3, aJ, aI, be, ba, aZ, aX) {\n var aP = be - aJ;\n var aO = ba - aI;\n var bi = aZ - aJ;\n var bh = aX - aI;\n var bj = aP * bh - aO * bi > 0 ? aK : -aK;\n var aL = -aO;\n var aH = aP;\n var bc = aZ - be;\n var a8 = aX - ba;\n var a7 = -a8;\n var a6 = bc;\n var aQ = Math.sqrt(bc * bc + a8 * a8);\n var bf = -bh;\n var bb = bi;\n var a2 = Math.sqrt(bi * bi + bh * bh);\n var bd = aJ - bj * aL / a3;\n var a9 = aI - bj * aH / a3;\n var aY = be - bj * aL / a3;\n var aW = ba - bj * aH / a3;\n var a5 = be - bj * a7 / aQ;\n var a4 = ba - bj * a6 / aQ;\n var aS = aZ - bj * a7 / aQ;\n var aR = aX - bj * a6 / aQ;\n var aN = aJ + bj * bf / a2;\n var aM = aI + bj * bb / a2;\n var a1 = aZ + bj * bf / a2;\n var a0 = aX + bj * bb / a2;\n var aU = au._$50;\n var aT = bg._$P2(aU);\n if (aT == null) {\n return false;\n }\n au.clipWithTransform(aV, aU, bd, a9, aY, aW, a5, a4, aS, aR, a1, a0, aN, aM);\n return true;\n}\n;\nau.clipWithTransform = function(aH, aI, aS, aN, aQ, aK, aP, aJ) {\n if (arguments.length < (1 + 3 * 2)) {\n q._$li(\"err : @LDGL.clip()\");\n return;\n }\n if (!(arguments[1]instanceof am)) {\n q._$li(\"err : a[0] is _$6 LDTransform @LDGL.clip()\");\n return;\n }\n var aM = au._$B;\n var aO = aI;\n var aR = arguments;\n aH.beginPath();\n if (aO) {\n aO._$PS(aR[2], aR[3], aM);\n aH.moveTo(aM[0], aM[1]);\n for (var aL = 4; aL < aR.length; aL += 2) {\n aO._$PS(aR[aL], aR[aL + 1], aM);\n aH.lineTo(aM[0], aM[1]);\n }\n } else {\n aH.moveTo(aR[2], aR[3]);\n for (var aL = 4; aL < aR.length; aL += 2) {\n aH.lineTo(aR[aL], aR[aL + 1]);\n }\n }\n aH.clip();\n}\n;\nau.createCanvas = function(aH, aJ) {\n var aI = document.createElement(\"canvas\");\n aI.setAttribute(\"width\", aH);\n aI.setAttribute(\"height\", aJ);\n if (!aI) {\n q._$li(\"err : \" + aI);\n }\n return aI;\n}\n;\nau.dumpValues = function() {\n var aI = \"\";\n for (var aH = 0; aH < arguments.length; aH++) {\n aI += \"[\" + aH + \"]= \" + arguments[aH].toFixed(3) + \" , \";\n }\n console.log(aI);\n}\n;\nfunction f() {\n if (j) {\n return;\n }\n this._$TT = null;\n this._$LT = null;\n this._$FS = null;\n this._$wL = null;\n}\nf.prototype._$F0 = function(aH) {\n this._$TT = aH._$_T();\n this._$LT = aH._$_T();\n this._$FS = aH._$_T();\n this._$wL = aH._$nP();\n}\n;\nf.prototype.getMinValue = function() {\n return this._$TT;\n}\n;\nf.prototype.getMaxValue = function() {\n return this._$LT;\n}\n;\nf.prototype.getDefaultValue = function() {\n return this._$FS;\n}\n;\nf.prototype.getParamID = function() {\n return this._$wL;\n}\n;\nfunction B(aH) {\n if (j) {\n return;\n }\n this._$e0 = null;\n this._$IP = null;\n this._$JS = false;\n this._$AT = true;\n this._$e0 = aH;\n this.totalScale = 1;\n this._$7s = 1;\n this.totalOpacity = 1;\n}\nB.prototype._$yo = function() {\n return this._$AT && !this._$JS;\n}\n;\nB.prototype._$hS = function(aH) {\n this._$AT = aH;\n}\n;\nB.prototype._$GT = function() {\n return this._$e0;\n}\n;\nB.prototype._$l2 = function(aH) {\n this._$IP = aH;\n}\n;\nB.prototype.getPartsIndex = function() {\n return this._$IP;\n}\n;\nB.prototype._$x2 = function() {\n return this._$JS;\n}\n;\nB.prototype._$Ib = function(aH) {\n this._$JS = aH;\n}\n;\nB.prototype.getTotalScale = function() {\n return this.totalScale;\n}\n;\nB.prototype.setTotalScale_notForClient = function(aH) {\n this.totalScale = aH;\n}\n;\nB.prototype.getInterpolatedOpacity = function() {\n return this._$7s;\n}\n;\nB.prototype.setInterpolatedOpacity = function(aH) {\n this._$7s = aH;\n}\n;\nB.prototype.getTotalOpacity = function(aH) {\n return this.totalOpacity;\n}\n;\nB.prototype.setTotalOpacity = function(aH) {\n this.totalOpacity = aH;\n}\n;\nfunction Q() {}\nQ._$2s = \"2.1.00_1\";\nQ._$Kr = 201001000;\nQ._$sP = true;\nQ._$so = true;\nQ._$cb = false;\nQ._$3T = true;\nQ._$Ts = true;\nQ._$fb = true;\nQ._$ts = true;\nQ.L2D_DEFORMER_EXTEND = true;\nQ._$Wb = false;\nQ._$yr = false;\nQ._$Zs = false;\nQ.L2D_NO_ERROR = 0;\nQ._$i7 = 1000;\nQ._$9s = 1001;\nQ._$es = 1100;\nQ._$r7 = 2000;\nQ._$07 = 2001;\nQ._$b7 = 2002;\nQ._$H7 = 4000;\nQ.L2D_COLOR_BLEND_MODE_MULT = 0;\nQ.L2D_COLOR_BLEND_MODE_ADD = 1;\nQ.L2D_COLOR_BLEND_MODE_INTERPOLATE = 2;\nQ._$6b = true;\nQ._$cT = 0;\nQ.clippingMaskBufferSize = 256;\nQ.glContext = new Array();\nQ.frameBuffers = new Array();\nQ.fTexture = new Array();\nQ.IGNORE_CLIP = false;\nQ.IGNORE_EXPAND = false;\nQ.EXPAND_W = 2;\nQ.USE_ADJUST_TRANSLATION = true;\nQ.USE_CANVAS_TRANSFORM = true;\nQ.USE_CACHED_POLYGON_IMAGE = false;\nQ.DEBUG_DATA = {};\nQ.PROFILE_IOS_SPEED = {\n PROFILE_NAME: \"iOS Speed\",\n USE_ADJUST_TRANSLATION: true,\n USE_CACHED_POLYGON_IMAGE: true,\n EXPAND_W: 4\n};\nQ.PROFILE_IOS_QUALITY = {\n PROFILE_NAME: \"iOS HiQ\",\n USE_ADJUST_TRANSLATION: true,\n USE_CACHED_POLYGON_IMAGE: false,\n EXPAND_W: 2\n};\nQ.PROFILE_IOS_DEFAULT = Q.PROFILE_IOS_QUALITY;\nQ.PROFILE_ANDROID = {\n PROFILE_NAME: \"Android\",\n USE_ADJUST_TRANSLATION: false,\n USE_CACHED_POLYGON_IMAGE: false,\n EXPAND_W: 2\n};\nQ.PROFILE_DESKTOP = {\n PROFILE_NAME: \"Desktop\",\n USE_ADJUST_TRANSLATION: false,\n USE_CACHED_POLYGON_IMAGE: false,\n EXPAND_W: 2\n};\nQ.initProfile = function() {\n if (r.isIOS()) {\n Q.setupProfile(Q.PROFILE_IOS_DEFAULT);\n } else {\n if (r.isAndroid()) {\n Q.setupProfile(Q.PROFILE_ANDROID);\n } else {\n Q.setupProfile(Q.PROFILE_DESKTOP);\n }\n }\n}\n;\nQ.setupProfile = function(aI, aJ) {\n if (typeof aI == \"number\") {\n switch (aI) {\n case 9901:\n aI = Q.PROFILE_IOS_SPEED;\n break;\n case 9902:\n aI = Q.PROFILE_IOS_QUALITY;\n break;\n case 9903:\n aI = Q.PROFILE_IOS_DEFAULT;\n break;\n case 9904:\n aI = Q.PROFILE_ANDROID;\n break;\n case 9905:\n aI = Q.PROFILE_DESKTOP;\n break;\n default:\n alert(\"profile _$6 _$Ui : \" + aI);\n break;\n }\n }\n if (arguments.length < 2) {\n aJ = true;\n }\n if (aJ) {\n console.log(\"profile : \" + aI.PROFILE_NAME);\n }\n for (var aH in aI) {\n Q[aH] = aI[aH];\n if (aJ) {\n console.log(\" [\" + aH + \"] = \" + aI[aH]);\n }\n }\n}\n;\nQ.init = function() {\n if (Q._$6b) {\n console.log(\"Live2D %s\", Q._$2s);\n Q._$6b = false;\n var aH = false;\n aH = true;\n Q.initProfile();\n }\n}\n;\nQ.getVersionStr = function() {\n return Q._$2s;\n}\n;\nQ.getVersionNo = function() {\n return Q._$Kr;\n}\n;\nQ._$sT = function(aH) {\n Q._$cT = aH;\n}\n;\nQ.getError = function() {\n var aH = Q._$cT;\n Q._$cT = 0;\n return aH;\n}\n;\nQ.dispose = function() {\n Q.glContext = [];\n Q.frameBuffers = [];\n Q.fTexture = [];\n}\n;\nQ.setGL = function(aJ, aI) {\n var aH = aI || 0;\n Q.glContext[aH] = aJ;\n}\n;\nQ.getGL = function(aH) {\n return Q.glContext[aH];\n}\n;\nQ.setClippingMaskBufferSize = function(aH) {\n Q.clippingMaskBufferSize = aH;\n}\n;\nQ.getClippingMaskBufferSize = function() {\n return Q.clippingMaskBufferSize;\n}\n;\nQ.deleteBuffer = function(aI) {\n var aH = Q.getGL(aI);\n aH.deleteFramebuffer(Q.frameBuffers[aI].framebuffer);\n delete Q.frameBuffers[aI];\n delete Q.glContext[aI];\n}\n;\nfunction A() {}\nA._$r2 = function(aH) {\n if (aH < 0) {\n return 0;\n } else {\n if (aH > 1) {\n return 1;\n }\n }\n return (0.5 - 0.5 * Math.cos(aH * aC.PI_F));\n}\n;\nfunction J(aH) {\n if (j) {\n return;\n }\n this._$ib = aH;\n}\nJ._$fr = -1;\nJ.prototype.toString = function() {\n return this._$ib;\n}\n;\nfunction b() {\n if (j) {\n return;\n }\n a.prototype.constructor.call(this);\n this._$LP = -1;\n this._$d0 = 0;\n this._$Yo = 0;\n this._$JP = null;\n this._$5P = null;\n this._$BP = null;\n this._$Eo = null;\n this._$Qi = null;\n this._$6s = b._$ms;\n this.culling = true;\n this.gl_cacheImage = null;\n this.instanceNo = b._$42++;\n}\nb.prototype = new a();\nb._$42 = 0;\nb._$Os = 30;\nb._$ms = 0;\nb._$ns = 1;\nb._$_s = 2;\nb._$gT = new Array();\nb.prototype._$_S = function(aH) {\n this._$LP = aH;\n}\n;\nb.prototype.getTextureNo = function() {\n return this._$LP;\n}\n;\nb.prototype._$ZL = function() {\n return this._$Qi;\n}\n;\nb.prototype._$H2 = function() {\n return this._$JP;\n}\n;\nb.prototype.getNumPoints = function() {\n return this._$d0;\n}\n;\nb.prototype.getType = function() {\n return a._$wb;\n}\n;\nb.prototype._$B2 = function(aL, aH, aO) {\n var aM = aH;\n var aN = (aM._$hr != null) ? aM._$hr : aM._$Cr;\n var aK = aw._$do;\n switch (aK) {\n default:\n case aw._$Ms:\n throw new Error(\"_$L _$ro \");\n case aw._$Qs:\n for (var aJ = this._$d0 - 1; aJ >= 0; --aJ) {\n var aI = aJ * aw._$No;\n aN[aI + 4] = aO;\n }\n break;\n }\n}\n;\nb.prototype._$zP = function() {\n this._$GS = new g();\n this._$GS._$zP();\n}\n;\nb.prototype._$F0 = function(aK) {\n a.prototype._$F0.call(this, aK);\n this._$LP = aK._$6L();\n this._$d0 = aK._$6L();\n this._$Yo = aK._$6L();\n var aH = aK._$nP();\n this._$BP = new Int16Array(this._$Yo * 3);\n for (var aJ = this._$Yo * 3 - 1; aJ >= 0; --aJ) {\n this._$BP[aJ] = aH[aJ];\n }\n this._$Eo = aK._$nP();\n this._$Qi = aK._$nP();\n if (aK.getFormatVersion() >= ay._$s7) {\n this._$JP = aK._$6L();\n if (this._$JP != 0) {\n if ((this._$JP & 1) != 0) {\n var aI = aK._$6L();\n if (this._$5P == null) {\n this._$5P = new Object();\n }\n this._$5P._$Hb = parseInt(aI);\n }\n if ((this._$JP & b._$Os) != 0) {\n this._$6s = (this._$JP & b._$Os) >> 1;\n } else {\n this._$6s = b._$ms;\n }\n if ((this._$JP & 32) != 0) {\n this.culling = false;\n }\n }\n } else {\n this._$JP = 0;\n }\n}\n;\nb.prototype.init = function(aL) {\n var aN = new ag(this);\n var aI = this._$d0 * aw._$No;\n var aH = this._$32();\n if (aN._$Cr != null) {\n aN._$Cr = null;\n }\n aN._$Cr = new Float32Array(aI);\n if (aN._$hr != null) {\n aN._$hr = null;\n }\n aN._$hr = aH ? new Float32Array(aI) : null;\n var aM = aw._$do;\n switch (aM) {\n default:\n case aw._$Ms:\n if (aw._$Ls) {\n for (var aJ = this._$d0 - 1; aJ >= 0; --aJ) {\n var aO = aJ << 1;\n this._$Qi[aO + 1] = 1 - this._$Qi[aO + 1];\n }\n }\n break;\n case aw._$Qs:\n for (var aJ = this._$d0 - 1; aJ >= 0; --aJ) {\n var aO = aJ << 1;\n var aK = aJ * aw._$No;\n var aQ = this._$Qi[aO];\n var aP = this._$Qi[aO + 1];\n aN._$Cr[aK] = aQ;\n aN._$Cr[aK + 1] = aP;\n aN._$Cr[aK + 4] = 0;\n if (aH) {\n aN._$hr[aK] = aQ;\n aN._$hr[aK + 1] = aP;\n aN._$hr[aK + 4] = 0;\n }\n }\n break;\n }\n return aN;\n}\n;\nb.prototype._$Nr = function(aJ, aH) {\n var aK = aH;\n if (!((this == aK._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n if (!this._$GS._$Ur(aJ)) {\n return;\n }\n a.prototype._$Nr.call(this, aJ, aK);\n if (aK._$IS[0]) {\n return;\n }\n var aI = b._$gT;\n aI[0] = false;\n aG._$Vr(aJ, this._$GS, aI, this._$d0, this._$Eo, aK._$Cr, aw._$i2, aw._$No);\n}\n;\nb.prototype._$2b = function(aK, aI) {\n try {\n if (!((this == aI._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n var aL = false;\n if (aI._$IS[0]) {\n aL = true;\n }\n var aM = aI;\n if (!aL) {\n a.prototype._$2b.call(this, aK);\n if (this._$32()) {\n var aH = this.getTargetBaseDataID();\n if (aM._$8r == a._$ur) {\n aM._$8r = aK.getBaseDataIndex(aH);\n }\n if (aM._$8r < 0) {\n if (Q._$so) {\n q._$li(\"_$L _$0P _$G :: %s\", aH);\n }\n } else {\n var aO = aK.getBaseData(aM._$8r);\n var aJ = aK._$q2(aM._$8r);\n if (aO != null && !aJ._$x2()) {\n aO._$nb(aK, aJ, aM._$Cr, aM._$hr, this._$d0, aw._$i2, aw._$No);\n aM._$AT = true;\n } else {\n aM._$AT = false;\n }\n aM.baseOpacity = aJ.getTotalOpacity();\n }\n }\n }\n } catch (aN) {\n throw aN;\n }\n}\n;\nb.prototype.draw = function(aN, aK, aI) {\n if (!((this == aI._$GT()))) {\n console.log(\"### assert!! ### \");\n }\n if (aI._$IS[0]) {\n return;\n }\n var aL = aI;\n var aJ = this._$LP;\n if (aJ < 0) {\n aJ = 1;\n }\n var aH = this.getOpacity(aK, aL) * aI._$VS * aI.baseOpacity;\n var aM = (aL._$hr != null) ? aL._$hr : aL._$Cr;\n aN.setClipBufPre_clipContextForDraw(aI.clipBufPre_clipContext);\n aN._$WP(this.culling);\n aN._$Uo(aJ, 3 * this._$Yo, this._$BP, aM, this._$Qi, aH, this._$6s, aL);\n}\n;\nb.prototype.dump = function() {\n console.log(\" _$yi( %d ) , _$d0( %d ) , _$Yo( %d ) \\n\", this._$LP, this._$d0, this._$Yo);\n console.log(\" _$Oi _$di = { \");\n for (var aJ = 0; aJ < this._$BP.length; aJ++) {\n console.log(\"%5d ,\", this._$BP[aJ]);\n }\n console.log(\"\\n _$5i _$30\");\n for (var aJ = 0; aJ < this._$Eo.length; aJ++) {\n console.log(\"\\n _$30[%d] = \", aJ);\n var aH = this._$Eo[aJ];\n for (var aI = 0; aI < aH.length; aI++) {\n console.log(\"%6.2f, \", aH[aI]);\n }\n }\n console.log(\"\\n\");\n}\n;\nb.prototype._$72 = function(aH) {\n if (this._$5P == null) {\n return null;\n }\n return this._$5P[aH];\n}\n;\nb.prototype.getIndexArray = function() {\n return this._$BP;\n}\n;\nfunction ag(aH) {\n aB.prototype.constructor.call(this, aH);\n this._$8r = a._$ur;\n this._$Cr = null;\n this._$hr = null;\n}\nag.prototype = new aB();\nag.prototype.getTransformedPoints = function() {\n return (this._$hr != null) ? this._$hr : this._$Cr;\n}\n;\nfunction k() {\n if (j) {\n return;\n }\n this.x = null;\n this.y = null;\n}\nk.prototype._$HT = function(aH) {\n this.x = aH.x;\n this.y = aH.y;\n}\n;\nk.prototype._$HT = function(aH, aI) {\n this.x = aH;\n this.y = aI;\n}\n;\nfunction l(aH) {\n if (j) {\n return;\n }\n aa.prototype.constructor.call(this);\n this.drawParamWebGL = new C(aH);\n this.drawParamWebGL.setGL(Q.getGL(aH));\n}\nl.prototype = new aa();\nl.loadModel = function(aI) {\n var aH = new l();\n aa._$62(aH, aI);\n return aH;\n}\n;\nl.loadModel = function(aI, aK) {\n var aJ = aK || 0;\n var aH = new l(aJ);\n aa._$62(aH, aI);\n return aH;\n}\n;\nl._$to = function() {\n var aH = new l();\n return aH;\n}\n;\nl._$er = function(aM) {\n var aJ = new _$5(\"../_$_r/_$t0/_$Ri/_$_P._$d\");\n if (aJ.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aJ._$PL());\n }\n var aH = [\"../_$_r/_$t0/_$Ri/_$_P.512/_$CP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$vP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$EP._$1\", \"../_$_r/_$t0/_$Ri/_$_P.512/_$pP._$1\"];\n var aK = l.loadModel(aJ._$3b());\n for (var aI = 0; aI < aH.length; aI++) {\n var aL = new _$5(aH[aI]);\n if (aL.exists() == false) {\n throw new _$ls(\"_$t0 _$_ _$6 _$Ui :: \" + aL._$PL());\n }\n aK.setTexture(aI, _$nL._$_o(aM, aL._$3b()));\n }\n return aK;\n}\n;\nl.prototype.setGL = function(aH) {\n Q.setGL(aH);\n}\n;\nl.prototype.setTransform = function(aH) {\n this.drawParamWebGL.setTransform(aH);\n}\n;\nl.prototype.update = function() {\n this._$5S.update();\n this._$5S.preDraw(this.drawParamWebGL);\n}\n;\nl.prototype.draw = function() {\n this._$5S.draw(this.drawParamWebGL);\n}\n;\nl.prototype._$K2 = function() {\n this.drawParamWebGL._$K2();\n}\n;\nl.prototype.setTexture = function(aI, aH) {\n if (this.drawParamWebGL == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this.drawParamWebGL.setTexture(aI, aH);\n}\n;\nl.prototype.setTexture = function(aI, aH) {\n if (this.drawParamWebGL == null) {\n q._$li(\"_$Yi for QT _$ki / _$XS() is _$6 _$ui!!\");\n }\n this.drawParamWebGL.setTexture(aI, aH);\n}\n;\nl.prototype._$Rs = function() {\n return this.drawParamWebGL._$Rs();\n}\n;\nl.prototype._$Ds = function(aH) {\n this.drawParamWebGL._$Ds(aH);\n}\n;\nl.prototype.getDrawParam = function() {\n return this.drawParamWebGL;\n}\n;\nl.prototype.setMatrix = function(aH) {\n this.drawParamWebGL.setMatrix(aH);\n}\n;\nl.prototype.setPremultipliedAlpha = function(aH) {\n this.drawParamWebGL.setPremultipliedAlpha(aH);\n}\n;\nl.prototype.isPremultipliedAlpha = function() {\n return this.drawParamWebGL.isPremultipliedAlpha();\n}\n;\nl.prototype.setAnisotropy = function(aH) {\n this.drawParamWebGL.setAnisotropy(aH);\n}\n;\nl.prototype.getAnisotropy = function() {\n return this.drawParamWebGL.getAnisotropy();\n}\n;\nfunction V() {\n if (j) {\n return;\n }\n this.motions = null;\n this._$eb = false;\n this.motions = new Array();\n}\nV.prototype._$tb = function() {\n return this.motions;\n}\n;\nV.prototype.startMotion = function(aJ, aI) {\n var aM = null;\n var aL = null;\n var aH = this.motions.length;\n for (var aK = 0; aK < aH; ++aK) {\n aL = this.motions[aK];\n if (aL == null) {\n continue;\n }\n aL._$qS(aL._$w0.getFadeOut());\n if (this._$eb) {\n q._$Ji(\"MotionQueueManager[size:%2d]->startMotion() / start _$K _$3 (m%d)\\n\", aH, aL._$sr);\n }\n }\n if (aJ == null) {\n return -1;\n }\n aL = new M();\n aL._$w0 = aJ;\n this.motions.push(aL);\n var aN = aL._$sr;\n if (this._$eb) {\n q._$Ji(\"MotionQueueManager[size:%2d]->startMotion() / new _$w0 (m%d)\\n\", aH, aN);\n }\n return aN;\n}\n;\nV.prototype.updateParam = function(aJ) {\n try {\n var aI = false;\n for (var aK = 0; aK < this.motions.length; aK++) {\n var aL = this.motions[aK];\n if (aL == null) {\n this.motions.splice(aK, 1);\n aK--;\n continue;\n }\n var aH = aL._$w0;\n if (aH == null) {\n this.motions = this.motions.splice(aK, 1);\n aK--;\n continue;\n }\n aH.updateParam(aJ, aL);\n aI = true;\n if (aL.isFinished()) {\n if (this._$eb) {\n q._$Ji(\"MotionQueueManager[size:%2d]->updateParam() / _$T0 _$w0 (m%d)\\n\", this.motions.length - 1, aL._$sr);\n }\n this.motions.splice(aK, 1);\n aK--;\n } else {}\n }\n return aI;\n } catch (aM) {\n q._$li(aM);\n return true;\n }\n}\n;\nV.prototype.isFinished = function(aK) {\n if (arguments.length >= 1) {\n for (var aI = 0; aI < this.motions.length; aI++) {\n var aJ = this.motions[aI];\n if (aJ == null) {\n continue;\n }\n if (aJ._$sr == aK && !aJ.isFinished()) {\n return false;\n }\n }\n return true;\n } else {\n for (var aI = 0; aI < this.motions.length; aI++) {\n var aJ = this.motions[aI];\n if (aJ == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n var aH = aJ._$w0;\n if (aH == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n if (!aJ.isFinished()) {\n return false;\n }\n }\n return true;\n }\n}\n;\nV.prototype.stopAllMotions = function() {\n for (var aI = 0; aI < this.motions.length; aI++) {\n var aJ = this.motions[aI];\n if (aJ == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n var aH = aJ._$w0;\n if (aH == null) {\n this.motions.splice(aI, 1);\n aI--;\n continue;\n }\n if (true) {\n this.motions.splice(aI, 1);\n aI--;\n }\n }\n}\n;\nV.prototype._$Zr = function(aH) {\n this._$eb = aH;\n}\n;\nV.prototype._$e = function() {\n console.log(\"-- _$R --\\n\");\n for (var aH = 0; aH < this.motions.length; aH++) {\n var aI = this.motions[aH];\n var aJ = aI._$w0;\n console.log(\"MotionQueueEnt[%d] :: %s\\n\", this.motions.length, aJ.toString());\n }\n}\n;\nfunction M() {\n this._$w0 = null;\n this._$AT = true;\n this._$9L = false;\n this._$z2 = -1;\n this._$bs = -1;\n this._$Do = -1;\n this._$sr = null;\n this._$sr = M._$Gs++;\n}\nM._$Gs = 0;\nM.prototype.isFinished = function() {\n return this._$9L;\n}\n;\nM.prototype._$qS = function(aJ) {\n var aI = P.getUserTimeMSec();\n var aH = aI + aJ;\n if (this._$Do < 0 || aH < this._$Do) {\n this._$Do = aH;\n }\n}\n;\nM.prototype._$Bs = function() {\n return this._$sr;\n}\n;\nfunction am() {\n this.m = new Array(1,0,0,0,1,0,0,0,1);\n}\nam.prototype.setContext = function(aI) {\n var aH = this.m;\n aI.transform(aH[0], aH[1], aH[3], aH[4], aH[6], aH[7]);\n}\n;\nam.prototype.toString = function() {\n var aI = \"LDTransform { \";\n for (var aH = 0; aH < 9; aH++) {\n aI += this.m[aH].toFixed(2) + \" ,\";\n }\n aI += \" }\";\n return aI;\n}\n;\nam.prototype.identity = function() {\n var aH = this.m;\n aH[0] = aH[4] = aH[8] = 1;\n aH[1] = aH[2] = aH[3] = aH[5] = aH[6] = aH[7] = 0;\n}\n;\nam.prototype._$PS = function(aI, aK, aJ) {\n if (aJ == null) {\n aJ = new Array(0,0);\n }\n var aH = this.m;\n aJ[0] = aH[0] * aI + aH[3] * aK + aH[6];\n aJ[1] = aH[1] * aI + aH[4] * aK + aH[7];\n return aJ;\n}\n;\nam.prototype._$P2 = function(aK) {\n if (!aK) {\n aK = new am();\n }\n var aI = this.m;\n var aT = aI[0];\n var aS = aI[1];\n var aR = aI[2];\n var aQ = aI[3];\n var aP = aI[4];\n var aO = aI[5];\n var aN = aI[6];\n var aM = aI[7];\n var aL = aI[8];\n var aJ = aT * aP * aL + aS * aO * aN + aR * aQ * aM - aT * aO * aM - aR * aP * aN - aS * aQ * aL;\n if (aJ == 0) {\n return null;\n } else {\n var aH = 1 / aJ;\n aK.m[0] = aH * (aP * aL - aM * aO);\n aK.m[1] = aH * (aM * aR - aS * aL);\n aK.m[2] = aH * (aS * aO - aP * aR);\n aK.m[3] = aH * (aN * aO - aQ * aL);\n aK.m[4] = aH * (aT * aL - aN * aR);\n aK.m[5] = aH * (aQ * aR - aT * aO);\n aK.m[6] = aH * (aQ * aM - aN * aP);\n aK.m[7] = aH * (aN * aS - aT * aM);\n aK.m[8] = aH * (aT * aP - aQ * aS);\n return aK;\n }\n}\n;\nam.prototype.transform = function(aI, aK, aJ) {\n if (aJ == null) {\n aJ = new Array(0,0);\n }\n var aH = this.m;\n aJ[0] = aH[0] * aI + aH[3] * aK + aH[6];\n aJ[1] = aH[1] * aI + aH[4] * aK + aH[7];\n return aJ;\n}\n;\nam.prototype.translate = function(aI, aJ) {\n var aH = this.m;\n aH[6] = aH[0] * aI + aH[3] * aJ + aH[6];\n aH[7] = aH[1] * aI + aH[4] * aJ + aH[7];\n aH[8] = aH[2] * aI + aH[5] * aJ + aH[8];\n}\n;\nam.prototype.scale = function(aJ, aI) {\n var aH = this.m;\n aH[0] *= aJ;\n aH[1] *= aJ;\n aH[2] *= aJ;\n aH[3] *= aI;\n aH[4] *= aI;\n aH[5] *= aI;\n}\n;\nam.prototype.shear = function(aM, aL) {\n var aH = this.m;\n var aK = aH[0] + aH[3] * aL;\n var aJ = aH[1] + aH[4] * aL;\n var aI = aH[2] + aH[5] * aL;\n aH[3] = aH[0] * aM + aH[3];\n aH[4] = aH[1] * aM + aH[4];\n aH[5] = aH[2] * aM + aH[5];\n aH[0] = aK;\n aH[1] = aJ;\n aH[2] = aI;\n}\n;\nam.prototype.rotate = function(aM) {\n var aH = this.m;\n var aN = Math.cos(aM);\n var aL = Math.sin(aM);\n var aK = aH[0] * aN + aH[3] * aL;\n var aJ = aH[1] * aN + aH[4] * aL;\n var aI = aH[2] * aN + aH[5] * aL;\n aH[3] = -aH[0] * aL + aH[3] * aN;\n aH[4] = -aH[1] * aL + aH[4] * aN;\n aH[5] = -aH[2] * aL + aH[5] * aN;\n aH[0] = aK;\n aH[1] = aJ;\n aH[2] = aI;\n}\n;\nam.prototype.concatenate = function(aL) {\n var aO = this.m;\n var aM = aL.m;\n var aS = aO[0] * aM[0] + aO[3] * aM[1] + aO[6] * aM[2];\n var aR = aO[1] * aM[0] + aO[4] * aM[1] + aO[7] * aM[2];\n var aQ = aO[2] * aM[0] + aO[5] * aM[1] + aO[8] * aM[2];\n var aP = aO[0] * aM[3] + aO[3] * aM[4] + aO[6] * aM[5];\n var aN = aO[1] * aM[3] + aO[4] * aM[4] + aO[7] * aM[5];\n var aK = aO[2] * aM[3] + aO[5] * aM[4] + aO[8] * aM[5];\n var aJ = aO[0] * aM[6] + aO[3] * aM[7] + aO[6] * aM[8];\n var aI = aO[1] * aM[6] + aO[4] * aM[7] + aO[7] * aM[8];\n var aH = aO[2] * aM[6] + aO[5] * aM[7] + aO[8] * aM[8];\n m[0] = aS;\n m[1] = aR;\n m[2] = aQ;\n m[3] = aP;\n m[4] = aN;\n m[5] = aK;\n m[6] = aJ;\n m[7] = aI;\n m[8] = aH;\n}\n;\nfunction n(aH) {\n if (j) {\n return;\n }\n ak.prototype.constructor.call(this, aH);\n}\nn.prototype = new ak();\nn._$eT = null;\nn._$tP = new Object();\nn._$2o = function() {\n if (n._$eT == null) {\n n._$eT = n.getID(\"DST_BASE\");\n }\n return n._$eT;\n}\n;\nn._$27 = function() {\n n._$tP.clear();\n n._$eT = null;\n}\n;\nn.getID = function(aH) {\n var aI = n._$tP[aH];\n if (aI == null) {\n aI = new n(aH);\n n._$tP[aH] = aI;\n }\n return aI;\n}\n;\nn.prototype._$3s = function() {\n return new n();\n}\n;\nfunction C(aH) {\n if (j) {\n return;\n }\n ax.prototype.constructor.call(this);\n this.textures = new Array();\n this.transform = null;\n this.gl = null;\n this.glno = aH;\n this.firstDraw = true;\n this.anisotropyExt = null;\n this.maxAnisotropy = 0;\n this._$As = 32;\n this._$Gr = false;\n this._$NT = null;\n this._$vS = null;\n this._$no = null;\n this.vertShader = null;\n this.fragShader = null;\n this.vertShaderOff = null;\n this.fragShaderOff = null;\n}\nC.prototype = new ax();\nC._$9r = function(aH) {\n var aI = new Float32Array(aH);\n return aI;\n}\n;\nC._$vb = function(aH) {\n var aI = new Int16Array(aH);\n return aI;\n}\n;\nC._$cr = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = C._$9r(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nC._$mb = function(aI, aH) {\n if (aI == null || aI._$yL() < aH.length) {\n aI = C._$vb(aH.length * 2);\n aI.put(aH);\n aI._$oT(0);\n } else {\n aI.clear();\n aI.put(aH);\n aI._$oT(0);\n }\n return aI;\n}\n;\nC._$Hs = function() {\n return this._$Gr;\n}\n;\nC._$as = function(aH) {\n this._$Gr = aH;\n}\n;\nC.prototype.getGL = function() {\n return this.gl;\n}\n;\nC.prototype.setGL = function(aH) {\n this.gl = aH;\n}\n;\nC.prototype.setTransform = function(aH) {\n this.transform = aH;\n}\n;\nC.prototype._$ZT = function() {\n var aH = this.gl;\n if (this.firstDraw) {\n this.initShader();\n this.firstDraw = false;\n this.anisotropyExt = aH.getExtension(\"EXT_texture_filter_anisotropic\") || aH.getExtension(\"WEBKIT_EXT_texture_filter_anisotropic\") || aH.getExtension(\"MOZ_EXT_texture_filter_anisotropic\");\n if (this.anisotropyExt) {\n this.maxAnisotropy = aH.getParameter(this.anisotropyExt.MAX_TEXTURE_MAX_ANISOTROPY_EXT);\n }\n }\n aH.disable(aH.SCISSOR_TEST);\n aH.disable(aH.STENCIL_TEST);\n aH.disable(aH.DEPTH_TEST);\n aH.frontFace(aH.CW);\n aH.enable(aH.BLEND);\n aH.colorMask(1, 1, 1, 1);\n aH.bindBuffer(aH.ARRAY_BUFFER, null);\n aH.bindBuffer(aH.ELEMENT_ARRAY_BUFFER, null);\n}\n;\nC.prototype._$Uo = function(aS, aT, aL, aU, aV, aN, aM, aO) {\n if (aN < 0.01 && this.clipBufPre_clipContextMask == null) {\n return;\n }\n var aH = aN > 0.9 ? Q.EXPAND_W : 0;\n var a0 = this.gl;\n if (this.gl == null) {\n throw new Error(\"gl is null\");\n }\n var a1 = false;\n var aQ = 1;\n var aP = 1;\n var a3 = 1;\n var aZ = 1;\n var aW = this._$C0 * aP * aN;\n var a2 = this._$tT * a3 * aN;\n var a5 = this._$WL * aZ * aN;\n var a7 = this._$lT * aN;\n if (this.clipBufPre_clipContextMask != null) {\n a0.frontFace(a0.CCW);\n a0.useProgram(this.shaderProgram);\n this._$vS = T(a0, this._$vS, aU);\n this._$no = L(a0, this._$no, aL);\n a0.enableVertexAttribArray(this.a_position_Loc);\n a0.vertexAttribPointer(this.a_position_Loc, 2, a0.FLOAT, false, 0, 0);\n this._$NT = T(a0, this._$NT, aV);\n a0.activeTexture(a0.TEXTURE1);\n a0.bindTexture(a0.TEXTURE_2D, this.textures[aS]);\n a0.uniform1i(this.s_texture0_Loc, 1);\n a0.enableVertexAttribArray(this.a_texCoord_Loc);\n a0.vertexAttribPointer(this.a_texCoord_Loc, 2, a0.FLOAT, false, 0, 0);\n a0.uniformMatrix4fv(this.u_matrix_Loc, false, this.getClipBufPre_clipContextMask().matrixForMask);\n var aY = this.getClipBufPre_clipContextMask().layoutChannelNo;\n var a4 = this.getChannelFlagAsColor(aY);\n a0.uniform4f(this.u_channelFlag, a4.r, a4.g, a4.b, a4.a);\n var aI = this.getClipBufPre_clipContextMask().layoutBounds;\n a0.uniform4f(this.u_baseColor_Loc, aI.x * 2 - 1, aI.y * 2 - 1, aI._$EL() * 2 - 1, aI._$5T() * 2 - 1);\n a0.uniform1i(this.u_maskFlag_Loc, true);\n } else {\n a1 = this.getClipBufPre_clipContextDraw() != null;\n if (a1) {\n a0.useProgram(this.shaderProgramOff);\n this._$vS = T(a0, this._$vS, aU);\n this._$no = L(a0, this._$no, aL);\n a0.enableVertexAttribArray(this.a_position_Loc_Off);\n a0.vertexAttribPointer(this.a_position_Loc_Off, 2, a0.FLOAT, false, 0, 0);\n this._$NT = T(a0, this._$NT, aV);\n a0.activeTexture(a0.TEXTURE1);\n a0.bindTexture(a0.TEXTURE_2D, this.textures[aS]);\n a0.uniform1i(this.s_texture0_Loc_Off, 1);\n a0.enableVertexAttribArray(this.a_texCoord_Loc_Off);\n a0.vertexAttribPointer(this.a_texCoord_Loc_Off, 2, a0.FLOAT, false, 0, 0);\n a0.uniformMatrix4fv(this.u_clipMatrix_Loc_Off, false, this.getClipBufPre_clipContextDraw().matrixForDraw);\n a0.uniformMatrix4fv(this.u_matrix_Loc_Off, false, this.matrix4x4);\n a0.activeTexture(a0.TEXTURE2);\n a0.bindTexture(a0.TEXTURE_2D, Q.fTexture[this.glno]);\n a0.uniform1i(this.s_texture1_Loc_Off, 2);\n var aY = this.getClipBufPre_clipContextDraw().layoutChannelNo;\n var a4 = this.getChannelFlagAsColor(aY);\n a0.uniform4f(this.u_channelFlag_Loc_Off, a4.r, a4.g, a4.b, a4.a);\n a0.uniform4f(this.u_baseColor_Loc_Off, aW, a2, a5, a7);\n } else {\n a0.useProgram(this.shaderProgram);\n this._$vS = T(a0, this._$vS, aU);\n this._$no = L(a0, this._$no, aL);\n a0.enableVertexAttribArray(this.a_position_Loc);\n a0.vertexAttribPointer(this.a_position_Loc, 2, a0.FLOAT, false, 0, 0);\n this._$NT = T(a0, this._$NT, aV);\n a0.activeTexture(a0.TEXTURE1);\n a0.bindTexture(a0.TEXTURE_2D, this.textures[aS]);\n a0.uniform1i(this.s_texture0_Loc, 1);\n a0.enableVertexAttribArray(this.a_texCoord_Loc);\n a0.vertexAttribPointer(this.a_texCoord_Loc, 2, a0.FLOAT, false, 0, 0);\n a0.uniformMatrix4fv(this.u_matrix_Loc, false, this.matrix4x4);\n a0.uniform4f(this.u_baseColor_Loc, aW, a2, a5, a7);\n a0.uniform1i(this.u_maskFlag_Loc, false);\n }\n }\n if (this.culling) {\n this.gl.enable(a0.CULL_FACE);\n } else {\n this.gl.disable(a0.CULL_FACE);\n }\n this.gl.enable(a0.BLEND);\n var a6;\n var aX;\n var aR;\n var aK;\n if (this.clipBufPre_clipContextMask != null) {\n a6 = a0.ONE;\n aX = a0.ONE_MINUS_SRC_ALPHA;\n aR = a0.ONE;\n aK = a0.ONE_MINUS_SRC_ALPHA;\n } else {\n switch (aM) {\n case b._$ms:\n a6 = a0.ONE;\n aX = a0.ONE_MINUS_SRC_ALPHA;\n aR = a0.ONE;\n aK = a0.ONE_MINUS_SRC_ALPHA;\n break;\n case b._$ns:\n a6 = a0.ONE;\n aX = a0.ONE;\n aR = a0.ZERO;\n aK = a0.ONE;\n break;\n case b._$_s:\n a6 = a0.DST_COLOR;\n aX = a0.ONE_MINUS_SRC_ALPHA;\n aR = a0.ZERO;\n aK = a0.ONE;\n break;\n }\n }\n a0.blendEquationSeparate(a0.FUNC_ADD, a0.FUNC_ADD);\n a0.blendFuncSeparate(a6, aX, aR, aK);\n if (this.anisotropyExt) {\n a0.texParameteri(a0.TEXTURE_2D, this.anisotropyExt.TEXTURE_MAX_ANISOTROPY_EXT, this.maxAnisotropy);\n }\n var aJ = aL.length;\n a0.drawElements(a0.TRIANGLES, aJ, a0.UNSIGNED_SHORT, 0);\n a0.bindTexture(a0.TEXTURE_2D, null);\n}\n;\nfunction T(aJ, aH, aI) {\n if (aH == null) {\n aH = aJ.createBuffer();\n }\n aJ.bindBuffer(aJ.ARRAY_BUFFER, aH);\n aJ.bufferData(aJ.ARRAY_BUFFER, aI, aJ.DYNAMIC_DRAW);\n return aH;\n}\nfunction L(aJ, aH, aI) {\n if (aH == null) {\n aH = aJ.createBuffer();\n }\n aJ.bindBuffer(aJ.ELEMENT_ARRAY_BUFFER, aH);\n aJ.bufferData(aJ.ELEMENT_ARRAY_BUFFER, aI, aJ.DYNAMIC_DRAW);\n return aH;\n}\nC.prototype._$Rs = function() {\n throw new Error(\"_$Rs\");\n}\n;\nC.prototype._$Ds = function(aH) {\n throw new Error(\"_$Ds\");\n}\n;\nC.prototype._$K2 = function() {\n for (var aH = 0; aH < this.textures.length; aH++) {\n var aI = this.textures[aH];\n if (aI != 0) {\n this.gl._$K2(1, this.textures, aH);\n this.textures[aH] = null;\n }\n }\n}\n;\nC.prototype.setTexture = function(aH, aI) {\n this.textures[aH] = aI;\n}\n;\nC.prototype.initShader = function() {\n var aH = this.gl;\n this.loadShaders2();\n this.a_position_Loc = aH.getAttribLocation(this.shaderProgram, \"a_position\");\n this.a_texCoord_Loc = aH.getAttribLocation(this.shaderProgram, \"a_texCoord\");\n this.u_matrix_Loc = aH.getUniformLocation(this.shaderProgram, \"u_mvpMatrix\");\n this.s_texture0_Loc = aH.getUniformLocation(this.shaderProgram, \"s_texture0\");\n this.u_channelFlag = aH.getUniformLocation(this.shaderProgram, \"u_channelFlag\");\n this.u_baseColor_Loc = aH.getUniformLocation(this.shaderProgram, \"u_baseColor\");\n this.u_maskFlag_Loc = aH.getUniformLocation(this.shaderProgram, \"u_maskFlag\");\n this.a_position_Loc_Off = aH.getAttribLocation(this.shaderProgramOff, \"a_position\");\n this.a_texCoord_Loc_Off = aH.getAttribLocation(this.shaderProgramOff, \"a_texCoord\");\n this.u_matrix_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_mvpMatrix\");\n this.u_clipMatrix_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_ClipMatrix\");\n this.s_texture0_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"s_texture0\");\n this.s_texture1_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"s_texture1\");\n this.u_channelFlag_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_channelFlag\");\n this.u_baseColor_Loc_Off = aH.getUniformLocation(this.shaderProgramOff, \"u_baseColor\");\n}\n;\nC.prototype.disposeShader = function() {\n var aH = this.gl;\n if (this.shaderProgram) {\n aH.deleteProgram(this.shaderProgram);\n this.shaderProgram = null;\n }\n if (this.shaderProgramOff) {\n aH.deleteProgram(this.shaderProgramOff);\n this.shaderProgramOff = null;\n }\n}\n;\nC.prototype.compileShader = function(aJ, aN) {\n var aM = this.gl;\n var aH;\n var aL = aN;\n var aK = aM.createShader(aJ);\n if (aK == null) {\n q._$Ji(\"_$L0 to create shader\");\n return null;\n }\n aM.shaderSource(aK, aL);\n aM.compileShader(aK);\n var aH = aM.getShaderParameter(aK, aM.COMPILE_STATUS);\n if (!aH) {\n var aI = aM.getShaderInfoLog(aK);\n q._$Ji(\"_$L0 to compile shader : \" + aI);\n aM.deleteShader(aK);\n return null;\n }\n return aK;\n}\n;\nC.prototype.loadShaders2 = function() {\n var aN = this.gl;\n this.shaderProgram = aN.createProgram();\n if (!this.shaderProgram) {\n return false;\n }\n this.shaderProgramOff = aN.createProgram();\n if (!this.shaderProgramOff) {\n return false;\n }\n var aK = \"attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform mat4 u_mvpMatrix;void main(){ gl_Position = u_mvpMatrix * a_position; v_ClipPos = u_mvpMatrix * a_position; v_texCoord = a_texCoord;}\";\n var aM = \"precision mediump float;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform sampler2D s_texture0;uniform vec4 u_channelFlag;uniform vec4 u_baseColor;uniform bool u_maskFlag;void main(){ vec4 smpColor; if(u_maskFlag){ float isInside = step(u_baseColor.x, v_ClipPos.x/v_ClipPos.w) * step(u_baseColor.y, v_ClipPos.y/v_ClipPos.w) * step(v_ClipPos.x/v_ClipPos.w, u_baseColor.z) * step(v_ClipPos.y/v_ClipPos.w, u_baseColor.w); smpColor = u_channelFlag * texture2D(s_texture0 , v_texCoord).a * isInside; }else{ smpColor = texture2D(s_texture0 , v_texCoord) * u_baseColor; } gl_FragColor = smpColor;}\";\n var aL = \"attribute vec4 a_position;attribute vec2 a_texCoord;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform mat4 u_mvpMatrix;uniform mat4 u_ClipMatrix;void main(){ gl_Position = u_mvpMatrix * a_position; v_ClipPos = u_ClipMatrix * a_position; v_texCoord = a_texCoord ;}\";\n var aJ = \"precision mediump float ;varying vec2 v_texCoord;varying vec4 v_ClipPos;uniform sampler2D s_texture0;uniform sampler2D s_texture1;uniform vec4 u_channelFlag;uniform vec4 u_baseColor ;void main(){ vec4 col_formask = texture2D(s_texture0, v_texCoord) * u_baseColor; vec4 clipMask = texture2D(s_texture1, v_ClipPos.xy / v_ClipPos.w) * u_channelFlag; float maskVal = clipMask.r + clipMask.g + clipMask.b + clipMask.a; col_formask = col_formask * maskVal; gl_FragColor = col_formask;}\";\n this.vertShader = this.compileShader(aN.VERTEX_SHADER, aK);\n if (!this.vertShader) {\n q._$Ji(\"Vertex shader compile _$li!\");\n return false;\n }\n this.vertShaderOff = this.compileShader(aN.VERTEX_SHADER, aL);\n if (!this.vertShaderOff) {\n q._$Ji(\"OffVertex shader compile _$li!\");\n return false;\n }\n this.fragShader = this.compileShader(aN.FRAGMENT_SHADER, aM);\n if (!this.fragShader) {\n q._$Ji(\"Fragment shader compile _$li!\");\n return false;\n }\n this.fragShaderOff = this.compileShader(aN.FRAGMENT_SHADER, aJ);\n if (!this.fragShaderOff) {\n q._$Ji(\"OffFragment shader compile _$li!\");\n return false;\n }\n aN.attachShader(this.shaderProgram, this.vertShader);\n aN.attachShader(this.shaderProgram, this.fragShader);\n aN.attachShader(this.shaderProgramOff, this.vertShaderOff);\n aN.attachShader(this.shaderProgramOff, this.fragShaderOff);\n aN.linkProgram(this.shaderProgram);\n aN.linkProgram(this.shaderProgramOff);\n var aH = aN.getProgramParameter(this.shaderProgram, aN.LINK_STATUS);\n if (!aH) {\n var aI = aN.getProgramInfoLog(this.shaderProgram);\n q._$Ji(\"_$L0 to link program: \" + aI);\n if (this.vertShader) {\n aN.deleteShader(this.vertShader);\n this.vertShader = 0;\n }\n if (this.fragShader) {\n aN.deleteShader(this.fragShader);\n this.fragShader = 0;\n }\n if (this.shaderProgram) {\n aN.deleteProgram(this.shaderProgram);\n this.shaderProgram = 0;\n }\n if (this.vertShaderOff) {\n aN.deleteShader(this.vertShaderOff);\n this.vertShaderOff = 0;\n }\n if (this.fragShaderOff) {\n aN.deleteShader(this.fragShaderOff);\n this.fragShaderOff = 0;\n }\n if (this.shaderProgramOff) {\n aN.deleteProgram(this.shaderProgramOff);\n this.shaderProgramOff = 0;\n }\n return false;\n }\n return true;\n}\n;\nC.prototype.createFramebuffer = function() {\n var aL = this.gl;\n var aK = Q.clippingMaskBufferSize;\n var aJ = aL.createFramebuffer();\n aL.bindFramebuffer(aL.FRAMEBUFFER, aJ);\n var aH = aL.createRenderbuffer();\n aL.bindRenderbuffer(aL.RENDERBUFFER, aH);\n aL.renderbufferStorage(aL.RENDERBUFFER, aL.RGBA4, aK, aK);\n aL.framebufferRenderbuffer(aL.FRAMEBUFFER, aL.COLOR_ATTACHMENT0, aL.RENDERBUFFER, aH);\n var aI = aL.createTexture();\n aL.bindTexture(aL.TEXTURE_2D, aI);\n aL.texImage2D(aL.TEXTURE_2D, 0, aL.RGBA, aK, aK, 0, aL.RGBA, aL.UNSIGNED_BYTE, null);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_MIN_FILTER, aL.LINEAR);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_MAG_FILTER, aL.LINEAR);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_WRAP_S, aL.CLAMP_TO_EDGE);\n aL.texParameteri(aL.TEXTURE_2D, aL.TEXTURE_WRAP_T, aL.CLAMP_TO_EDGE);\n aL.framebufferTexture2D(aL.FRAMEBUFFER, aL.COLOR_ATTACHMENT0, aL.TEXTURE_2D, aI, 0);\n aL.bindTexture(aL.TEXTURE_2D, null);\n aL.bindRenderbuffer(aL.RENDERBUFFER, null);\n aL.bindFramebuffer(aL.FRAMEBUFFER, null);\n Q.fTexture[this.glno] = aI;\n return {\n framebuffer: aJ,\n renderbuffer: aH,\n texture: Q.fTexture[this.glno]\n };\n}\n;\nfunction K(aH) {\n if (j) {\n return;\n }\n this._$P = new Int8Array(8);\n this._$R0 = new DataView(this._$P.buffer);\n this._$3i = new Int8Array(1000);\n this._$hL = 0;\n this._$v0 = 0;\n this._$S2 = 0;\n this._$Ko = new Array();\n this._$T = aH;\n this._$F = 0;\n}\nK.prototype._$fP = function() {\n var aK = this._$ST();\n var aJ, aI, aH;\n if ((aK & 128) == 0) {\n return aK & 255;\n } else {\n if (((aJ = this._$ST()) & 128) == 0) {\n return ((aK & 127) << 7) | (aJ & 127);\n } else {\n if (((aI = this._$ST()) & 128) == 0) {\n return ((aK & 127) << 14) | ((aJ & 127) << 7) | (aI & 255);\n } else {\n if (((aH = this._$ST()) & 128) == 0) {\n return ((aK & 127) << 21) | ((aJ & 127) << 14) | ((aI & 127) << 7) | (aH & 255);\n } else {\n throw new J(\"_$L _$0P _\");\n }\n }\n }\n }\n}\n;\nK.prototype.getFormatVersion = function() {\n return this._$S2;\n}\n;\nK.prototype._$gr = function(aH) {\n this._$S2 = aH;\n}\n;\nK.prototype._$3L = function() {\n return this._$fP();\n}\n;\nK.prototype._$mP = function() {\n this._$zT();\n this._$F += 8;\n return this._$T.getFloat64(this._$F - 8);\n}\n;\nK.prototype._$_T = function() {\n this._$zT();\n this._$F += 4;\n return this._$T.getFloat32(this._$F - 4);\n}\n;\nK.prototype._$6L = function() {\n this._$zT();\n this._$F += 4;\n return this._$T.getInt32(this._$F - 4);\n}\n;\nK.prototype._$ST = function() {\n this._$zT();\n return this._$T.getInt8(this._$F++);\n}\n;\nK.prototype._$9T = function() {\n this._$zT();\n this._$F += 2;\n return this._$T.getInt16(this._$F - 2);\n}\n;\nK.prototype._$2T = function() {\n this._$zT();\n this._$F += 8;\n throw new J(\"_$L _$q read long\");\n}\n;\nK.prototype._$po = function() {\n this._$zT();\n return this._$T.getInt8(this._$F++) != 0;\n}\n;\nvar O = true;\nK.prototype._$bT = function() {\n this._$zT();\n var aH = this._$3L();\n var aK = null;\n if (O) {\n try {\n var aM = new ArrayBuffer(aH * 2);\n aK = new Uint16Array(aM);\n for (var aJ = 0; aJ < aH; ++aJ) {\n aK[aJ] = this._$T.getUint8(this._$F++);\n }\n return String.fromCharCode.apply(null, aK);\n } catch (aL) {\n O = false;\n }\n }\n try {\n var aI = new Array();\n if (aK == null) {\n for (var aJ = 0; aJ < aH; ++aJ) {\n aI[aJ] = this._$T.getUint8(this._$F++);\n }\n } else {\n for (var aJ = 0; aJ < aH; ++aJ) {\n aI[aJ] = aK[aJ];\n }\n }\n return String.fromCharCode.apply(null, aI);\n } catch (aL) {\n console.log(\"read utf8 / _$rT _$L0 !! : \" + aL);\n }\n}\n;\nK.prototype._$cS = function() {\n this._$zT();\n var aI = this._$3L();\n var aH = new Int32Array(aI);\n for (var aJ = 0; aJ < aI; aJ++) {\n aH[aJ] = this._$T.getInt32(this._$F);\n this._$F += 4;\n }\n return aH;\n}\n;\nK.prototype._$Tb = function() {\n this._$zT();\n var aI = this._$3L();\n var aH = new Float32Array(aI);\n for (var aJ = 0; aJ < aI; aJ++) {\n aH[aJ] = this._$T.getFloat32(this._$F);\n this._$F += 4;\n }\n return aH;\n}\n;\nK.prototype._$5b = function() {\n this._$zT();\n var aI = this._$3L();\n var aH = new Float64Array(aI);\n for (var aJ = 0; aJ < aI; aJ++) {\n aH[aJ] = this._$T.getFloat64(this._$F);\n this._$F += 8;\n }\n return aH;\n}\n;\nK.prototype._$nP = function() {\n return this._$Jb(-1);\n}\n;\nK.prototype._$Jb = function(aJ) {\n this._$zT();\n if (aJ < 0) {\n aJ = this._$3L();\n }\n if (aJ == ay._$7P) {\n var aH = this._$6L();\n if (0 <= aH && aH < this._$Ko.length) {\n return this._$Ko[aH];\n } else {\n throw new J(\"_$sL _$4i @_$m0\");\n }\n } else {\n var aI = this._$4b(aJ);\n this._$Ko.push(aI);\n return aI;\n }\n}\n;\nK.prototype._$4b = function(aN) {\n if (aN == 0) {\n return null;\n }\n if (aN == 50) {\n var aK = this._$bT();\n var aI = Z.getID(aK);\n return aI;\n } else {\n if (aN == 51) {\n var aK = this._$bT();\n var aI = n.getID(aK);\n return aI;\n } else {\n if (aN == 134) {\n var aK = this._$bT();\n var aI = i.getID(aK);\n return aI;\n } else {\n if (aN == 60) {\n var aK = this._$bT();\n var aI = z.getID(aK);\n return aI;\n }\n }\n }\n }\n if (aN >= 48) {\n var aL = ay._$9o(aN);\n if (aL != null) {\n aL._$F0(this);\n return aL;\n } else {\n return null;\n }\n }\n switch (aN) {\n case 1:\n return this._$bT();\n case 10:\n var aM = this._$6L();\n return new I(aM,true);\n case 11:\n return new av(this._$mP(),this._$mP(),this._$mP(),this._$mP());\n case 12:\n return new av(this._$_T(),this._$_T(),this._$_T(),this._$_T());\n case 13:\n return new e(this._$mP(),this._$mP());\n case 14:\n return new e(this._$_T(),this._$_T());\n case 15:\n var aH = this._$3L();\n var aI = new Array(aH);\n for (var aJ = 0; aJ < aH; aJ++) {\n aI[aJ] = this._$nP();\n }\n return aI;\n case 17:\n var aI = new aD(this._$mP(),this._$mP(),this._$mP(),this._$mP(),this._$mP(),this._$mP());\n return aI;\n case 21:\n return new F(this._$6L(),this._$6L(),this._$6L(),this._$6L());\n case 22:\n return new k(this._$6L(),this._$6L());\n case 23:\n throw new Error(\"_$L _$ro \");\n case 16:\n case 25:\n return this._$cS();\n case 26:\n return this._$5b();\n case 27:\n return this._$Tb();\n case 2:\n case 3:\n case 4:\n case 5:\n case 6:\n case 7:\n case 8:\n case 9:\n case 18:\n case 19:\n case 20:\n case 24:\n case 28:\n throw new J(\"_$6 _$q : _$nP() of 2-9 ,18,19,20,24,28 : \" + aN);\n default:\n throw new J(\"_$6 _$q : _$nP() NO _$i : \" + aN);\n }\n}\n;\nK.prototype._$8L = function() {\n if (this._$hL == 0) {\n this._$v0 = this._$ST();\n } else {\n if (this._$hL == 8) {\n this._$v0 = this._$ST();\n this._$hL = 0;\n }\n }\n return ((this._$v0 >> (7 - this._$hL++)) & 1) == 1;\n}\n;\nK.prototype._$zT = function() {\n if (this._$hL != 0) {\n this._$hL = 0;\n }\n}\n;\nfunction ai() {}\nai.prototype._$wP = function(aM, aI, aK) {\n for (var aL = 0; aL < aK; aL++) {\n for (var aH = 0; aH < aI; aH++) {\n var aJ = 2 * (aH + aL * aI);\n console.log(\"(% 7.3f , % 7.3f) , \", aM[aJ], aM[aJ + 1]);\n }\n console.log(\"\\n\");\n }\n console.log(\"\\n\");\n}\n;\nfunction aC() {}\naC._$2S = Math.PI / 180;\naC._$bS = (Math.PI / 180);\naC._$wS = 180 / Math.PI;\naC._$NS = (180 / Math.PI);\naC.PI_F = Math.PI;\naC._$kT = [0, 0.012368, 0.024734, 0.037097, 0.049454, 0.061803, 0.074143, 0.086471, 0.098786, 0.111087, 0.12337, 0.135634, 0.147877, 0.160098, 0.172295, 0.184465, 0.196606, 0.208718, 0.220798, 0.232844, 0.244854, 0.256827, 0.268761, 0.280654, 0.292503, 0.304308, 0.316066, 0.327776, 0.339436, 0.351044, 0.362598, 0.374097, 0.385538, 0.396921, 0.408243, 0.419502, 0.430697, 0.441826, 0.452888, 0.463881, 0.474802, 0.485651, 0.496425, 0.507124, 0.517745, 0.528287, 0.538748, 0.549126, 0.559421, 0.56963, 0.579752, 0.589785, 0.599728, 0.609579, 0.619337, 0.629, 0.638567, 0.648036, 0.657406, 0.666676, 0.675843, 0.684908, 0.693867, 0.70272, 0.711466, 0.720103, 0.72863, 0.737045, 0.745348, 0.753536, 0.76161, 0.769566, 0.777405, 0.785125, 0.792725, 0.800204, 0.807561, 0.814793, 0.821901, 0.828884, 0.835739, 0.842467, 0.849066, 0.855535, 0.861873, 0.868079, 0.874153, 0.880093, 0.885898, 0.891567, 0.897101, 0.902497, 0.907754, 0.912873, 0.917853, 0.922692, 0.92739, 0.931946, 0.936359, 0.940629, 0.944755, 0.948737, 0.952574, 0.956265, 0.959809, 0.963207, 0.966457, 0.96956, 0.972514, 0.97532, 0.977976, 0.980482, 0.982839, 0.985045, 0.987101, 0.989006, 0.990759, 0.992361, 0.993811, 0.995109, 0.996254, 0.997248, 0.998088, 0.998776, 0.999312, 0.999694, 0.999924, 1];\naC._$92 = function(aK, aI) {\n var aH = Math.atan2(aK[1], aK[0]);\n var aJ = Math.atan2(aI[1], aI[0]);\n return aC._$tS(aH, aJ);\n}\n;\naC._$tS = function(aI, aH) {\n var aJ = aI - aH;\n while (aJ < -Math.PI) {\n aJ += 2 * Math.PI;\n }\n while (aJ > Math.PI) {\n aJ -= 2 * Math.PI;\n }\n return aJ;\n}\n;\naC._$9 = function(aH) {\n return Math.sin(aH);\n}\n;\naC.fcos = function(aH) {\n return Math.cos(aH);\n}\n;\nfunction aB(aH) {\n if (j) {\n return;\n }\n this._$e0 = null;\n this._$IP = null;\n this._$Us = null;\n this._$7s = null;\n this._$IS = [false];\n this._$VS = null;\n this._$AT = true;\n this.baseOpacity = 1;\n this.clipBufPre_clipContext = null;\n this._$e0 = aH;\n}\naB.prototype._$u2 = function() {\n return this._$IS[0];\n}\n;\naB.prototype._$yo = function() {\n return this._$AT && !this._$IS[0];\n}\n;\naB.prototype._$GT = function() {\n return this._$e0;\n}\n;\nfunction r() {}\nr._$W2 = 0;\nr.SYSTEM_INFO = null;\nr.USER_AGENT = navigator.userAgent;\nr.isIPhone = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO._isIPhone;\n}\n;\nr.isIOS = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO._isIPhone || r.SYSTEM_INFO._isIPad;\n}\n;\nr.isAndroid = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO._isAndroid;\n}\n;\nr.getOSVersion = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n return r.SYSTEM_INFO.version;\n}\n;\nr.getOS = function() {\n if (!r.SYSTEM_INFO) {\n r.setup();\n }\n if (r.SYSTEM_INFO._isIPhone || r.SYSTEM_INFO._isIPad) {\n return \"iOS\";\n }\n if (r.SYSTEM_INFO._isAndroid) {\n return \"Android\";\n } else {\n return \"_$Q0 OS\";\n }\n}\n;\nr.setup = function() {\n var aK = r.USER_AGENT;\n function aI(aO, aR) {\n var aN = aO.substring(aR).split(/[ _,;\\.]/);\n var aQ = 0;\n for (var aM = 0; aM <= 2; aM++) {\n if (isNaN(aN[aM])) {\n break;\n }\n var aP = parseInt(aN[aM]);\n if (aP < 0 || aP > 999) {\n q._$li(\"err : \" + aP + \" @UtHtml5.setup()\");\n aQ = 0;\n break;\n }\n aQ += aP * Math.pow(1000, (2 - aM));\n }\n return aQ;\n }\n var aL;\n var aH;\n var aJ = r.SYSTEM_INFO = {\n userAgent: aK\n };\n if ((aL = aK.indexOf(\"iPhone OS \")) >= 0) {\n aJ.os = \"iPhone\";\n aJ._isIPhone = true;\n aJ.version = aI(aK, aL + \"iPhone OS \".length);\n } else {\n if ((aL = aK.indexOf(\"iPad\")) >= 0) {\n aL = aK.indexOf(\"CPU OS\");\n if (aL < 0) {\n q._$li(\" err : \" + aK + \" @UtHtml5.setup()\");\n return;\n }\n aJ.os = \"iPad\";\n aJ._isIPad = true;\n aJ.version = aI(aK, aL + \"CPU OS \".length);\n } else {\n if ((aL = aK.indexOf(\"Android\")) >= 0) {\n aJ.os = \"Android\";\n aJ._isAndroid = true;\n aJ.version = aI(aK, aL + \"Android \".length);\n } else {\n aJ.os = \"-\";\n aJ.version = -1;\n }\n }\n }\n}\n;\nQ.init();\nvar j = false;\n\nexport{\n P as UtSystem,\n q as UtDebug,\n am as LDTransform,\n au as LDGL,\n Q as Live2D,\n l as Live2DModelWebGL,\n v as Live2DModelJS,\n ao as Live2DMotion,\n V as MotionQueueManager,\n u as PhysicsHair,\n ah as AMotion,\n i as PartsDataID,\n Z as DrawDataID,\n n as BaseDataID,\n z as ParamID,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/lib/live2d.core.js","/**\n *\n * You can modify and use this source freely\n * only for the development of application related Live2D.\n *\n * (c) Live2D Inc. All rights reserved.\n */\n\n/**\n * EYHN 基于 live2d 官方 Live2DFramework.js 修改\n *\n * Copyright © 2016 - 2017 EYHN\n */\n\n// Modified by xiazeyu.\n\n/**\n* @desc Basic functions releated to model react\n*/\n\nimport { UtSystem,\n UtDebug,\n LDTransform,\n LDGL,\n Live2D,\n Live2DModelWebGL,\n Live2DModelJS,\n Live2DMotion,\n MotionQueueManager,\n PhysicsHair,\n AMotion,\n PartsDataID,\n DrawDataID,\n BaseDataID,\n ParamID } from './live2d.core';\n\n//============================================================\n//============================================================\n// class L2DBaseModel\n//============================================================\n//============================================================\nfunction L2DBaseModel() {\n this.live2DModel = null; // ALive2DModel\n this.modelMatrix = null; // L2DModelMatrix\n this.eyeBlink = null; // L2DEyeBlink\n this.physics = null; // L2DPhysics\n this.pose = null; // L2DPose\n this.debugMode = false;\n this.initialized = false;\n this.updating = false;\n this.alpha = 1;\n this.accAlpha = 0;\n this.lipSync = false;\n this.lipSyncValue = 0;\n this.accelX = 0;\n this.accelY = 0;\n this.accelZ = 0;\n this.dragX = 0;\n this.dragY = 0;\n this.startTimeMSec = null;\n this.mainMotionManager = new L2DMotionManager(); //L2DMotionManager\n this.expressionManager = new L2DMotionManager(); //L2DMotionManager\n this.motions = {};\n this.expressions = {};\n this.isTexLoaded = false;\n}\n\nvar texCounter = 0;\n\n//============================================================\n// L2DBaseModel # getModelMatrix()\n//============================================================\nL2DBaseModel.prototype.getModelMatrix = function () {\n return this.modelMatrix;\n}\n\n//============================================================\n// L2DBaseModel # setAlpha()\n//============================================================\nL2DBaseModel.prototype.setAlpha = function (a/*float*/) {\n if (a > 0.999) a = 1;\n if (a < 0.001) a = 0;\n this.alpha = a;\n}\n\n//============================================================\n// L2DBaseModel # getAlpha()\n//============================================================\nL2DBaseModel.prototype.getAlpha = function () {\n return this.alpha;\n}\n\n//============================================================\n// L2DBaseModel # isInitialized()\n//============================================================\nL2DBaseModel.prototype.isInitialized = function () {\n return this.initialized;\n}\n\n//============================================================\n// L2DBaseModel # setInitialized()\n//============================================================\nL2DBaseModel.prototype.setInitialized = function (v/*boolean*/) {\n this.initialized = v;\n}\n\n//============================================================\n// L2DBaseModel # isUpdating()\n//============================================================\nL2DBaseModel.prototype.isUpdating = function () {\n return this.updating;\n}\n\n//============================================================\n// L2DBaseModel # setUpdating()\n//============================================================\nL2DBaseModel.prototype.setUpdating = function (v/*boolean*/) {\n this.updating = v;\n}\n\n//============================================================\n// L2DBaseModel # getLive2DModel()\n//============================================================\nL2DBaseModel.prototype.getLive2DModel = function () {\n return this.live2DModel;\n}\n\n//============================================================\n// L2DBaseModel # setLipSync()\n//============================================================\nL2DBaseModel.prototype.setLipSync = function (v/*boolean*/) {\n this.lipSync = v;\n}\n\n//============================================================\n// L2DBaseModel # setLipSyncValue()\n//============================================================\nL2DBaseModel.prototype.setLipSyncValue = function (v/*float*/) {\n this.lipSyncValue = v;\n}\n\n//============================================================\n// L2DBaseModel # setAccel()\n//============================================================\nL2DBaseModel.prototype.setAccel = function (x/*float*/, y/*float*/, z/*float*/) {\n this.accelX = x;\n this.accelY = y;\n this.accelZ = z;\n}\n\n//============================================================\n// L2DBaseModel # setDrag()\n//============================================================\nL2DBaseModel.prototype.setDrag = function (x/*float*/, y/*float*/) {\n this.dragX = x;\n this.dragY = y;\n}\n\n//============================================================\n// L2DBaseModel # getMainMotionManager()\n//============================================================\nL2DBaseModel.prototype.getMainMotionManager = function () {\n return this.mainMotionManager;\n}\n\n//============================================================\n// L2DBaseModel # getExpressionManager()\n//============================================================\nL2DBaseModel.prototype.getExpressionManager = function () {\n return this.expressionManager;\n}\n\n//============================================================\n// L2DBaseModel # loadModelData()\n//============================================================\nL2DBaseModel.prototype.loadModelData = function (path/*String*/, callback) {\n /*\n if( this.live2DModel != null ) {\n this.live2DModel.deleteTextures();\n }\n */\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n if (this.debugMode) pm.log(\"Load model : \" + path);\n\n var thisRef = this;\n pm.loadLive2DModel(path, function (l2dModel) {\n thisRef.live2DModel = l2dModel;\n thisRef.live2DModel.saveParam();\n\n var _err = Live2D.getError();\n\n if (_err != 0) {\n console.error(\"Error : Failed to loadModelData().\");\n return;\n }\n\n thisRef.modelMatrix = new L2DModelMatrix(\n thisRef.live2DModel.getCanvasWidth(),\n thisRef.live2DModel.getCanvasHeight()); //L2DModelMatrix\n thisRef.modelMatrix.setWidth(2);\n thisRef.modelMatrix.setCenterPosition(0, 0);\n\n callback(thisRef.live2DModel);\n });\n}\n\n\n//============================================================\n// L2DBaseModel # loadTexture()\n//============================================================\nL2DBaseModel.prototype.loadTexture = function (no/*int*/, path/*String*/, callback) {\n texCounter++;\n\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n\n if (this.debugMode) pm.log(\"Load Texture : \" + path);\n\n var thisRef = this;\n pm.loadTexture(this.live2DModel, no, path, function () {\n texCounter--;\n if (texCounter == 0) thisRef.isTexLoaded = true;\n if (typeof callback == \"function\") callback();\n });\n\n}\n\n//============================================================\n// L2DBaseModel # loadMotion()\n//============================================================\nL2DBaseModel.prototype.loadMotion = function (name/*String*/, path /*String*/, callback) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n\n if (this.debugMode) pm.log(\"Load Motion : \" + path);\n\n var motion = null; //Live2DMotion\n\n var thisRef = this;\n pm.loadBytes(path, function (buf) {\n motion = Live2DMotion.loadMotion(buf);\n if (name != null) {\n thisRef.motions[name] = motion;\n }\n callback(motion);\n });\n\n}\n\n//============================================================\n// L2DBaseModel # loadExpression()\n//============================================================\nL2DBaseModel.prototype.loadExpression = function (name/*String*/, path /*String*/, callback) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n\n if (this.debugMode) pm.log(\"Load Expression : \" + path);\n\n var thisRef = this;\n pm.loadBytes(path, function (buf) {\n if (name != null) {\n thisRef.expressions[name] = L2DExpressionMotion.loadJson(buf);\n }\n if (typeof callback == \"function\") callback();\n });\n}\n\n//============================================================\n// L2DBaseModel # loadPose()\n//============================================================\nL2DBaseModel.prototype.loadPose = function (path /*String*/, callback) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n if (this.debugMode) pm.log(\"Load Pose : \" + path);\n var thisRef = this;\n try {\n pm.loadBytes(path, function (buf) {\n thisRef.pose = L2DPose.load(buf);\n if (typeof callback == \"function\") callback();\n });\n }\n catch (e) {\n console.warn(e);\n }\n}\n\n//============================================================\n// L2DBaseModel # loadPhysics()\n//============================================================\nL2DBaseModel.prototype.loadPhysics = function (path/*String*/) {\n var pm = Live2DFramework.getPlatformManager(); //IPlatformManager\n if (this.debugMode) pm.log(\"Load Physics : \" + path);\n var thisRef = this;\n try {\n pm.loadBytes(path, function (buf) {\n thisRef.physics = L2DPhysics.load(buf);\n });\n }\n catch (e) {\n console.warn(e);\n }\n}\n\n//============================================================\n// L2DBaseModel # hitTestSimple()\n//============================================================\nL2DBaseModel.prototype.hitTestSimple = function (drawID, testX, testY) {\n\n\tif(this.live2DModel === null) return !1;\n\n var drawIndex = this.live2DModel.getDrawDataIndex(drawID);\n\n if (drawIndex < 0) return false;\n\n var points = this.live2DModel.getTransformedPoints(drawIndex);\n var left = this.live2DModel.getCanvasWidth();\n var right = 0;\n var top = this.live2DModel.getCanvasHeight();\n var bottom = 0;\n\n for (var j = 0; j < points.length; j = j + 2) {\n var x = points[j];\n var y = points[j + 1];\n\n if (x < left) left = x;\n if (x > right) right = x;\n if (y < top) top = y;\n if (y > bottom) bottom = y;\n }\n var tx = this.modelMatrix.invertTransformX(testX);\n var ty = this.modelMatrix.invertTransformY(testY);\n\n return (left <= tx && tx <= right && top <= ty && ty <= bottom);\n}\n\n//============================================================\n//============================================================\n// class L2DExpressionMotion extends AMotion\n//============================================================\n//============================================================\nfunction L2DExpressionMotion() {\n AMotion.prototype.constructor.call(this);\n this.paramList = new Array(); //ArrayList\n}\n\nL2DExpressionMotion.prototype = new AMotion(); // L2DExpressionMotion extends AMotion\n\n//============================================================\nL2DExpressionMotion.EXPRESSION_DEFAULT = \"DEFAULT\";\nL2DExpressionMotion.TYPE_SET = 0;\nL2DExpressionMotion.TYPE_ADD = 1;\nL2DExpressionMotion.TYPE_MULT = 2;\n\n//============================================================\n// static L2DExpressionMotion.loadJson()\n//============================================================\nL2DExpressionMotion.loadJson = function (buf) {\n var ret = new L2DExpressionMotion();\n\n var pm = Live2DFramework.getPlatformManager();\n var json = pm.jsonParseFromBytes(buf);\n\n ret.setFadeIn(parseInt(json.fade_in) > 0 ? parseInt(json.fade_in) : 1000);\n ret.setFadeOut(parseInt(json.fade_out) > 0 ? parseInt(json.fade_out) : 1000);\n\n if (json.params == null) {\n return ret;\n }\n\n var params = json.params;\n var paramNum = params.length;\n ret.paramList = []; //ArrayList\n for (var i = 0; i < paramNum; i++) {\n var param = params[i];\n var paramID = param.id.toString();\n var value = parseFloat(param.val);\n var calcTypeInt = L2DExpressionMotion.TYPE_ADD;\n var calc = param.calc != null ? param.calc.toString() : \"add\";\n if (calc === \"add\") {\n calcTypeInt = L2DExpressionMotion.TYPE_ADD;\n }\n else if (calc === \"mult\") {\n calcTypeInt = L2DExpressionMotion.TYPE_MULT;\n }\n else if (calc === \"set\") {\n calcTypeInt = L2DExpressionMotion.TYPE_SET;\n }\n else {\n calcTypeInt = L2DExpressionMotion.TYPE_ADD;\n }\n if (calcTypeInt == L2DExpressionMotion.TYPE_ADD) {\n var defaultValue = param.def == null ? 0 : parseFloat(param.def);\n value = value - defaultValue;\n }\n else if (calcTypeInt == L2DExpressionMotion.TYPE_MULT) {\n var defaultValue = param.def == null ? 1 : parseFloat(param.def);\n if (defaultValue == 0) defaultValue = 1;\n value = value / defaultValue;\n }\n\n var item = new L2DExpressionParam();\n item.id = paramID;\n item.type = calcTypeInt;\n item.value = value;\n\n ret.paramList.push(item);\n }\n\n return ret;\n}\n\n\n//============================================================\n// L2DExpressionMotion # updateParamExe()\n//============================================================\nL2DExpressionMotion.prototype.updateParamExe = function (model /*ALive2DModel*/, timeMSec/*long*/, weight /*float*/, motionQueueEnt /*MotionQueueEnt*/) {\n for (var i = this.paramList.length - 1; i >= 0; --i) {\n var param = this.paramList[i]; //L2DExpressionParam\n // if (!param || !param.type) continue;\n if (param.type == L2DExpressionMotion.TYPE_ADD) {\n model.addToParamFloat(param.id, param.value, weight);\n }\n else if (param.type == L2DExpressionMotion.TYPE_MULT) {\n model.multParamFloat(param.id, param.value, weight);\n }\n else if (param.type == L2DExpressionMotion.TYPE_SET) {\n model.setParamFloat(param.id, param.value, weight);\n }\n }\n}\n\n//============================================================\n//============================================================\n// class L2DExpressionParam\n//============================================================\n//============================================================\nfunction L2DExpressionParam() {\n this.id = \"\";\n this.type = -1;\n this.value = null;\n}\n\n//============================================================\n//============================================================\n// class L2DEyeBlink\n//============================================================\n//============================================================\nfunction L2DEyeBlink() {\n this.nextBlinkTime = null /* TODO NOT INIT */; //\n this.stateStartTime = null /* TODO NOT INIT */; //\n this.blinkIntervalMsec = null /* TODO NOT INIT */; //\n this.eyeState = EYE_STATE.STATE_FIRST;\n this.blinkIntervalMsec = 4000;\n this.closingMotionMsec = 100;\n this.closedMotionMsec = 50;\n this.openingMotionMsec = 150;\n this.closeIfZero = true;\n this.eyeID_L = \"PARAM_EYE_L_OPEN\";\n this.eyeID_R = \"PARAM_EYE_R_OPEN\";\n}\n\n//============================================================\n// L2DEyeBlink # calcNextBlink()\n//============================================================\nL2DEyeBlink.prototype.calcNextBlink = function () {\n var time /*long*/ = UtSystem.getUserTimeMSec();\n var r /*Number*/ = Math.random();\n return /*(long)*/ (time + r * (2 * this.blinkIntervalMsec - 1));\n}\n\n//============================================================\n// L2DEyeBlink # setInterval()\n//============================================================\nL2DEyeBlink.prototype.setInterval = function (blinkIntervalMsec /*int*/) {\n this.blinkIntervalMsec = blinkIntervalMsec;\n}\n\n//============================================================\n// L2DEyeBlink # setEyeMotion()\n//============================================================\nL2DEyeBlink.prototype.setEyeMotion = function (closingMotionMsec/*int*/, closedMotionMsec/*int*/, openingMotionMsec/*int*/) {\n this.closingMotionMsec = closingMotionMsec;\n this.closedMotionMsec = closedMotionMsec;\n this.openingMotionMsec = openingMotionMsec;\n}\n\n//============================================================\n// L2DEyeBlink # updateParam()\n//============================================================\nL2DEyeBlink.prototype.updateParam = function (model/*ALive2DModel*/) {\n var time /*:long*/ = UtSystem.getUserTimeMSec();\n var eyeParamValue /*:Number*/;\n var t /*:Number*/ = 0;\n switch (this.eyeState) {\n case EYE_STATE.STATE_CLOSING:\n t = (time - this.stateStartTime) / this.closingMotionMsec;\n if (t >= 1) {\n t = 1;\n this.eyeState = EYE_STATE.STATE_CLOSED;\n this.stateStartTime = time;\n }\n eyeParamValue = 1 - t;\n break;\n case EYE_STATE.STATE_CLOSED:\n t = (time - this.stateStartTime) / this.closedMotionMsec;\n if (t >= 1) {\n this.eyeState = EYE_STATE.STATE_OPENING;\n this.stateStartTime = time;\n }\n eyeParamValue = 0;\n break;\n case EYE_STATE.STATE_OPENING:\n t = (time - this.stateStartTime) / this.openingMotionMsec;\n if (t >= 1) {\n t = 1;\n this.eyeState = EYE_STATE.STATE_INTERVAL;\n this.nextBlinkTime = this.calcNextBlink();\n }\n eyeParamValue = t;\n break;\n case EYE_STATE.STATE_INTERVAL:\n if (this.nextBlinkTime < time) {\n this.eyeState = EYE_STATE.STATE_CLOSING;\n this.stateStartTime = time;\n }\n eyeParamValue = 1;\n break;\n case EYE_STATE.STATE_FIRST:\n default:\n this.eyeState = EYE_STATE.STATE_INTERVAL;\n this.nextBlinkTime = this.calcNextBlink();\n eyeParamValue = 1;\n break;\n }\n if (!this.closeIfZero) eyeParamValue = -eyeParamValue;\n model.setParamFloat(this.eyeID_L, eyeParamValue);\n model.setParamFloat(this.eyeID_R, eyeParamValue);\n}\n\n//== enum EYE_STATE ==\nvar EYE_STATE = function () { };\n\nEYE_STATE.STATE_FIRST = \"STATE_FIRST\"\nEYE_STATE.STATE_INTERVAL = \"STATE_INTERVAL\"\nEYE_STATE.STATE_CLOSING = \"STATE_CLOSING\"\nEYE_STATE.STATE_CLOSED = \"STATE_CLOSED\"\nEYE_STATE.STATE_OPENING = \"STATE_OPENING\"\n\n//============================================================\n//============================================================\n// class L2DMatrix44\n//============================================================\n//============================================================\nfunction L2DMatrix44() {\n this.tr = new Float32Array(16); //\n this.identity();\n}\n\n//============================================================\n// static L2DMatrix44.mul()\n//============================================================\n// matrix multiplication\nL2DMatrix44.mul = function (a/*float[]*/, b/*float[]*/, dst/*float[]*/) {\n var c = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];\n var n = 4;\n var i, j, k;\n for (i = 0; i < n; i++) {\n for (j = 0; j < n; j++) {\n for (k = 0; k < n; k++) {\n c[i + j * 4] += a[i + k * 4] * b[k + j * 4];\n }\n }\n }\n for (i = 0; i < 16; i++) {\n dst[i] = c[i];\n }\n}\n\n//============================================================\n// L2DMatrix44 # identity()\n//============================================================\nL2DMatrix44.prototype.identity = function () {\n for (var i/*:int*/ = 0; i < 16; i++)\n this.tr[i] = ((i % 5) == 0) ? 1 : 0;\n}\n\n//============================================================\n// L2DMatrix44 # getArray()\n//============================================================\nL2DMatrix44.prototype.getArray = function () {\n return this.tr;\n}\n\n//============================================================\n// L2DMatrix44 # getCopyMatrix()\n//============================================================\nL2DMatrix44.prototype.getCopyMatrix = function () {\n return new Float32Array(this.tr); // this.tr.clone();\n}\n\n//============================================================\n// L2DMatrix44 # setMatrix()\n//============================================================\nL2DMatrix44.prototype.setMatrix = function (tr/*float[]*/) {\n if (this.tr == null || this.tr.length != this.tr.length) return;\n for (var i/*:int*/ = 0; i < 16; i++) this.tr[i] = tr[i];\n}\n\n//============================================================\n// L2DMatrix44 # getScaleX()\n//============================================================\nL2DMatrix44.prototype.getScaleX = function () {\n return this.tr[0];\n}\n\n//============================================================\n// L2DMatrix44 # getScaleY()\n//============================================================\nL2DMatrix44.prototype.getScaleY = function () {\n return this.tr[5];\n}\n\n//============================================================\n// L2DMatrix44 # transformX()\n//============================================================\nL2DMatrix44.prototype.transformX = function (src/*float*/) {\n return this.tr[0] * src + this.tr[12];\n}\n\n//============================================================\n// L2DMatrix44 # transformY()\n//============================================================\nL2DMatrix44.prototype.transformY = function (src/*float*/) {\n return this.tr[5] * src + this.tr[13];\n}\n\n//============================================================\n// L2DMatrix44 # invertTransformX()\n//============================================================\nL2DMatrix44.prototype.invertTransformX = function (src/*float*/) {\n return (src - this.tr[12]) / this.tr[0];\n}\n\n//============================================================\n// L2DMatrix44 # invertTransformY()\n//============================================================\nL2DMatrix44.prototype.invertTransformY = function (src/*float*/) {\n return (src - this.tr[13]) / this.tr[5];\n}\n\n//============================================================\n// L2DMatrix44 # multTranslate()\n//============================================================\nL2DMatrix44.prototype.multTranslate = function (shiftX/*float*/, shiftY/*float*/) {\n var tr1 = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, shiftX, shiftY, 0, 1];\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DMatrix44 # translate()\n//============================================================\nL2DMatrix44.prototype.translate = function (x/*float*/, y/*float*/) {\n this.tr[12] = x;\n this.tr[13] = y;\n}\n\n//============================================================\n// L2DMatrix44 # translateX()\n//============================================================\nL2DMatrix44.prototype.translateX = function (x/*float*/) {\n this.tr[12] = x;\n}\n\n//============================================================\n// L2DMatrix44 # translateY()\n//============================================================\nL2DMatrix44.prototype.translateY = function (y/*float*/) {\n this.tr[13] = y;\n}\n\n//============================================================\n// L2DMatrix44 # multScale()\n//============================================================\nL2DMatrix44.prototype.multScale = function (scaleX/*float*/, scaleY/*float*/) {\n var tr1 = [scaleX, 0, 0, 0, 0, scaleY, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DMatrix44 # scale()\n//============================================================\nL2DMatrix44.prototype.scale = function (scaleX/*float*/, scaleY/*float*/) {\n this.tr[0] = scaleX;\n this.tr[5] = scaleY;\n}\n\n//============================================================\n//============================================================\n// class L2DModelMatrix extends L2DMatrix44\n//============================================================\n//============================================================\nfunction L2DModelMatrix(w/*float*/, h/*float*/) {\n L2DMatrix44.prototype.constructor.call(this);\n this.width = w;\n this.height = h;\n}\n\n//L2DModelMatrix extends L2DMatrix44\nL2DModelMatrix.prototype = new L2DMatrix44();\n\n//============================================================\n// L2DModelMatrix # setPosition()\n//============================================================\nL2DModelMatrix.prototype.setPosition = function (x/*float*/, y/*float*/) {\n this.translate(x, y);\n}\n\n//============================================================\n// L2DModelMatrix # setCenterPosition()\n//============================================================\nL2DModelMatrix.prototype.setCenterPosition = function (x/*float*/, y/*float*/) {\n var w = this.width * this.getScaleX();\n var h = this.height * this.getScaleY();\n this.translate(x - w / 2, y - h / 2);\n}\n\n//============================================================\n// L2DModelMatrix # top()\n//============================================================\nL2DModelMatrix.prototype.top = function (y/*float*/) {\n this.setY(y);\n}\n\n//============================================================\n// L2DModelMatrix # bottom()\n//============================================================\nL2DModelMatrix.prototype.bottom = function (y/*float*/) {\n var h = this.height * this.getScaleY();\n this.translateY(y - h);\n}\n\n//============================================================\n// L2DModelMatrix # left()\n//============================================================\nL2DModelMatrix.prototype.left = function (x/*float*/) {\n this.setX(x);\n}\n\n//============================================================\n// L2DModelMatrix # right()\n//============================================================\nL2DModelMatrix.prototype.right = function (x/*float*/) {\n var w = this.width * this.getScaleX();\n this.translateX(x - w);\n}\n\n//============================================================\n// L2DModelMatrix # centerX()\n//============================================================\nL2DModelMatrix.prototype.centerX = function (x/*float*/) {\n var w = this.width * this.getScaleX();\n this.translateX(x - w / 2);\n}\n\n//============================================================\n// L2DModelMatrix # centerY()\n//============================================================\nL2DModelMatrix.prototype.centerY = function (y/*float*/) {\n var h = this.height * this.getScaleY();\n this.translateY(y - h / 2);\n}\n\n//============================================================\n// L2DModelMatrix # setX()\n//============================================================\nL2DModelMatrix.prototype.setX = function (x/*float*/) {\n this.translateX(x);\n}\n\n//============================================================\n// L2DModelMatrix # setY()\n//============================================================\nL2DModelMatrix.prototype.setY = function (y/*float*/) {\n this.translateY(y);\n}\n\n//============================================================\n// L2DModelMatrix # setHeight()\n//============================================================\nL2DModelMatrix.prototype.setHeight = function (h/*float*/) {\n var scaleX = h / this.height;\n var scaleY = -scaleX;\n this.scale(scaleX, scaleY);\n}\n\n//============================================================\n// L2DModelMatrix # setWidth()\n//============================================================\nL2DModelMatrix.prototype.setWidth = function (w/*float*/) {\n var scaleX = w / this.width;\n var scaleY = -scaleX;\n this.scale(scaleX, scaleY);\n}\n\n//============================================================\n//============================================================\n// class L2DMotionManager extends MotionQueueManager\n//============================================================\n//============================================================\nfunction L2DMotionManager() {\n MotionQueueManager.prototype.constructor.call(this);\n this.currentPriority = null;\n this.reservePriority = null;\n\n this.super = MotionQueueManager.prototype;\n}\n\n\nL2DMotionManager.prototype = new MotionQueueManager();\n\n//============================================================\n// L2DMotionManager # getCurrentPriority()\n//============================================================\nL2DMotionManager.prototype.getCurrentPriority = function () {\n return this.currentPriority;\n}\n\n//============================================================\n// L2DMotionManager # getReservePriority()\n//============================================================\nL2DMotionManager.prototype.getReservePriority = function () {\n return this.reservePriority;\n}\n\n//============================================================\n// L2DMotionManager # reserveMotion()\n//============================================================\nL2DMotionManager.prototype.reserveMotion = function (priority/*int*/) {\n if (this.reservePriority >= priority) {\n return false;\n }\n if (this.currentPriority >= priority) {\n return false;\n }\n\n this.reservePriority = priority;\n\n return true;\n}\n\n//============================================================\n// L2DMotionManager # setReservePriority()\n//============================================================\nL2DMotionManager.prototype.setReservePriority = function (val/*int*/) {\n this.reservePriority = val;\n}\n\n//============================================================\n// L2DMotionManager # updateParam()\n//============================================================\nL2DMotionManager.prototype.updateParam = function (model/*ALive2DModel*/) {\n var updated = MotionQueueManager.prototype.updateParam.call(this, model);\n\n if (this.isFinished()) {\n this.currentPriority = 0;\n }\n\n return updated;\n}\n\n//============================================================\n// L2DMotionManager # startMotionPrio()\n//============================================================\nL2DMotionManager.prototype.startMotionPrio = function (motion/*AMotion*/, priority/*int*/) {\n if (priority == this.reservePriority) {\n this.reservePriority = 0;\n }\n this.currentPriority = priority;\n return this.startMotion(motion, false);\n}\n\n//============================================================\n//============================================================\n// class L2DPhysics\n//============================================================\n//============================================================\nfunction L2DPhysics() {\n this.physicsList = new Array(); //ArrayList\n this.startTimeMSec = UtSystem.getUserTimeMSec();\n}\n\n//============================================================\n// static L2DPhysics.load()\n//============================================================\nL2DPhysics.load = function (buf /*byte[]*/) {\n var ret = new L2DPhysics(); //L2DPhysicsL2DPhysics\n var pm = Live2DFramework.getPlatformManager();\n var json = pm.jsonParseFromBytes(buf);\n var params = json.physics_hair;\n var paramNum = params.length;\n for (var i = 0; i < paramNum; i++) {\n var param = params[i]; //Value\n var physics = new PhysicsHair(); //PhysicsHairPhysicsHair\n var setup = param.setup; //Value\n var length = parseFloat(setup.length);\n var resist = parseFloat(setup.regist);\n var mass = parseFloat(setup.mass);\n physics.setup(length, resist, mass);\n var srcList = param.src; //Value\n var srcNum = srcList.length;\n for (var j = 0; j < srcNum; j++) {\n var src = srcList[j]; //Value\n var id = src.id; //String\n var type = PhysicsHair.Src.SRC_TO_X;\n var typeStr = src.ptype; //String\n if (typeStr === \"x\") {\n type = PhysicsHair.Src.SRC_TO_X;\n }\n else if (typeStr === \"y\") {\n type = PhysicsHair.Src.SRC_TO_Y;\n }\n else if (typeStr === \"angle\") {\n type = PhysicsHair.Src.SRC_TO_G_ANGLE;\n }\n else {\n UtDebug.error(\"live2d\", \"Invalid parameter:PhysicsHair.Src\");\n }\n var scale = parseFloat(src.scale);\n var weight = parseFloat(src.weight);\n physics.addSrcParam(type, id, scale, weight);\n }\n var targetList = param.targets; //Value\n var targetNum = targetList.length;\n for (var j = 0; j < targetNum; j++) {\n var target = targetList[j]; //Value\n var id = target.id; //String\n var type = PhysicsHair.Target.TARGET_FROM_ANGLE;\n var typeStr = target.ptype; //String\n if (typeStr === \"angle\") {\n type = PhysicsHair.Target.TARGET_FROM_ANGLE;\n }\n else if (typeStr === \"angle_v\") {\n type = PhysicsHair.Target.TARGET_FROM_ANGLE_V;\n }\n else {\n UtDebug.error(\"live2d\", \"Invalid parameter:PhysicsHair.Target\");\n }\n var scale = parseFloat(target.scale);\n var weight = parseFloat(target.weight);\n physics.addTargetParam(type, id, scale, weight);\n }\n ret.physicsList.push(physics);\n }\n return ret;\n}\n\n//============================================================\n// L2DPhysics # updateParam()\n//============================================================\nL2DPhysics.prototype.updateParam = function (model/*ALive2DModel*/) {\n var timeMSec = UtSystem.getUserTimeMSec() - this.startTimeMSec;\n for (var i = 0; i < this.physicsList.length; i++) {\n this.physicsList[i].update(model, timeMSec);\n }\n}\n\n//============================================================\n//============================================================\n// class L2DPose\n//============================================================\n//============================================================\nfunction L2DPose() {\n this.lastTime = 0;\n this.lastModel = null; //ALive2DModel\n this.partsGroups = new Array(); //ArrayList\n}\n\n\n//============================================================\n// static L2DPose.load()\n//============================================================\nL2DPose.load = function (buf/*byte[]*/) {\n var ret = new L2DPose(); //L2DPose\n var pm = Live2DFramework.getPlatformManager();\n var json = pm.jsonParseFromBytes(buf);\n var poseListInfo = json.parts_visible; //Value\n var poseNum = poseListInfo.length;\n for (var i_pose = 0; i_pose < poseNum; i_pose++) {\n var poseInfo = poseListInfo[i_pose]; //Value\n var idListInfo = poseInfo.group; //Value\n var idNum = idListInfo.length;\n var partsGroup/*L2DPartsParam*/ = new Array();\n for (var i_group = 0; i_group < idNum; i_group++) {\n var partsInfo = idListInfo[i_group]; //Value\n var parts = new L2DPartsParam(partsInfo.id); //L2DPartsParamL2DPartsParam\n partsGroup[i_group] = parts;\n if (partsInfo.link == null) continue;\n var linkListInfo = partsInfo.link; //Value\n var linkNum = linkListInfo.length;\n parts.link = new Array(); //ArrayList\n for (var i_link = 0; i_link < linkNum; i_link++) {\n var linkParts = new L2DPartsParam(linkListInfo[i_link]); //L2DPartsParamL2DPartsParam\n parts.link.push(linkParts);\n }\n }\n ret.partsGroups.push(partsGroup);\n }\n\n return ret;\n}\n\n//============================================================\n// L2DPose # updateParam()\n//============================================================\nL2DPose.prototype.updateParam = function (model/*ALive2DModel*/) {\n if (model == null) return;\n\n if (!(model == this.lastModel)) {\n this.initParam(model);\n }\n this.lastModel = model;\n\n var curTime = UtSystem.getUserTimeMSec();\n var deltaTimeSec = ((this.lastTime == 0) ? 0 : (curTime - this.lastTime) / 1000.0);\n this.lastTime = curTime;\n if (deltaTimeSec < 0) deltaTimeSec = 0;\n for (var i = 0; i < this.partsGroups.length; i++) {\n this.normalizePartsOpacityGroup(model, this.partsGroups[i], deltaTimeSec);\n this.copyOpacityOtherParts(model, this.partsGroups[i]);\n }\n}\n\n//============================================================\n// L2DPose # initParam()\n//============================================================\nL2DPose.prototype.initParam = function (model/*ALive2DModel*/) {\n if (model == null) return;\n for (var i = 0; i < this.partsGroups.length; i++) {\n var partsGroup = this.partsGroups[i]; //L2DPartsParam\n for (var j = 0; j < partsGroup.length; j++) {\n partsGroup[j].initIndex(model);\n var partsIndex = partsGroup[j].partsIndex;\n var paramIndex = partsGroup[j].paramIndex;\n if (partsIndex < 0) continue;\n var v/*:Boolean*/ = (model.getParamFloat(paramIndex) != 0);\n model.setPartsOpacity(partsIndex, (v ? 1.0 : 0.0));\n model.setParamFloat(paramIndex, (v ? 1.0 : 0.0));\n if (partsGroup[j].link == null) continue;\n for (var k = 0; k < partsGroup[j].link.length; k++) {\n partsGroup[j].link[k].initIndex(model);\n }\n }\n }\n}\n\n//============================================================\n// L2DPose # normalizePartsOpacityGroup()\n//============================================================\nL2DPose.prototype.normalizePartsOpacityGroup = function (model/*ALive2DModel*/, partsGroup/*L2DPartsParam[]*/, deltaTimeSec/*float*/) {\n var visibleParts = -1;\n var visibleOpacity = 1.0;\n var CLEAR_TIME_SEC = 0.5;\n var phi = 0.5;\n var maxBackOpacity = 0.15;\n for (var i = 0; i < partsGroup.length; i++) {\n var partsIndex = partsGroup[i].partsIndex;\n var paramIndex = partsGroup[i].paramIndex;\n if (partsIndex < 0) continue; if (model.getParamFloat(paramIndex) != 0) {\n if (visibleParts >= 0) {\n break;\n }\n visibleParts = i;\n visibleOpacity = model.getPartsOpacity(partsIndex);\n visibleOpacity += deltaTimeSec / CLEAR_TIME_SEC;\n if (visibleOpacity > 1) {\n visibleOpacity = 1;\n }\n }\n }\n if (visibleParts < 0) {\n visibleParts = 0;\n visibleOpacity = 1;\n }\n for (var i = 0; i < partsGroup.length; i++) {\n var partsIndex = partsGroup[i].partsIndex;\n if (partsIndex < 0) continue; if (visibleParts == i) {\n model.setPartsOpacity(partsIndex, visibleOpacity);\n }\n else {\n var opacity = model.getPartsOpacity(partsIndex);\n var a1;\n if (visibleOpacity < phi) {\n a1 = visibleOpacity * (phi - 1) / phi + 1;\n }\n else {\n a1 = (1 - visibleOpacity) * phi / (1 - phi);\n }\n var backOp = (1 - a1) * (1 - visibleOpacity);\n if (backOp > maxBackOpacity) {\n a1 = 1 - maxBackOpacity / (1 - visibleOpacity);\n }\n if (opacity > a1) {\n opacity = a1;\n }\n model.setPartsOpacity(partsIndex, opacity);\n }\n }\n}\n\n//============================================================\n// L2DPose # copyOpacityOtherParts()\n//============================================================\nL2DPose.prototype.copyOpacityOtherParts = function (model/*ALive2DModel*/, partsGroup/*L2DPartsParam[]*/) {\n for (var i_group = 0; i_group < partsGroup.length; i_group++) {\n var partsParam = partsGroup[i_group]; //L2DPartsParam\n if (partsParam.link == null) continue;\n if (partsParam.partsIndex < 0) continue;\n var opacity = model.getPartsOpacity(partsParam.partsIndex);\n for (var i_link = 0; i_link < partsParam.link.length; i_link++) {\n var linkParts = partsParam.link[i_link]; //L2DPartsParam\n if (linkParts.partsIndex < 0) continue;\n model.setPartsOpacity(linkParts.partsIndex, opacity);\n }\n }\n}\n\n//============================================================\n//============================================================\n// class L2DPartsParam\n//============================================================\n//============================================================\nfunction L2DPartsParam(id/*String*/) {\n this.paramIndex = -1;\n this.partsIndex = -1;\n this.link = null; // ArrayList\n this.id = id;\n}\n\n//============================================================\n// L2DPartsParam # initIndex()\n//============================================================\nL2DPartsParam.prototype.initIndex = function (model/*ALive2DModel*/) {\n this.paramIndex = model.getParamIndex(\"VISIBLE:\" + this.id);\n this.partsIndex = model.getPartsDataIndex(PartsDataID.getID(this.id));\n model.setParamFloat(this.paramIndex, 1);\n}\n\n//============================================================\n//============================================================\n// class L2DTargetPoint\n//============================================================\n//============================================================\nfunction L2DTargetPoint() {\n this.EPSILON = 0.01; // 変化の最小値(この値以下は無視される)\n this.faceTargetX = 0;\n this.faceTargetY = 0;\n this.faceX = 0;\n this.faceY = 0;\n this.faceVX = 0;\n this.faceVY = 0;\n this.lastTimeSec = 0;\n}\n\n//============================================================\nL2DTargetPoint.FRAME_RATE = 60;\n\n//============================================================\n// L2DTargetPoint # set()\n//============================================================\nL2DTargetPoint.prototype.setPoint = function (x/*float*/, y/*float*/) {\n this.faceTargetX = x;\n this.faceTargetY = y;\n}\n\n//============================================================\n// L2DTargetPoint # getX()\n//============================================================\nL2DTargetPoint.prototype.getX = function () {\n return this.faceX;\n}\n\n//============================================================\n// L2DTargetPoint # getY()\n//============================================================\nL2DTargetPoint.prototype.getY = function () {\n return this.faceY;\n}\n\n//============================================================\n// L2DTargetPoint # update()\n//============================================================\nL2DTargetPoint.prototype.update = function () {\n var TIME_TO_MAX_SPEED = 0.15;\n var FACE_PARAM_MAX_V = 40.0 / 7.5;\n var MAX_V = FACE_PARAM_MAX_V / L2DTargetPoint.FRAME_RATE;\n if (this.lastTimeSec == 0) {\n this.lastTimeSec = UtSystem.getUserTimeMSec();\n return;\n }\n var curTimeSec = UtSystem.getUserTimeMSec();\n var deltaTimeWeight = (curTimeSec - this.lastTimeSec) * L2DTargetPoint.FRAME_RATE / 1000.0;\n this.lastTimeSec = curTimeSec;\n var FRAME_TO_MAX_SPEED = TIME_TO_MAX_SPEED * L2DTargetPoint.FRAME_RATE;\n var MAX_A = deltaTimeWeight * MAX_V / FRAME_TO_MAX_SPEED;\n var dx = (this.faceTargetX - this.faceX);\n var dy = (this.faceTargetY - this.faceY);\n // if(dx == 0 && dy == 0) return;\n if (Math.abs(dx) <= this.EPSILON && Math.abs(dy) <= this.EPSILON) return;\n var d = Math.sqrt(dx * dx + dy * dy);\n var vx = MAX_V * dx / d;\n var vy = MAX_V * dy / d;\n var ax = vx - this.faceVX;\n var ay = vy - this.faceVY;\n var a = Math.sqrt(ax * ax + ay * ay);\n if (a < -MAX_A || a > MAX_A) {\n ax *= MAX_A / a;\n ay *= MAX_A / a;\n a = MAX_A;\n }\n this.faceVX += ax;\n this.faceVY += ay;\n {\n var max_v = 0.5 * (Math.sqrt(MAX_A * MAX_A + 16 * MAX_A * d - 8 * MAX_A * d) - MAX_A);\n var cur_v = Math.sqrt(this.faceVX * this.faceVX + this.faceVY * this.faceVY);\n if (cur_v > max_v) {\n this.faceVX *= max_v / cur_v;\n this.faceVY *= max_v / cur_v;\n }\n }\n this.faceX += this.faceVX;\n this.faceY += this.faceVY;\n}\n\n//============================================================\n//============================================================\n// class L2DViewMatrix extends L2DMatrix44\n//============================================================\n//============================================================\nfunction L2DViewMatrix() {\n L2DMatrix44.prototype.constructor.call(this);\n this.screenLeft = null;\n this.screenRight = null;\n this.screenTop = null;\n this.screenBottom = null;\n this.maxLeft = null;\n this.maxRight = null;\n this.maxTop = null;\n this.maxBottom = null;\n}\n\nL2DViewMatrix.prototype = new L2DMatrix44(); //L2DViewMatrix extends L2DMatrix44\n\n//============================================================\n// L2DViewMatrix # adjustTranslate()\n//============================================================\nL2DViewMatrix.prototype.adjustTranslate = function (shiftX/*float*/, shiftY/*float*/) {\n if (this.tr[0] * this.maxLeft + (this.tr[12] + shiftX) > this.screenLeft)\n shiftX = this.screenLeft - this.tr[0] * this.maxLeft - this.tr[12];\n if (this.tr[0] * this.maxRight + (this.tr[12] + shiftX) < this.screenRight)\n shiftX = this.screenRight - this.tr[0] * this.maxRight - this.tr[12];\n if (this.tr[5] * this.maxTop + (this.tr[13] + shiftY) < this.screenTop)\n shiftY = this.screenTop - this.tr[5] * this.maxTop - this.tr[13];\n if (this.tr[5] * this.maxBottom + (this.tr[13] + shiftY) > this.screenBottom)\n shiftY = this.screenBottom - this.tr[5] * this.maxBottom - this.tr[13];\n\n var tr1 = [1, 0, 0, 0,\n 0, 1, 0, 0,\n 0, 0, 1, 0,\n shiftX, shiftY, 0, 1];\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DViewMatrix # adjustScale()\n//============================================================\nL2DViewMatrix.prototype.adjustScale = function (cx/*float*/, cy/*float*/, scale/*float*/) {\n var targetScale = scale * this.tr[0];\n var tr1 = [1, 0, 0, 0,\n 0, 1, 0, 0,\n 0, 0, 1, 0,\n cx, cy, 0, 1];\n var tr2 = [scale, 0, 0, 0,\n 0, scale, 0, 0,\n 0, 0, 1, 0,\n 0, 0, 0, 1];\n var tr3 = [1, 0, 0, 0,\n 0, 1, 0, 0,\n 0, 0, 1, 0,\n -cx, -cy, 0, 1];\n L2DMatrix44.mul(tr3, this.tr, this.tr);\n L2DMatrix44.mul(tr2, this.tr, this.tr);\n L2DMatrix44.mul(tr1, this.tr, this.tr);\n}\n\n//============================================================\n// L2DViewMatrix # setScreenRect()\n//============================================================\nL2DViewMatrix.prototype.setScreenRect = function (left/*float*/, right/*float*/, bottom/*float*/, top/*float*/) {\n this.screenLeft = left;\n this.screenRight = right;\n this.screenTop = top;\n this.screenBottom = bottom;\n}\n\n//============================================================\n// L2DViewMatrix # setMaxScreenRect()\n//============================================================\nL2DViewMatrix.prototype.setMaxScreenRect = function (left/*float*/, right/*float*/, bottom/*float*/, top/*float*/) {\n this.maxLeft = left;\n this.maxRight = right;\n this.maxTop = top;\n this.maxBottom = bottom;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenLeft()\n//============================================================\nL2DViewMatrix.prototype.getScreenLeft = function () {\n return this.screenLeft;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenRight()\n//============================================================\nL2DViewMatrix.prototype.getScreenRight = function () {\n return this.screenRight;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenBottom()\n//============================================================\nL2DViewMatrix.prototype.getScreenBottom = function () {\n return this.screenBottom;\n}\n\n//============================================================\n// L2DViewMatrix # getScreenTop()\n//============================================================\nL2DViewMatrix.prototype.getScreenTop = function () {\n return this.screenTop;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxLeft()\n//============================================================\nL2DViewMatrix.prototype.getMaxLeft = function () {\n return this.maxLeft;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxRight()\n//============================================================\nL2DViewMatrix.prototype.getMaxRight = function () {\n return this.maxRight;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxBottom()\n//============================================================\nL2DViewMatrix.prototype.getMaxBottom = function () {\n return this.maxBottom;\n}\n\n//============================================================\n// L2DViewMatrix # getMaxTop()\n//============================================================\nL2DViewMatrix.prototype.getMaxTop = function () {\n return this.maxTop;\n}\n\n//============================================================\n//============================================================\n// class Live2DFramework\n//============================================================\n//============================================================\nfunction Live2DFramework() {\n}\n\n//============================================================\nLive2DFramework.platformManager = null;\n\n//============================================================\n// static Live2DFramework.getPlatformManager()\n//============================================================\nLive2DFramework.getPlatformManager = function () {\n return Live2DFramework.platformManager;\n}\n\n//============================================================\n// static Live2DFramework.setPlatformManager()\n//============================================================\nLive2DFramework.setPlatformManager = function (platformManager /*IPlatformManager*/) {\n Live2DFramework.platformManager = platformManager;\n}\n\nexport{\n L2DTargetPoint,\n Live2DFramework,\n L2DViewMatrix,\n L2DPose,\n L2DPartsParam,\n L2DPhysics,\n L2DMotionManager,\n L2DModelMatrix,\n L2DMatrix44,\n EYE_STATE,\n L2DEyeBlink,\n L2DExpressionParam,\n L2DExpressionMotion,\n L2DBaseModel,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/lib/Live2DFramework.js","// Modified by xiazeyu.\n\n/**\n* @desc The definitions of values releated to model react\n*/\n\nexport const cDefine = {\n // above are viewMatrix value settings\n VIEW_LOGICAL_LEFT : -1, // -1, the left abscissa of viewMatrix\n VIEW_LOGICAL_RIGHT : 1, // 1, the right abscissa of viewMatrix\n VIEW_LOGICAL_MAX_LEFT : -2, // -2, the max left abscissa of viewMatrix\n VIEW_LOGICAL_MAX_RIGHT : 2, // 2, the max right abscissa of viewMatrix\n VIEW_LOGICAL_MAX_BOTTOM : -2, // -2, the max bottom abscissa of viewMatrix\n VIEW_LOGICAL_MAX_TOP : 2, // 2, the max top abscissa of viewMatrix\n\n // above are the motions priority settings.\n PRIORITY_NONE : 0, // 0,do nothing\n PRIORITY_IDLE : 1, // 1, idle motions\n PRIORITY_NORMAL : 2, // 2, normal motions\n PRIORITY_FORCE : 3, // 3, force to show motion\n\n // above are the index to the motions in model.json\n // #43\n MOTION_GROUP_IDLE : \"idle\",\n MOTION_GROUP_TAP_BODY : \"tap_body\",\n MOTION_GROUP_FLICK_HEAD : \"flick_head\", // unused\n MOTION_GROUP_PINCH_IN : \"pinch_in\", // unused\n MOTION_GROUP_PINCH_OUT : \"pinch_out\", // unused\n MOTION_GROUP_SHAKE : \"shake\", // unused\n\n // above are the index to the hit areas in model.json\n // #43\n HIT_AREA_HEAD : \"head\",\n HIT_AREA_BODY : \"body\"\n};\n\n\n\n// WEBPACK FOOTER //\n// ./src/cDefine.js","/**\n * @description The container and manager for all the DOM and WebGL emelents.\n */\n\n\nimport { config } from './config/configMgr';\nimport htmlTemplate from './tmplate/innerHTML';\n\n/**\n * The current WebGL element\n * @type {RenderingContext}\n */\n\nlet currWebGL = undefined;\n\n/**\n * The current canvas element\n * @type {HTMLElement}\n */\n\nlet currCanvas;\n\n/**\n * Create the canvas and styles using DOM\n * @return {null}\n */\n\nfunction createElement(){\n\n let e = document.getElementById(config.name.div)\n if (e !== null){\n document.body.removeChild(e);\n }\n\n let newElem = document.createElement('div');\n newElem.id = config.name.div;\n newElem.innerHTML = htmlTemplate;\n let newCanvasElem = document.createElement('canvas');\n newCanvasElem.setAttribute('id', config.name.canvas);\n newCanvasElem.setAttribute('width', config.display.width * config.display.superSample);\n newCanvasElem.setAttribute('height', config.display.height * config.display.superSample);\n newCanvasElem.style.setProperty('position', 'fixed');\n newCanvasElem.style.setProperty('width', config.display.width);\n newCanvasElem.style.setProperty('height', config.display.height);\n newCanvasElem.style.setProperty('opacity', config.react.opacityDefault);\n newCanvasElem.style.setProperty(config.display.position, config.display.hOffset + 'px');\n newCanvasElem.style.setProperty('bottom', config.display.vOffset + 'px');\n newCanvasElem.style.setProperty('z-index', 99999);\n newCanvasElem.style.setProperty('pointer-events', 'none');\n if(config.dev.border) newCanvasElem.style.setProperty('border', 'dashed 1px #CCC');\n newElem.appendChild(newCanvasElem);\n\n document.body.appendChild(newElem);\n currCanvas = document.getElementById(config.name.canvas);\n\n initWebGL();\n\n}\n\n/**\n * Find and set the current WebGL element to the container\n * @return {null}\n */\n\nfunction initWebGL(){\n\n var NAMES = ['webgl2', 'webgl', 'experimental-webgl2', 'experimental-webgl', 'webkit-3d', 'moz-webgl'];\n for(let i = 0; i < NAMES.length; i++){\n try{\n let ctx = currCanvas.getContext(NAMES[i], {\n alpha: true,\n antialias: true,\n premultipliedAlpha: true,\n failIfMajorPerformanceCaveat: false,\n });\n if(ctx) currWebGL = ctx;\n }catch(e){}\n }\n if(!currWebGL){\n console.error('Live2D widgets: Failed to create WebGL context.');\n if(!window.WebGLRenderingContext){\n console.error('Your browser may not support WebGL, check https://get.webgl.org/ for futher information.');\n }\n return;\n }\n};\n\n\nexport{\n createElement,\n currWebGL,\n currCanvas,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/elementMgr.js","/**\n *\n * You can modify and use this source freely\n * only for the development of application related Live2D.\n *\n * (c) Live2D Inc. All rights reserved.\n */\n\n/**\n * EYHN 修改\n *\n * Copyright © 2016 - 2017 EYHN\n */\n\n// Modified by xiazeyu.\n\n/**\n* @desc A matrix stack releated to draw the model\n*/\n\nexport function MatrixStack() {}\n\nMatrixStack.matrixStack = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\nMatrixStack.depth = 0;\nMatrixStack.currentMatrix = [1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1];\nMatrixStack.tmp = new Array(16);\n\n/**\n* @name reset\n* @desc reset the stack\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.reset = function(){\n this.depth = 0;\n}\n\n/**\n* @name loadIdentity\n* @desc reset values in the stack to whether it can be divisible by 5\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.loadIdentity = function(){\n var thisRef = this;\n for (var i = 0; i < 16; i++){\n thisRef.currentMatrix[i] = (i % 5 == 0) ? 1 : 0;\n }\n}\n\n/**\n* @name push\n* @desc push a new element into the stack\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.push = function(){\n var thisRef = this;\n // var offset = thisRef.depth * 16;\n var nextOffset = (thisRef.depth + 1) * 16;\n\n if (thisRef.matrixStack.length < nextOffset + 16){\n thisRef.matrixStack.length = nextOffset + 16;\n }\n\n for (var i = 0; i < 16; i++){\n thisRef.matrixStack[nextOffset + i] = thisRef.currentMatrix[i];\n }\n\n thisRef.depth++;\n}\n\n/**\n* @name pop\n* @desc pop an element from the stack\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.pop = function(){\n var thisRef = this;\n thisRef.depth--;\n if (thisRef.depth < 0){ // stack is underflow?????\n myError(\"Invalid matrix stack.\");\n thisRef.depth = 0;\n }\n\n var offset = thisRef.depth * 16;\n for (var i = 0; i < 16; i++){\n thisRef.currentMatrix[i] = thisRef.matrixStack[offset + i];\n }\n}\n\n/**\n* @name getMatrix\n* @desc return the current matrix stack\n* @param null\n* @returns {Array} current matrix stack\n* @memberOf MatrixStack\n*/\nMatrixStack.getMatrix = function(){\n return this.currentMatrix;\n}\n\n/**\n* @name multMatrix\n* @desc matrix multiplication, save to the currentMatrix\n* @param null\n* @returns null\n* @memberOf MatrixStack\n*/\nMatrixStack.multMatrix = function(matNew)\n{\n var thisRef = this;\n var i, j, k;\n\n for (i = 0; i < 16; i++){\n thisRef.tmp[i] = 0;\n }\n\n for (i = 0; i < 4; i++){\n for (j = 0; j < 4; j++){\n for (k = 0; k < 4; k++){\n thisRef.tmp[i + j * 4] += thisRef.currentMatrix[i + k * 4] * matNew[k + j * 4];\n }\n }\n }\n for (i = 0; i < 16; i++){\n thisRef.currentMatrix[i] = thisRef.tmp[i];\n }\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/MatrixStack.js","module.exports = \"\";\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./src/tmplate/innerHTML.html\n// module id = 136\n// module chunks = 0","// Provide a \"System\" global.\r\nmodule.exports = {\r\n\t// Make sure import is only used as \"System.import\"\r\n\timport: function() {\r\n\t\tthrow new Error(\"System.import cannot be used indirectly\");\r\n\t}\r\n};\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// (webpack)/buildin/system.js\n// module id = 137\n// module chunks = 0","import { Live2DFramework } from \"./lib/Live2DFramework\";\nimport { PlatformManager } from \"./PlatformManager\";\nimport { cModel } from \"./cModel\";\nimport { cDefine } from \"./cDefine\";\n\nfunction cManager() {\n // console.log(\"--> cManager()\");\n\n this.models = [];\n this.count = -1;\n this.reloadFlg = false;\n\n Live2DFramework.setPlatformManager(new PlatformManager());\n\n}\n\ncManager.prototype.createModel = function () {\n\n var model = new cModel();\n this.models.push(model);\n\n return model;\n\n}\n\n\ncManager.prototype.changeModel = function (gl, modelurl) {\n // console.log(\"--> cManager.update(gl)\");\n\n if (this.reloadFlg) {\n this.reloadFlg = false;\n this.releaseModel(0, gl);\n this.createModel();\n this.models[0].load(gl, modelurl);\n }\n\n};\n\n\ncManager.prototype.getModel = function (no) {\n // console.log(\"--> cManager.getModel(\" + no + \")\");\n\n if (no >= this.models.length) return null;\n\n return this.models[no];\n};\n\n\n\ncManager.prototype.releaseModel = function (no, gl) {\n // console.log(\"--> cManager.releaseModel(\" + no + \")\");\n\n if (this.models.length <= no) return;\n\n this.models[no].release(gl);\n\n delete this.models[no];\n this.models.splice(no, 1);\n};\n\n\n\ncManager.prototype.numModels = function () {\n return this.models.length;\n};\n\n\n\ncManager.prototype.setDrag = function (x, y) {\n for (var i = 0; i < this.models.length; i++) {\n this.models[i].setDrag(x, y);\n }\n}\n\ncManager.prototype.tapEvent = function (x, y) {\n if (cDefine.DEBUG_LOG)\n console.log(\"tapEvent view x:\" + x + \" y:\" + y);\n\n for (var i = 0; i < this.models.length; i++) {\n\n if (this.models[i].hitTest(cDefine.HIT_AREA_HEAD, x, y)) {\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Tap face.\");\n\n this.models[i].setRandomExpression();\n }\n else if (this.models[i].hitTest(cDefine.HIT_AREA_BODY, x, y)) {\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Tap body.\" + \" models[\" + i + \"]\");\n\n this.models[i].startRandomMotion(cDefine.MOTION_GROUP_TAP_BODY,\n cDefine.PRIORITY_NORMAL);\n }\n }\n\n return true;\n};\n\nexport{\n cManager,\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/cManager.js","\n/**\n *\n * You can modify and use this source freely\n * only for the development of application related Live2D.\n *\n * (c) Live2D Inc. All rights reserved.\n */\n\n// Modified by xiazeyu.\n\n/**\n* @desc A library that provide basic IO and json function\n*/\n\nimport { currWebGL } from './elementMgr';\nimport { Live2DModelWebGL } from \"./lib/live2d.core\";\n\n\n//============================================================\n//============================================================\n// class PlatformManager extend IPlatformManager\n//============================================================\n//============================================================\n\n/**\n* @name PlatformManager\n* @desc Define the variable type of PlatformManager\n* @param null\n* @returns {Structure} PlatformManager\n*/\nexport function PlatformManager()\n{\n\n}\n\n\n//============================================================\n// PlatformManager # loadBytes()\n//============================================================\n\n/**\n* @name loadBytes\n* @desc load bytes from the path and callback\n* @param {String} path, {Function} callback\n* @returns callback {raw} context\n* @memberOf PlatformManager\n*/\n\nPlatformManager.prototype.loadBytes = function(path/*String*/, callback)\n{\n var request = new XMLHttpRequest();\n request.open(\"GET\", path, true);\n request.responseType = \"arraybuffer\";\n request.onload = function(){\n switch(request.status){\n case 200:\n callback(request.response);\n break;\n default:\n console.error(\"Failed to load (\" + request.status + \") : \" + path);\n break;\n }\n }\n request.send(null);\n // return request;\n}\n\n\n//============================================================\n// PlatformManager # loadString()\n//============================================================\n\n/**\n* @name loadString\n* @desc load bytes from the path and put it into buffer\n* @param {String} path\n* @returns buffer {raw} context\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.loadString = function(path/*String*/)\n{\n\n this.loadBytes(path, function(buf) {\n return buf;\n });\n\n}\n\n\n//============================================================\n// PlatformManager # loadLive2DModel()\n//============================================================\n\n/**\n* @name loadLive2DModel\n* @desc load Live2DModel from the path and put it into buffer\n* @param {String} path, {function} callback\n* @returns callback loaded model\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.loadLive2DModel = function(path/*String*/, callback)\n{\n var model = null;\n\n // load moc\n this.loadBytes(path, function(buf){\n model = Live2DModelWebGL.loadModel(buf);\n callback(model);\n });\n\n}\n\n\n//============================================================\n// PlatformManager # loadTexture()\n//============================================================\n\n/**\n* @name loadTexture\n* @desc load Live2DModel's Texture and callback\n* @param {Live2DModelWebGL}model, {int}no, {string}path, {function}callback\n* @returns callback\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.loadTexture = function(model/*ALive2DModel*/, no/*int*/, path/*String*/, callback)\n{\n // load textures\n var loadedImage = new Image();\n // Thanks to @mashirozx & @fghrsh\n // Issues:\n // @https://github.com/journey-ad/live2d_src/issues/1\n // @https://github.com/journey-ad/live2d_src/issues/3\n loadedImage.crossOrigin = 'Anonymous';\n loadedImage.src = path;\n loadedImage.onload = onload;\n loadedImage.onerror = onerror;\n\n // var thisRef = this;\n loadedImage.onload = function() {\n // create texture\n var gl = currWebGL;\n var texture = gl.createTexture();\n if (!texture){ console.error(\"Failed to generate gl texture name.\"); return -1; }\n\n if(!model.isPremultipliedAlpha()){\n // 乗算済アルファテクスチャ以外の場合\n // emmmm, maybe do something for textures with alpha layer.\n gl.pixelStorei(gl.UNPACK_PREMULTIPLY_ALPHA_WEBGL, 1);\n }\n gl.pixelStorei(gl.UNPACK_FLIP_Y_WEBGL, 1);\n gl.activeTexture(gl.TEXTURE0);\n gl.bindTexture(gl.TEXTURE_2D, texture);\n gl.texImage2D(gl.TEXTURE_2D, 0, gl.RGBA, gl.RGBA,\n gl.UNSIGNED_BYTE, loadedImage);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MAG_FILTER, gl.LINEAR);\n gl.texParameteri(gl.TEXTURE_2D, gl.TEXTURE_MIN_FILTER, gl.LINEAR_MIPMAP_NEAREST);\n gl.generateMipmap(gl.TEXTURE_2D);\n\n\n\n model.setTexture(no, texture);\n\n // テクスチャオブジェクトを解放\n // Release the texture object to prevent buffer overruns.\n texture = null;\n\n if (typeof callback == \"function\") callback();\n };\n\n loadedImage.onerror = function() {\n console.error(\"Failed to load image : \" + path);\n }\n}\n\n\n//============================================================\n// PlatformManager # parseFromBytes(buf)\n\n//============================================================\n\n/**\n* @name jsonParseFromBytes\n* @desc parse json file into arrays\n* @param {raw} buf\n* @returns {Array}jsonObj\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.jsonParseFromBytes = function(buf){\n\n var jsonStr;\n var bomCode = new Uint8Array(buf, 0, 3);\n if (bomCode[0] == 239 && bomCode[1] == 187 && bomCode[2] == 191) {\n jsonStr = String.fromCharCode.apply(null, new Uint8Array(buf, 3));\n } else {\n jsonStr = String.fromCharCode.apply(null, new Uint8Array(buf));\n }\n\n var jsonObj = JSON.parse(jsonStr);\n\n return jsonObj;\n};\n\n\n\n//============================================================\n// PlatformManager # log()\n//============================================================\n\n/**\n* @name log\n* @desc output log in console\n* @param {string} txt\n* @returns null\n* @memberOf PlatformManager\n*/\nPlatformManager.prototype.log = function(txt/*String*/)\n{\n console.log(txt);\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/PlatformManager.js","import { Live2DFramework, L2DBaseModel, L2DEyeBlink } from \"./lib/Live2DFramework\";\nimport { ModelSettingJson } from \"./utils/ModelSettingJson\";\nimport { MatrixStack } from \"./utils/MatrixStack\";\nimport { cDefine } from \"./cDefine\";\nimport { UtSystem,/*\n UtDebug,\n LDTransform,\n LDGL,\n Live2D,\n Live2DModelWebGL,\n Live2DModelJS,\n Live2DMotion,\n MotionQueueManager,\n PhysicsHair,\n AMotion,\n PartsDataID,\n DrawDataID,\n BaseDataID,\n ParamID*/ } from './lib/live2d.core';\n//============================================================\n//============================================================\n// class cModel extends L2DBaseModel\n//============================================================\n//============================================================\nexport function cModel()\n{\n //L2DBaseModel.apply(this, arguments);\n L2DBaseModel.prototype.constructor.call(this);\n\n this.modelHomeDir = \"\";\n this.modelSetting = null;\n this.tmpMatrix = [];\n}\n\ncModel.prototype = new L2DBaseModel();\n\n\ncModel.prototype.load = function(gl, modelSettingPath, callback)\n{\n this.setUpdating(true);\n this.setInitialized(false);\n\n this.modelHomeDir = modelSettingPath.substring(0, modelSettingPath.lastIndexOf(\"/\") + 1);\n\n this.modelSetting = new ModelSettingJson();\n\n var thisRef = this;\n\n this.modelSetting.loadModelSetting(modelSettingPath, function(){\n\n var path = thisRef.modelHomeDir + thisRef.modelSetting.getModelFile();\n thisRef.loadModelData(path, function(model){\n\n for (var i = 0; i < thisRef.modelSetting.getTextureNum(); i++)\n {\n if( /^https?:\\/\\/|^\\/\\//i.test(thisRef.modelSetting.getTextureFile(i)) ){\n\n var texPaths = thisRef.modelSetting.getTextureFile(i);\n\n }else{\n var texPaths = thisRef.modelHomeDir + thisRef.modelSetting.getTextureFile(i);\n }\n thisRef.loadTexture(i, texPaths, function() {\n\n if( thisRef.isTexLoaded ) {\n\n if (thisRef.modelSetting.getExpressionNum() > 0)\n {\n\n thisRef.expressions = {};\n\n for (var j = 0; j < thisRef.modelSetting.getExpressionNum(); j++)\n {\n var expName = thisRef.modelSetting.getExpressionName(j);\n var expFilePath = thisRef.modelHomeDir +\n thisRef.modelSetting.getExpressionFile(j);\n\n thisRef.loadExpression(expName, expFilePath);\n }\n }\n else\n {\n thisRef.expressionManager = null;\n thisRef.expressions = {};\n }\n\n\n\n if (thisRef.eyeBlink == null)\n {\n thisRef.eyeBlink = new L2DEyeBlink();\n }\n\n\n if (thisRef.modelSetting.getPhysicsFile() != null)\n {\n thisRef.loadPhysics(thisRef.modelHomeDir +\n thisRef.modelSetting.getPhysicsFile());\n }\n else\n {\n thisRef.physics = null;\n }\n\n\n\n if (thisRef.modelSetting.getPoseFile() != null)\n {\n thisRef.loadPose(\n thisRef.modelHomeDir +\n thisRef.modelSetting.getPoseFile(),\n function() {\n thisRef.pose.updateParam(thisRef.live2DModel);\n }\n );\n }\n else\n {\n thisRef.pose = null;\n }\n\n\n\n if (thisRef.modelSetting.getLayout() != null)\n {\n var layout = thisRef.modelSetting.getLayout();\n if (layout[\"width\"] != null)\n thisRef.modelMatrix.setWidth(layout[\"width\"]);\n if (layout[\"height\"] != null)\n thisRef.modelMatrix.setHeight(layout[\"height\"]);\n\n if (layout[\"x\"] != null)\n thisRef.modelMatrix.setX(layout[\"x\"]);\n if (layout[\"y\"] != null)\n thisRef.modelMatrix.setY(layout[\"y\"]);\n if (layout[\"center_x\"] != null)\n thisRef.modelMatrix.centerX(layout[\"center_x\"]);\n if (layout[\"center_y\"] != null)\n thisRef.modelMatrix.centerY(layout[\"center_y\"]);\n if (layout[\"top\"] != null)\n thisRef.modelMatrix.top(layout[\"top\"]);\n if (layout[\"bottom\"] != null)\n thisRef.modelMatrix.bottom(layout[\"bottom\"]);\n if (layout[\"left\"] != null)\n thisRef.modelMatrix.left(layout[\"left\"]);\n if (layout[\"right\"] != null)\n thisRef.modelMatrix.right(layout[\"right\"]);\n }\n\n for (var j = 0; j < thisRef.modelSetting.getInitParamNum(); j++)\n {\n\n thisRef.live2DModel.setParamFloat(\n thisRef.modelSetting.getInitParamID(j),\n thisRef.modelSetting.getInitParamValue(j)\n );\n }\n\n for (var j = 0; j < thisRef.modelSetting.getInitPartsVisibleNum(); j++)\n {\n\n thisRef.live2DModel.setPartsOpacity(\n thisRef.modelSetting.getInitPartsVisibleID(j),\n thisRef.modelSetting.getInitPartsVisibleValue(j)\n );\n }\n\n\n\n thisRef.live2DModel.saveParam();\n // thisRef.live2DModel.setGL(gl);\n\n\n thisRef.preloadMotionGroup(cDefine.MOTION_GROUP_IDLE);\n thisRef.mainMotionManager.stopAllMotions();\n\n thisRef.setUpdating(false);\n thisRef.setInitialized(true);\n\n if (typeof callback == \"function\") callback();\n\n }\n });\n }\n });\n });\n};\n\n\n\ncModel.prototype.release = function(gl)\n{\n // this.live2DModel.deleteTextures();\n var pm = Live2DFramework.getPlatformManager();\n\n gl.deleteTexture(pm.texture);\n}\n\n\n\ncModel.prototype.preloadMotionGroup = function(name)\n{\n var thisRef = this;\n\n for (var i = 0; i < this.modelSetting.getMotionNum(name); i++)\n {\n var file = this.modelSetting.getMotionFile(name, i);\n this.loadMotion(file, this.modelHomeDir + file, function(motion) {\n motion.setFadeIn(thisRef.modelSetting.getMotionFadeIn(name, i));\n motion.setFadeOut(thisRef.modelSetting.getMotionFadeOut(name, i));\n });\n\n }\n}\n\n\ncModel.prototype.update = function()\n{\n // console.log(\"--> cModel.update()\");\n\n if(this.live2DModel == null)\n {\n if (cDefine.DEBUG_LOG) console.error(\"Failed to update.\");\n\n return;\n }\n\n var timeMSec = UtSystem.getUserTimeMSec() - this.startTimeMSec;\n var timeSec = timeMSec / 1000.0;\n var t = timeSec * 2 * Math.PI;\n\n\n if (this.mainMotionManager.isFinished())\n {\n\n this.startRandomMotion(cDefine.MOTION_GROUP_IDLE, cDefine.PRIORITY_IDLE);\n }\n\n //-----------------------------------------------------------------\n\n\n this.live2DModel.loadParam();\n\n\n\n var update = this.mainMotionManager.updateParam(this.live2DModel);\n if (!update) {\n\n if(this.eyeBlink != null) {\n this.eyeBlink.updateParam(this.live2DModel);\n }\n }\n\n\n this.live2DModel.saveParam();\n\n //-----------------------------------------------------------------\n\n\n if (this.expressionManager != null &&\n this.expressions != null &&\n !this.expressionManager.isFinished())\n {\n this.expressionManager.updateParam(this.live2DModel);\n }\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_X\", this.dragX * 30, 1);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Y\", this.dragY * 30, 1);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Z\", (this.dragX * this.dragY) * -30, 1);\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_BODY_ANGLE_X\", this.dragX*10, 1);\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_EYE_BALL_X\", this.dragX, 1);\n this.live2DModel.addToParamFloat(\"PARAM_EYE_BALL_Y\", this.dragY, 1);\n\n\n\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_X\",\n Number((15 * Math.sin(t / 6.5345))), 0.5);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Y\",\n Number((8 * Math.sin(t / 3.5345))), 0.5);\n this.live2DModel.addToParamFloat(\"PARAM_ANGLE_Z\",\n Number((10 * Math.sin(t / 5.5345))), 0.5);\n this.live2DModel.addToParamFloat(\"PARAM_BODY_ANGLE_X\",\n Number((4 * Math.sin(t / 15.5345))), 0.5);\n this.live2DModel.setParamFloat(\"PARAM_BREATH\",\n Number((0.5 + 0.5 * Math.sin(t / 3.2345))), 1);\n\n\n if (this.physics != null)\n {\n this.physics.updateParam(this.live2DModel);\n }\n\n\n if (this.lipSync == null)\n {\n this.live2DModel.setParamFloat(\"PARAM_MOUTH_OPEN_Y\",\n this.lipSyncValue);\n }\n\n\n if( this.pose != null ) {\n this.pose.updateParam(this.live2DModel);\n }\n\n this.live2DModel.update();\n};\n\n\n\ncModel.prototype.setRandomExpression = function()\n{\n var tmp = [];\n for (var name in this.expressions)\n {\n tmp.push(name);\n }\n\n var no = parseInt(Math.random() * tmp.length);\n\n this.setExpression(tmp[no]);\n}\n\n\n\ncModel.prototype.startRandomMotion = function(name, priority)\n{\n var max = this.modelSetting.getMotionNum(name);\n var no = parseInt(Math.random() * max);\n this.startMotion(name, no, priority);\n}\n\n\n\ncModel.prototype.startMotion = function(name, no, priority)\n{\n // console.log(\"startMotion : \" + name + \" \" + no + \" \" + priority);\n\n var motionName = this.modelSetting.getMotionFile(name, no);\n\n if (motionName == null || motionName == \"\")\n {\n if (cDefine.DEBUG_LOG)\n console.error(\"Failed to motion.\");\n return;\n }\n\n if (priority == cDefine.PRIORITY_FORCE)\n {\n this.mainMotionManager.setReservePriority(priority);\n }\n else if (!this.mainMotionManager.reserveMotion(priority))\n {\n if (cDefine.DEBUG_LOG)\n console.log(\"Motion is running.\")\n return;\n }\n\n var thisRef = this;\n var motion;\n\n if (this.motions[name] == null)\n {\n this.loadMotion(null, this.modelHomeDir + motionName, function(mtn) {\n motion = mtn;\n\n\n thisRef.setFadeInFadeOut(name, no, priority, motion);\n\n });\n }\n else\n {\n motion = this.motions[name];\n\n\n thisRef.setFadeInFadeOut(name, no, priority, motion);\n }\n}\n\n\ncModel.prototype.setFadeInFadeOut = function(name, no, priority, motion)\n{\n var motionName = this.modelSetting.getMotionFile(name, no);\n\n motion.setFadeIn(this.modelSetting.getMotionFadeIn(name, no));\n motion.setFadeOut(this.modelSetting.getMotionFadeOut(name, no));\n\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Start motion : \" + motionName);\n\n if (this.modelSetting.getMotionSound(name, no) == null)\n {\n this.mainMotionManager.startMotionPrio(motion, priority);\n }\n else\n {\n var soundName = this.modelSetting.getMotionSound(name, no);\n // var player = new Sound(this.modelHomeDir + soundName);\n\n var snd = document.createElement(\"audio\");\n snd.src = this.modelHomeDir + soundName;\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Start sound : \" + soundName);\n\n snd.play();\n this.mainMotionManager.startMotionPrio(motion, priority);\n }\n}\n\n\n\ncModel.prototype.setExpression = function(name)\n{\n var motion = this.expressions[name];\n\n if (cDefine.DEBUG_LOG)\n console.log(\"Expression : \" + name);\n\n this.expressionManager.startMotion(motion, false);\n}\n\n\n\ncModel.prototype.draw = function(gl)\n{\n //console.log(\"--> cModel.draw()\");\n\n // if(this.live2DModel == null) return;\n\n\n MatrixStack.push();\n\n MatrixStack.multMatrix(this.modelMatrix.getArray());\n\n this.tmpMatrix = MatrixStack.getMatrix()\n this.live2DModel.setMatrix(this.tmpMatrix);\n this.live2DModel.draw();\n\n MatrixStack.pop();\n\n};\n\n\n\ncModel.prototype.hitTest = function(id, testX, testY)\n{\n var len = this.modelSetting.getHitAreaNum();\n for (var i = 0; i < len; i++)\n {\n if (id == this.modelSetting.getHitAreaName(i))\n {\n var drawID = this.modelSetting.getHitAreaID(i);\n\n return this.hitTestSimple(drawID, testX, testY);\n }\n }\n\n return false;\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/cModel.js","// Modified by xiazeyu.\n\n/**\n* @desc To get the model settings from given json file\n*/\n\nimport { Live2DFramework } from \"../lib/Live2DFramework\"\n\n/**\n* @name ModelSettingJson\n* @desc return the struct of ModelSettingJson\n* @param null\n* @returns {Structure} ModelSettingJson\n*/\nexport function ModelSettingJson()\n{ // Define the index in the json file.\n this.NAME = \"name\";\n this.ID = \"id\";\n this.MODEL = \"model\";\n this.TEXTURES = \"textures\";\n this.HIT_AREAS = \"hit_areas\";\n this.PHYSICS = \"physics\";\n this.POSE = \"pose\";\n this.EXPRESSIONS = \"expressions\";\n this.MOTION_GROUPS = \"motions\";\n this.SOUND = \"sound\";\n this.FADE_IN = \"fade_in\";\n this.FADE_OUT = \"fade_out\";\n this.LAYOUT = \"layout\";\n this.INIT_PARAM = \"init_param\";\n this.INIT_PARTS_VISIBLE = \"init_parts_visible\";\n this.VALUE = \"val\";\n this.FILE = \"file\";\n this.json = {};\n}\n\n/**\n* @name loadModelSetting\n* @desc load model settings from json\n* @param {string} jsonPath, {function} callback\n* @returns null\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.loadModelSetting = function(path, callback)\n{\n var thisRef = this;\n var pm = Live2DFramework.getPlatformManager();\n pm.loadBytes(path, function(buf) {\n var str = String.fromCharCode.apply(null,new Uint8Array(buf));\n thisRef.json = JSON.parse(str);\n callback();\n });\n};\n\n/**\n* @name getTextureFile\n* @desc get texture file from json\n* @param {int} order number of texture\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getTextureFile = function(n)\n{\n if (this.json[this.TEXTURES] == null || this.json[this.TEXTURES][n] == null)\n return null;\n\n return this.json[this.TEXTURES][n];\n}\n\n/**\n* @name getModelFile\n* @desc get model file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getModelFile = function()\n{\n return this.json[this.MODEL];\n};\n\n/**\n* @name getTextureNum\n* @desc get the amount of textures from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getTextureNum = function()\n{\n if (this.json[this.TEXTURES] == null) return 0;\n\n return this.json[this.TEXTURES].length;\n}\n\n/**\n* @name getHitAreaNum\n* @desc get the amount of hit area from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getHitAreaNum = function()\n{\n if (this.json[this.HIT_AREAS] == null)\n return 0;\n\n return this.json[this.HIT_AREAS].length;\n}\n\n/**\n* @name getHitAreaID\n* @desc get the hit area ID of given index from json\n* @param {int} index\n* @returns {int} ID\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getHitAreaID = function(n)\n{\n if (this.json[this.HIT_AREAS] == null ||\n this.json[this.HIT_AREAS][n] == null)\n return null;\n\n return this.json[this.HIT_AREAS][n][this.ID];\n}\n\n/**\n* @name getHitAreaName\n* @desc get the hit area name of given index from json\n* @param {int} index\n* @returns {string} name\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getHitAreaName = function(n)\n{\n if (this.json[this.HIT_AREAS] == null ||\n this.json[this.HIT_AREAS][n] == null)\n return null;\n\n return this.json[this.HIT_AREAS][n][this.NAME];\n}\n\n/**\n* @name getPhysicsFile\n* @desc get physics file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getPhysicsFile = function()\n{\n return this.json[this.PHYSICS];\n}\n\n/**\n* @name getPoseFile\n* @desc get pose file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getPoseFile = function()\n{\n return this.json[this.POSE];\n}\n\n/**\n* @name getExpressionNum\n* @desc get the amount of expressions from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getExpressionNum = function()\n{\n return (this.json[this.EXPRESSIONS] == null) ? 0 : this.json[this.EXPRESSIONS].length;\n}\n\n/**\n* @name getExpressionFile\n* @desc get expression file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getExpressionFile = function(n)\n{\n if (this.json[this.EXPRESSIONS] == null)\n return null;\n return this.json[this.EXPRESSIONS][n][this.FILE];\n}\n\n/**\n* @name getExpressionName\n* @desc get the hit expression name of given index from json\n* @param {int} index\n* @returns {string} name\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getExpressionName = function(n)\n{\n if (this.json[this.EXPRESSIONS] == null)\n return null;\n return this.json[this.EXPRESSIONS][n][this.NAME];\n}\n\n/**\n* @name getLayout\n* @desc get the layout from json\n* @param null\n* @returns {string} layout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getLayout = function()\n{\n return this.json[this.LAYOUT];\n}\n\n/**\n* @name getInitParamNum\n* @desc get the amount of init parameter from json\n* @param null\n* @returns {int} amount\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitParamNum = function()\n{\n return (this.json[this.INIT_PARAM] == null) ? 0 : this.json[this.INIT_PARAM].length;\n}\n\n/**\n* @name getMotionNum\n* @desc get the amount of motions from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionNum = function(name)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null)\n return 0;\n\n return this.json[this.MOTION_GROUPS][name].length;\n}\n\n/**\n* @name getMotionFile\n* @desc get motion file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionFile = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null)\n return null;\n\n return this.json[this.MOTION_GROUPS][name][n][this.FILE];\n}\n\n/**\n* @name getMotionSound\n* @desc get motion's sound file from json\n* @param null\n* @returns {string} file path\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionSound = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null ||\n this.json[this.MOTION_GROUPS][name][n][this.SOUND] == null)\n return null;\n\n return this.json[this.MOTION_GROUPS][name][n][this.SOUND];\n}\n\n/**\n* @name getMotionFadeIn\n* @desc get the motion's fade in setting from json\n* @param {string} name, {int} index\n* @returns {int} time (1000 if not found)\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionFadeIn = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null ||\n this.json[this.MOTION_GROUPS][name][n][this.FADE_IN] == null)\n return 1000;\n\n return this.json[this.MOTION_GROUPS][name][n][this.FADE_IN];\n}\n\n/**\n* @name getMotionFadeOut\n* @desc get the motion's fade out setting from json\n* @param {string} name, {int} index\n* @returns {int} time (1000 if not found)\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getMotionFadeOut = function(name, n)\n{\n if (this.json[this.MOTION_GROUPS] == null ||\n this.json[this.MOTION_GROUPS][name] == null ||\n this.json[this.MOTION_GROUPS][name][n] == null ||\n this.json[this.MOTION_GROUPS][name][n][this.FADE_OUT] == null)\n return 1000;\n\n return this.json[this.MOTION_GROUPS][name][n][this.FADE_OUT];\n}\n\n/**\n* @name getInitParamID\n* @desc get the visible ID of init parameter from json\n* @param {(int)} index\n* @returns {int} ID\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitParamID = function(n)\n{\n if (this.json[this.INIT_PARAM] == null ||\n this.json[this.INIT_PARAM][n] == null)\n return null;\n\n return this.json[this.INIT_PARAM][n][this.ID];\n}\n\n/**\n* @name getInitParamValue\n* @desc get the visible value of init parameter from json\n* @param {(int)} index\n* @returns {int} value\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitParamValue = function(n)\n{\n if (this.json[this.INIT_PARAM] == null || this.json[this.INIT_PARAM][n] == null)\n return NaN;\n\n return this.json[this.INIT_PARAM][n][this.VALUE];\n}\n\n/**\n* @name getInitPartsVisibleNum\n* @desc get the amount of init parts visible from json\n* @param null\n* @returns {int} amout\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitPartsVisibleNum = function()\n{\n return (this.json[this.INIT_PARTS_VISIBLE] == null) ? 0 : this.json[this.INIT_PARTS_VISIBLE].length;\n}\n\n/**\n* @name getInitPartsVisibleID\n* @desc get the visible ID of init parts from json\n* @param {(int)} index\n* @returns {int} ID\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitPartsVisibleID = function(n)\n{\n if (this.json[this.INIT_PARTS_VISIBLE] == null || this.json[this.INIT_PARTS_VISIBLE][n] == null)\n return null;\n return this.json[this.INIT_PARTS_VISIBLE][n][this.ID];\n}\n\n/**\n* @name getInitPartsVisibleValue\n* @desc get the visible value of init parts from json\n* @param {(int)} index\n* @returns {int} value\n* @memberOf ModelSettingJson\n*/\nModelSettingJson.prototype.getInitPartsVisibleValue = function(n)\n{\n if (this.json[this.INIT_PARTS_VISIBLE] == null || this.json[this.INIT_PARTS_VISIBLE][n] == null)\n return NaN;\n\n return this.json[this.INIT_PARTS_VISIBLE][n][this.VALUE];\n}\n\n\n\n// WEBPACK FOOTER //\n// ./src/utils/ModelSettingJson.js"],"sourceRoot":""} \ No newline at end of file diff --git a/ghpages/lib/clL2D.min.js b/ghpages/lib/clL2D.min.js index 858b061..812716a 100644 --- a/ghpages/lib/clL2D.min.js +++ b/ghpages/lib/clL2D.min.js @@ -1,3 +1,3 @@ -/*! https://github.com/xiazeyu/live2d-widget.js built@2018-1-14 00:14:06 */ -var L2Dwidget=function(t){var n=window.webpackJsonpL2Dwidget;window.webpackJsonpL2Dwidget=function(e,o,i){for(var c,u,a=0,f=[];a0?r:e)(t)}},function(t,n){t.exports=function(t){if(void 0==t)throw TypeError("Can't call method on "+t);return t}},function(t,n,e){var r=e(63),o=e(21);t.exports=function(t){return r(o(t))}},function(t,n,e){var r=e(28)("keys"),o=e(18);t.exports=function(t){return r[t]||(r[t]=o(t))}},function(t,n,e){var r=e(12).f,o=e(8),i=e(0)("toStringTag");t.exports=function(t,n,e){t&&!o(t=e?t:t.prototype,i)&&r(t,i,{configurable:!0,value:n})}},function(t,n,e){"use strict";var r=e(15);t.exports.f=function(t){return new function(t){var n,e;this.promise=new t(function(t,r){if(void 0!==n||void 0!==e)throw TypeError("Bad Promise constructor");n=t,e=r}),this.resolve=r(n),this.reject=r(e)}(t)}},function(t,n){t.exports=function(t,n){return t===n||t!=t&&n!=n}},function(t,n,e){var r=e(99);t.exports=function(t,n,e){"__proto__"==n&&r?r(t,n,{configurable:!0,enumerable:!0,value:e,writable:!0}):t[n]=e}},function(t,n,e){var r=e(1),o="__core-js_shared__",i=r[o]||(r[o]={});t.exports=function(t){return i[t]||(i[t]={})}},function(t,n){t.exports=function(t){try{return!!t()}catch(t){return!0}}},function(t,n){t.exports=function(t,n){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:n}}},function(t,n,e){"use strict";var r=e(32),o=e(13),i=e(5),c=e(3),u=e(8),a=e(9),f=e(59),s=e(24),l=e(66),p=e(0)("iterator"),v=!([].keys&&"next"in[].keys()),d="values",h=function(){return this};t.exports=function(t,n,e,y,b,w,x){f(e,n,y);var m,g,_,j=function(t){if(!v&&t in k)return k[t];switch(t){case"keys":case d:return function(){return new e(this,t)}}return function(){return new e(this,t)}},O=n+" Iterator",P=b==d,S=!1,k=t.prototype,T=k[p]||k["@@iterator"]||b&&k[b],L=!v&&T||j(b),M=b?P?j("entries"):L:void 0,E="Array"==n?k.entries||T:T;if(E&&(_=l(E.call(new t)))!==Object.prototype&&_.next&&(s(_,O,!0),r||u(_,p)||c(_,p,h)),P&&T&&T.name!==d&&(S=!0,L=function(){return T.call(this)}),r&&!x||!v&&!S&&k[p]||c(k,p,L),a[n]=L,a[O]=h,b)if(m={values:P?L:j(d),keys:w?L:j("keys"),entries:M},x)for(g in m)g in k||i(k,g,m[g]);else o(o.P+o.F*(v||S),n,m);return m}},function(t,n){t.exports=!1},function(t,n,e){var r=e(62),o=e(35);t.exports=Object.keys||function(t){return r(t,o)}},function(t,n,e){var r=e(20),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},function(t,n){t.exports="constructor,hasOwnProperty,isPrototypeOf,propertyIsEnumerable,toLocaleString,toString,valueOf".split(",")},function(t,n,e){var r=e(1).document;t.exports=r&&r.documentElement},function(t,n,e){var r=e(2),o=e(15),i=e(0)("species");t.exports=function(t,n){var e,c=r(t).constructor;return void 0===c||void 0==(e=r(c)[i])?n:o(e)}},function(t,n,e){var r,o,i,c=e(14),u=e(78),a=e(36),f=e(19),s=e(1),l=s.process,p=s.setImmediate,v=s.clearImmediate,d=s.MessageChannel,h=s.Dispatch,y=0,b={},w="onreadystatechange",x=function(){var t=+this;if(b.hasOwnProperty(t)){var n=b[t];delete b[t],n()}},m=function(t){x.call(t.data)};p&&v||(p=function(t){for(var n=[],e=1;arguments.length>e;)n.push(arguments[e++]);return b[++y]=function(){u("function"==typeof t?t:Function(t),n)},r(y),y},v=function(t){delete b[t]},"process"==e(11)(l)?r=function(t){l.nextTick(c(x,t,1))}:h&&h.now?r=function(t){h.now(c(x,t,1))}:d?(i=(o=new d).port2,o.port1.onmessage=m,r=c(i.postMessage,i,1)):s.addEventListener&&"function"==typeof postMessage&&!s.importScripts?(r=function(t){s.postMessage(t+"","*")},s.addEventListener("message",m,!1)):r=w in f("script")?function(t){a.appendChild(f("script"))[w]=function(){a.removeChild(this),x.call(t)}}:function(t){setTimeout(c(x,t,1),0)}),t.exports={set:p,clear:v}},function(t,n){t.exports=function(t){try{return{e:!1,v:t()}}catch(t){return{e:!0,v:t}}}},function(t,n,e){var r=e(2),o=e(6),i=e(25);t.exports=function(t,n){if(r(t),o(n)&&n.constructor===t)return n;var e=i.f(t);return(0,e.resolve)(n),e.promise}},function(t,n){t.exports=function(t,n,e){switch(e.length){case 0:return t.call(n);case 1:return t.call(n,e[0]);case 2:return t.call(n,e[0],e[1]);case 3:return t.call(n,e[0],e[1],e[2])}return t.apply(n,e)}},function(t,n,e){var r=e(89),o=e(90),i=e(91);t.exports=function(t,n){return i(o(t,n,r),t+"")}},function(t,n,e){var r=e(93),o=e(44),i=e(101),c=e(103),u=e(10),a=e(50);t.exports=function t(n,e,f,s,l){n!==e&&i(e,function(i,a){if(u(i))l||(l=new r),c(n,e,a,f,t,s,l);else{var p=s?s(n[a],i,a+"",n,e,l):void 0;void 0===p&&(p=i),o(n,a,p)}},a)}},function(t,n,e){var r=e(27),o=e(26);t.exports=function(t,n,e){(void 0===e||o(t[n],e))&&(void 0!==e||n in t)||r(t,n,e)}},function(t,n,e){var r=e(106),o="object"==typeof self&&self&&self.Object===Object&&self,i=r||o||Function("return this")();t.exports=i},function(t,n,e){var r=e(114)(Object.getPrototypeOf,Object);t.exports=r},function(t,n,e){var r=e(48),o=e(10),i="[object AsyncFunction]",c="[object Function]",u="[object GeneratorFunction]",a="[object Proxy]";t.exports=function(t){if(!o(t))return!1;var n=r(t);return n==c||n==u||n==i||n==a}},function(t,n){var e=Object.prototype.toString;t.exports=function(t){return e.call(t)}},function(t,n){t.exports=function(t){return null!=t&&"object"==typeof t}},function(t,n){t.exports=function(t){var n=[];if(null!=t)for(var e in Object(t))n.push(e);return n}},function(t,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0}),n.config=n.configApplyer=void 0;var r,o=e(88),i=(r=o,r&&r.__esModule?r:{default:r});var c={},u={model:{jsonPath:"https://unpkg.com/live2d-widget-model-shizuku@1.0.0/assets/shizuku.model.json",scale:1,hHeadPos:.5,vHeadPos:.618,myDefine:[]},display:{antialias:2,width:150,height:300,position:"right",hOffset:0,vOffset:-20},mobile:{show:!0,scale:.5,motion:!0},name:{canvas:"live2dcanvas",div:"live2d-widget"},react:{opacityDefault:.7,opacityOnHover:.2,myFunc:function(t){console.log("(undefined) ┑( ̄Д  ̄)┍")}},dev:{log:!1,border:!1,mouseLog:!1,mouseFunc:function(t,n,e,r){console.log("MouseFunc: "+t+","+n+"; "+e+", "+r)}}};n.configApplyer=function(t){n.config=c=(0,i.default)(t,u),console.log("currConfig:",c)},n.config=c},function(t,n,e){e(53),e(85),t.exports=e(86)},function(t,n,e){e(54),e(57),e(68),e(72),e(83),e(84),t.exports=e(4).Promise},function(t,n,e){"use strict";var r=e(17),o={};o[e(0)("toStringTag")]="z",o+""!="[object z]"&&e(5)(Object.prototype,"toString",function(){return"[object "+r(this)+"]"},!0)},function(t,n,e){t.exports=!e(7)&&!e(29)(function(){return 7!=Object.defineProperty(e(19)("div"),"a",{get:function(){return 7}}).a})},function(t,n,e){var r=e(6);t.exports=function(t,n){if(!r(t))return t;var e,o;if(n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;if("function"==typeof(e=t.valueOf)&&!r(o=e.call(t)))return o;if(!n&&"function"==typeof(e=t.toString)&&!r(o=e.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},function(t,n,e){"use strict";var r=e(58)(!0);e(31)(String,"String",function(t){this._t=String(t),this._i=0},function(){var t,n=this._t,e=this._i;return e>=n.length?{value:void 0,done:!0}:(t=r(n,e),this._i+=t.length,{value:t,done:!1})})},function(t,n,e){var r=e(20),o=e(21);t.exports=function(t){return function(n,e){var i,c,u=String(o(n)),a=r(e),f=u.length;return a<0||a>=f?t?"":void 0:(i=u.charCodeAt(a))<55296||i>56319||a+1===f||(c=u.charCodeAt(a+1))<56320||c>57343?t?u.charAt(a):i:t?u.slice(a,a+2):c-56320+(i-55296<<10)+65536}}},function(t,n,e){"use strict";var r=e(60),o=e(30),i=e(24),c={};e(3)(c,e(0)("iterator"),function(){return this}),t.exports=function(t,n,e){t.prototype=r(c,{next:o(1,e)}),i(t,n+" Iterator")}},function(t,n,e){var r=e(2),o=e(61),i=e(35),c=e(23)("IE_PROTO"),u=function(){},a="prototype",f=function(){var t,n=e(19)("iframe"),r=i.length;for(n.style.display="none",e(36).appendChild(n),n.src="javascript:",(t=n.contentWindow.document).open(),t.write(" + +