@operato/scene-indoor-map 0.0.16
Sign up to get free protection for your applications and to get access to all the features.
- package/@types/global/index.d.ts +1 -0
- package/CHANGELOG.md +16 -0
- package/LICENSE +21 -0
- package/README.md +15 -0
- package/assets/beacon.png +0 -0
- package/assets/indoor-map.png +0 -0
- package/assets/no-image.png +0 -0
- package/assets/rack.png +0 -0
- package/demo/imu-mqtt-node/imu-publisher.js +66 -0
- package/demo/imu-mqtt-node/package.json +16 -0
- package/demo/index-camera.html +108 -0
- package/demo/index-gaussian.html +184 -0
- package/demo/index-indoor-map-property.html +96 -0
- package/demo/index-indoor-map.html +289 -0
- package/demo/index-rack-property.html +76 -0
- package/demo/index.html +365 -0
- package/demo/things-scene-indoor-map.html +6 -0
- package/dist/beacon.d.ts +19 -0
- package/dist/beacon.js +61 -0
- package/dist/beacon.js.map +1 -0
- package/dist/camera.d.ts +20 -0
- package/dist/camera.js +158 -0
- package/dist/camera.js.map +1 -0
- package/dist/editors/index.d.ts +5 -0
- package/dist/editors/index.js +11 -0
- package/dist/editors/index.js.map +1 -0
- package/dist/editors/things-editor-action.d.ts +7 -0
- package/dist/editors/things-editor-action.js +40 -0
- package/dist/editors/things-editor-action.js.map +1 -0
- package/dist/floor.d.ts +23 -0
- package/dist/floor.js +66 -0
- package/dist/floor.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +10 -0
- package/dist/index.js.map +1 -0
- package/dist/indoor-map.d.ts +34 -0
- package/dist/indoor-map.js +161 -0
- package/dist/indoor-map.js.map +1 -0
- package/dist/quaternion.d.ts +39 -0
- package/dist/quaternion.js +79 -0
- package/dist/quaternion.js.map +1 -0
- package/dist/rack.d.ts +27 -0
- package/dist/rack.js +84 -0
- package/dist/rack.js.map +1 -0
- package/dist/templates/beacon.d.ts +15 -0
- package/dist/templates/beacon.js +16 -0
- package/dist/templates/beacon.js.map +1 -0
- package/dist/templates/camera.d.ts +20 -0
- package/dist/templates/camera.js +21 -0
- package/dist/templates/camera.js.map +1 -0
- package/dist/templates/index.d.ts +36 -0
- package/dist/templates/index.js +4 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/templates/indoor-map.d.ts +16 -0
- package/dist/templates/indoor-map.js +17 -0
- package/dist/templates/indoor-map.js.map +1 -0
- package/dist/templates/rack.d.ts +22 -0
- package/dist/templates/rack.js +23 -0
- package/dist/templates/rack.js.map +1 -0
- package/helps/scene/component/indoor-map.ko.md +65 -0
- package/helps/scene/component/indoor-map.md +65 -0
- package/helps/scene/component/indoor-map.zh.md +65 -0
- package/helps/scene/component/rack.ko.md +17 -0
- package/helps/scene/component/rack.md +15 -0
- package/helps/scene/component/rack.zh.md +16 -0
- package/helps/scene/images/button-evnet-mapping-01.png +0 -0
- package/helps/scene/images/button-evnet-mapping-02.png +0 -0
- package/helps/scene/images/button-evnet-mapping-03.png +0 -0
- package/helps/scene/images/container-03.png +0 -0
- package/helps/scene/images/indoor-button-finish-01.gif +0 -0
- package/helps/scene/images/indoor-create-01.png +0 -0
- package/helps/scene/images/indoor-create-02.png +0 -0
- package/helps/scene/images/indoor-create-03.png +0 -0
- package/helps/scene/images/indoor-setting-01.png +0 -0
- package/images/icon-button.png +0 -0
- package/package.json +61 -0
- package/src/beacon.ts +69 -0
- package/src/camera.ts +207 -0
- package/src/editors/index.ts +11 -0
- package/src/editors/things-editor-action.ts +48 -0
- package/src/floor.ts +386 -0
- package/src/index.ts +9 -0
- package/src/indoor-map.ts +211 -0
- package/src/quaternion.ts +129 -0
- package/src/rack.ts +104 -0
- package/src/templates/beacon.ts +16 -0
- package/src/templates/camera.ts +21 -0
- package/src/templates/index.ts +4 -0
- package/src/templates/indoor-map.ts +18 -0
- package/src/templates/rack.ts +23 -0
- package/test/basic-test.html +67 -0
- package/test/index.html +22 -0
- package/things-scene.config.js +7 -0
- package/tsconfig.json +23 -0
- package/tsconfig.tsbuildinfo +1 -0
@@ -0,0 +1,129 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright © HatioLab Inc. All rights reserved.
|
3
|
+
*/
|
4
|
+
export default class Quaternion {
|
5
|
+
x: number
|
6
|
+
y: number
|
7
|
+
z: number
|
8
|
+
w: number
|
9
|
+
|
10
|
+
constructor(x: number, y: number, z: number, w?: number) {
|
11
|
+
this.x = x || 0;
|
12
|
+
this.y = y || 0;
|
13
|
+
this.z = z || 0;
|
14
|
+
this.w = w === undefined ? 1 : w;
|
15
|
+
}
|
16
|
+
|
17
|
+
multiply(q: Quaternion) {
|
18
|
+
var { x, y, z, w } = this;
|
19
|
+
var qx = q.x,
|
20
|
+
qy = q.y,
|
21
|
+
qz = q.z,
|
22
|
+
qw = q.w;
|
23
|
+
|
24
|
+
return new Quaternion(
|
25
|
+
x * qw + y * qz - z * qy + w * qx,
|
26
|
+
- x * qz + y * qw + z * qx + w * qy,
|
27
|
+
x * qy - y * qx + z * qw + w * qz,
|
28
|
+
- x * qx - y * qy - z * qz + w * qw
|
29
|
+
);
|
30
|
+
}
|
31
|
+
|
32
|
+
add(x_: number | Quaternion, y_: number, z_: number, w_: number): Quaternion {
|
33
|
+
var { x, y, z, w } = this;
|
34
|
+
|
35
|
+
// of the form: `q1.add(q2)`
|
36
|
+
if (isNaN(Number(x_)))
|
37
|
+
return (x_ as Quaternion).add(x, y, z, w);
|
38
|
+
|
39
|
+
// addition of the just scaler component. of the form: `q1.add(n)`
|
40
|
+
if (y_ === undefined)
|
41
|
+
return new Quaternion(x, y, z, w + (x_ as number));
|
42
|
+
|
43
|
+
// of the form: `q1.add(x, y, z, w)`
|
44
|
+
return new Quaternion(x + (x_ as number), y + y_, z + z_, w + w_);
|
45
|
+
}
|
46
|
+
|
47
|
+
get coords() {
|
48
|
+
return {
|
49
|
+
x: this.x,
|
50
|
+
y: this.y,
|
51
|
+
z: this.z,
|
52
|
+
w: this.w
|
53
|
+
}
|
54
|
+
}
|
55
|
+
|
56
|
+
get array() {
|
57
|
+
return [this.x, this.y, this.z, this.w];
|
58
|
+
}
|
59
|
+
|
60
|
+
get inverse() {
|
61
|
+
return new Quaternion(-this.x, -this.y, -this.z);
|
62
|
+
}
|
63
|
+
|
64
|
+
get size() {
|
65
|
+
return Math.sqrt(this.x * this.x + this.y * this.y + this.z * this.z + this.w * this.w);
|
66
|
+
}
|
67
|
+
|
68
|
+
get norm() {
|
69
|
+
var l = this.size;
|
70
|
+
if (l === 0)
|
71
|
+
return new Quaternion(0, 0, 0, 0);
|
72
|
+
else
|
73
|
+
return new Quaternion(this.x / l, this.y / l, this.z / l, this.w / l);
|
74
|
+
}
|
75
|
+
|
76
|
+
static fromAxis(axis: {x: number, y: number, z: number}, angle: number) {
|
77
|
+
// see: http://www.genesis3d.com/~kdtop/Quaternions-UsingToRepresentRotation.htm
|
78
|
+
// q = (s, v_vec)
|
79
|
+
// s = cos(theta / 2)
|
80
|
+
// v = u_vec * sin (theta / 2)
|
81
|
+
var halfAngle = angle / 2, s = Math.sin(halfAngle);
|
82
|
+
return new Quaternion(axis.x * s, axis.y * s, axis.z * s, Math.cos(halfAngle));
|
83
|
+
}
|
84
|
+
|
85
|
+
static fromEuler(vec: {x: number, y: number, z: number}) {
|
86
|
+
var c = 1,
|
87
|
+
x = vec.x * c,
|
88
|
+
y = vec.y * c,
|
89
|
+
z = vec.z * c,
|
90
|
+
c1 = Math.cos(y),
|
91
|
+
s1 = Math.sin(y),
|
92
|
+
c2 = Math.cos(-z),
|
93
|
+
s2 = Math.sin(-z),
|
94
|
+
c3 = Math.cos(x),
|
95
|
+
s3 = Math.sin(x),
|
96
|
+
c1c2 = c1 * c2,
|
97
|
+
s1s2 = s1 * s2;
|
98
|
+
|
99
|
+
return new Quaternion(
|
100
|
+
c1c2 * s3 + s1s2 * c3,
|
101
|
+
s1 * c2 * c3 + c1 * s2 * s3,
|
102
|
+
c1 * s2 * c3 - s1 * c2 * s3,
|
103
|
+
c1c2 * c3 - s1s2 * s3
|
104
|
+
);
|
105
|
+
}
|
106
|
+
|
107
|
+
multiVec(vec: {x: number, y: number, z: number}) {
|
108
|
+
var { x, y, z, w } = this;
|
109
|
+
|
110
|
+
// quaternion * vec
|
111
|
+
var x_ = w * vec.x + y * vec.z - z * vec.y,
|
112
|
+
y_ = w * vec.y + z * vec.x - x * vec.z,
|
113
|
+
z_ = w * vec.z + x * vec.y - y * vec.x,
|
114
|
+
w_ = -x * vec.x - y * vec.y - z * vec.z;
|
115
|
+
|
116
|
+
// vec * quaternion^-1
|
117
|
+
return {
|
118
|
+
// note: possible future per. opt. in signs
|
119
|
+
x: x_ * w + w_ * -x + y_ * -z - z_ * -y,
|
120
|
+
y: y_ * w + w_ * -y + z_ * -x - x_ * -z,
|
121
|
+
z: z_ * w + w_ * -z + x_ * -y - y_ * -x
|
122
|
+
}
|
123
|
+
}
|
124
|
+
|
125
|
+
toString() {
|
126
|
+
return '[x=' + this.x + ', y=' + this.y + ', z=' + this.z + ', w=' + this.w + ']'
|
127
|
+
}
|
128
|
+
|
129
|
+
}
|
package/src/rack.ts
ADDED
@@ -0,0 +1,104 @@
|
|
1
|
+
/*
|
2
|
+
* Copyright © HatioLab Inc. All rights reserved.
|
3
|
+
*/
|
4
|
+
import { Component, RectPath } from '@hatiolab/things-scene';
|
5
|
+
|
6
|
+
const NATURE = {
|
7
|
+
mutable: false,
|
8
|
+
resizable: true,
|
9
|
+
rotatable: true,
|
10
|
+
properties: [{
|
11
|
+
type: 'number',
|
12
|
+
label: 'depth',
|
13
|
+
name: 'depth',
|
14
|
+
property: 'depth'
|
15
|
+
}, {
|
16
|
+
type: 'number',
|
17
|
+
label: 'shelves',
|
18
|
+
name: 'shelves',
|
19
|
+
property: 'shelves'
|
20
|
+
}, {
|
21
|
+
type: 'string',
|
22
|
+
label: 'location-pattern',
|
23
|
+
name: 'locPattern',
|
24
|
+
placeholder: '{z}{s}-{u}-{sh}',
|
25
|
+
property: 'locPattern'
|
26
|
+
}, {
|
27
|
+
type: 'string',
|
28
|
+
label: 'zone',
|
29
|
+
name: 'zone',
|
30
|
+
property: 'zone'
|
31
|
+
}, {
|
32
|
+
type: 'string',
|
33
|
+
label: 'section',
|
34
|
+
name: 'section',
|
35
|
+
property: 'section'
|
36
|
+
}, {
|
37
|
+
type: 'string',
|
38
|
+
label: 'unit',
|
39
|
+
name: 'unit',
|
40
|
+
property: 'unit'
|
41
|
+
}, {
|
42
|
+
type: 'string',
|
43
|
+
label: 'shelf-pattern',
|
44
|
+
name: 'shelfPattern',
|
45
|
+
placeholder: '#',
|
46
|
+
property: 'shelfPattern'
|
47
|
+
}],
|
48
|
+
help: 'scene/component/rack'
|
49
|
+
}
|
50
|
+
|
51
|
+
export default class Rack extends RectPath(Component) {
|
52
|
+
|
53
|
+
is3dish() {
|
54
|
+
return true
|
55
|
+
}
|
56
|
+
|
57
|
+
draw(context: CanvasRenderingContext2D) {
|
58
|
+
|
59
|
+
var {
|
60
|
+
left,
|
61
|
+
top,
|
62
|
+
width,
|
63
|
+
height,
|
64
|
+
strokeStyle,
|
65
|
+
lineWidth,
|
66
|
+
fillStyle,
|
67
|
+
alpha = 1,
|
68
|
+
} = this.model;
|
69
|
+
|
70
|
+
context.beginPath()
|
71
|
+
context.rect(left, top, width, height)
|
72
|
+
context.strokeStyle = strokeStyle
|
73
|
+
context.lineWidth = lineWidth
|
74
|
+
context.globalAlpha = alpha * 0.4
|
75
|
+
context.stroke()
|
76
|
+
|
77
|
+
context.beginPath()
|
78
|
+
context.rect(left + width * 0.15, top + height * 0.15, width * 0.7, height * 0.7)
|
79
|
+
context.fillStyle = fillStyle
|
80
|
+
context.globalAlpha = alpha * 0.5
|
81
|
+
context.fill()
|
82
|
+
|
83
|
+
context.beginPath()
|
84
|
+
context.moveTo(left, top)
|
85
|
+
context.lineTo(left + width, top + height)
|
86
|
+
context.moveTo(left, top + height)
|
87
|
+
context.lineTo(left + width, top)
|
88
|
+
context.strokeStyle = strokeStyle
|
89
|
+
context.lineWidth = lineWidth
|
90
|
+
context.globalAlpha = alpha * 0.4
|
91
|
+
context.stroke()
|
92
|
+
}
|
93
|
+
|
94
|
+
get nature() {
|
95
|
+
return NATURE
|
96
|
+
}
|
97
|
+
|
98
|
+
get hasTextProperty() {
|
99
|
+
return false;
|
100
|
+
}
|
101
|
+
|
102
|
+
}
|
103
|
+
|
104
|
+
Component.register('rack', Rack)
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import icon from '../../assets/beacon.png';
|
2
|
+
|
3
|
+
export default {
|
4
|
+
type: 'beacon',
|
5
|
+
description: 'beacon',
|
6
|
+
group: 'IoT', /* line|shape|textAndMedia|chartAndGauge|table|container|dataSource|IoT|3D|warehouse|form|etc */
|
7
|
+
icon,
|
8
|
+
model: {
|
9
|
+
type: 'beacon',
|
10
|
+
left: 100,
|
11
|
+
top: 100,
|
12
|
+
zPos: 0,
|
13
|
+
width: 100,
|
14
|
+
height: 100
|
15
|
+
}
|
16
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import icon from '../../assets/no-image.png';
|
2
|
+
|
3
|
+
export default {
|
4
|
+
type: 'camera',
|
5
|
+
description: 'camera',
|
6
|
+
group: 'IoT', /* line|shape|textAndMedia|chartAndGauge|table|container|dataSource|IoT|3D|warehouse|form|etc */
|
7
|
+
icon,
|
8
|
+
model: {
|
9
|
+
type: 'camera',
|
10
|
+
left: 100,
|
11
|
+
top: 100,
|
12
|
+
width: 600,
|
13
|
+
height: 400,
|
14
|
+
lineWidth: 1,
|
15
|
+
strokeStyle: 'black',
|
16
|
+
fillStyle: 'yellow',
|
17
|
+
yaw: 0.2,
|
18
|
+
pitch: 0.2,
|
19
|
+
roll: 0.2
|
20
|
+
}
|
21
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import icon from '../../assets/indoor-map.png';
|
2
|
+
|
3
|
+
export default {
|
4
|
+
type: 'indoor map',
|
5
|
+
description: 'indoor map',
|
6
|
+
group:
|
7
|
+
'container' /* line|shape|textAndMedia|chartAndGauge|table|container|dataSource|IoT|3D|warehouse|form|etc */,
|
8
|
+
icon,
|
9
|
+
model: {
|
10
|
+
type: 'indoor-map',
|
11
|
+
left: 100,
|
12
|
+
top: 100,
|
13
|
+
width: 200,
|
14
|
+
height: 200,
|
15
|
+
fontSize: 80,
|
16
|
+
lineWidth: 1
|
17
|
+
}
|
18
|
+
}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
import icon from '../../assets/rack.png';
|
2
|
+
|
3
|
+
export default {
|
4
|
+
type: 'rack',
|
5
|
+
description: 'rack in warehouse',
|
6
|
+
group: 'warehouse', /* line|shape|textAndMedia|chartAndGauge|table|container|dataSource|IoT|3D|warehouse|form|etc */
|
7
|
+
icon,
|
8
|
+
model: {
|
9
|
+
type: 'rack',
|
10
|
+
left: 100,
|
11
|
+
top: 100,
|
12
|
+
width: 100,
|
13
|
+
height: 100,
|
14
|
+
depth: 100,
|
15
|
+
shelves: 1,
|
16
|
+
locPattern: '{z}{s}-{u}-{sh}',
|
17
|
+
shelfPattern: '#',
|
18
|
+
fillStyle: '#ffffff',
|
19
|
+
strokeStyle: '#999',
|
20
|
+
lineWidth: 1,
|
21
|
+
alpha: 1
|
22
|
+
}
|
23
|
+
}
|
@@ -0,0 +1,67 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<!--
|
3
|
+
@license
|
4
|
+
Copyright © HatioLab Inc. All rights reserved.
|
5
|
+
-->
|
6
|
+
<html>
|
7
|
+
<head>
|
8
|
+
<meta charset="utf-8">
|
9
|
+
<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
|
10
|
+
|
11
|
+
<script src="../../webcomponentsjs/webcomponents-lite.js"></script>
|
12
|
+
<script src="../../web-component-tester/browser.js"></script>
|
13
|
+
|
14
|
+
<!-- Step 1: import the element to test -->
|
15
|
+
<link rel="import" href="../things-scene-indoor-map.html">
|
16
|
+
</head>
|
17
|
+
<body>
|
18
|
+
|
19
|
+
<!-- You can use the document as a place to set up your fixtures. -->
|
20
|
+
<test-fixture id="things-scene-indoor-map-fixture">
|
21
|
+
<template>
|
22
|
+
<things-scene-indoor-map>
|
23
|
+
<h2>things-scene-indoor-map</h2>
|
24
|
+
</things-scene-indoor-map>
|
25
|
+
</template>
|
26
|
+
</test-fixture>
|
27
|
+
|
28
|
+
<script>
|
29
|
+
suite('<things-scene-indoor-map>', function() {
|
30
|
+
|
31
|
+
var myEl;
|
32
|
+
|
33
|
+
setup(function() {
|
34
|
+
myEl = fixture('things-scene-indoor-map-fixture');
|
35
|
+
});
|
36
|
+
|
37
|
+
test('defines the "author" property', function() {
|
38
|
+
assert.equal(myEl.author.name, 'Dimitri Glazkov');
|
39
|
+
assert.equal(myEl.author.image, 'http://addyosmani.com/blog/wp-content/uploads/2013/04/unicorn.jpg');
|
40
|
+
});
|
41
|
+
|
42
|
+
test('says hello', function() {
|
43
|
+
assert.equal(myEl.sayHello(), 'things-scene-indoor-map says, Hello World!');
|
44
|
+
|
45
|
+
var greetings = myEl.sayHello('greetings Earthlings');
|
46
|
+
assert.equal(greetings, 'things-scene-indoor-map says, greetings Earthlings');
|
47
|
+
});
|
48
|
+
|
49
|
+
test('fires lasers', function(done) {
|
50
|
+
myEl.addEventListener('things-scene-indoor-map-lasers', function(event) {
|
51
|
+
assert.equal(event.detail.sound, 'Pew pew!');
|
52
|
+
done();
|
53
|
+
});
|
54
|
+
myEl.fireLasers();
|
55
|
+
});
|
56
|
+
|
57
|
+
test('distributed children', function() {
|
58
|
+
var els = myEl.getContentChildren();
|
59
|
+
assert.equal(els.length, 1, 'one distributed node');
|
60
|
+
assert.equal(els[0], myEl.querySelector('h2'), 'content distributed correctly');
|
61
|
+
});
|
62
|
+
|
63
|
+
});
|
64
|
+
</script>
|
65
|
+
|
66
|
+
</body>
|
67
|
+
</html>
|
package/test/index.html
ADDED
@@ -0,0 +1,22 @@
|
|
1
|
+
<!doctype html>
|
2
|
+
<!--
|
3
|
+
@license
|
4
|
+
Copyright © HatioLab Inc. All rights reserved.
|
5
|
+
-->
|
6
|
+
<html><head>
|
7
|
+
<meta charset="utf-8">
|
8
|
+
<meta name="viewport" content="width=device-width, minimum-scale=1.0, initial-scale=1.0, user-scalable=yes">
|
9
|
+
|
10
|
+
<script src="../../webcomponentsjs/webcomponents-lite.js"></script>
|
11
|
+
<script src="../../web-component-tester/browser.js"></script>
|
12
|
+
</head>
|
13
|
+
<body>
|
14
|
+
<script>
|
15
|
+
// Load and run all tests (.html, .js):
|
16
|
+
WCT.loadSuites([
|
17
|
+
'basic-test.html',
|
18
|
+
'basic-test.html?dom=shadow'
|
19
|
+
]);
|
20
|
+
</script>
|
21
|
+
|
22
|
+
</body></html>
|
package/tsconfig.json
ADDED
@@ -0,0 +1,23 @@
|
|
1
|
+
{
|
2
|
+
"compilerOptions": {
|
3
|
+
"target": "es2018",
|
4
|
+
"module": "esnext",
|
5
|
+
"moduleResolution": "node",
|
6
|
+
"noEmitOnError": true,
|
7
|
+
"lib": ["es2017", "dom"],
|
8
|
+
"strict": true,
|
9
|
+
"esModuleInterop": false,
|
10
|
+
"allowSyntheticDefaultImports": true,
|
11
|
+
"experimentalDecorators": true,
|
12
|
+
"importHelpers": true,
|
13
|
+
"outDir": "dist",
|
14
|
+
"sourceMap": true,
|
15
|
+
"inlineSources": true,
|
16
|
+
"rootDir": "src",
|
17
|
+
"declaration": true,
|
18
|
+
"incremental": true,
|
19
|
+
"typeRoots": ["./node_modules", "@types"],
|
20
|
+
"types": ["node"]
|
21
|
+
},
|
22
|
+
"include": ["**/*.ts", "*.d.ts"]
|
23
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","./@types/global/index.d.ts","../../node_modules/tslib/tslib.d.ts","./node_modules/@hatiolab/things-scene/things-scene.d.ts","./src/beacon.ts","./src/quaternion.ts","./src/camera.ts","./src/indoor-map.ts","./src/floor.ts","./src/rack.ts","./src/index.ts","../../node_modules/@lit/reactive-element/css-tag.d.ts","../../node_modules/@lit/reactive-element/reactive-controller.d.ts","../../node_modules/@lit/reactive-element/reactive-element.d.ts","../../node_modules/@types/trusted-types/lib/index.d.ts","../../node_modules/@types/trusted-types/index.d.ts","../../node_modules/lit-html/directive.d.ts","../../node_modules/lit-html/lit-html.d.ts","../../node_modules/lit-element/lit-element.d.ts","../../node_modules/lit/index.d.ts","../../node_modules/@operato/property-editor/dist/src/ox-property-editor.d.ts","../../node_modules/@operato/property-editor/dist/src/index.d.ts","./src/editors/things-editor-action.ts","./src/editors/index.ts","./src/templates/beacon.ts","./src/templates/camera.ts","./src/templates/indoor-map.ts","./src/templates/rack.ts","./src/templates/index.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"6adbf5efd0e374ff5f427a4f26a5a413e9734eee5067a0e86da69aea41910b52","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","e21c071ca3e1b4a815d5f04a7475adcaeea5d64367e840dd0154096d705c3940",{"version":"abba1071bfd89e55e88a054b0c851ea3e8a494c340d0f3fab19eb18f6afb0c9e","affectsGlobalScope":true},{"version":"d8996609230d17e90484a2dd58f22668f9a05a3bfe00bfb1d6271171e54a31fb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"4378fc8122ec9d1a685b01eb66c46f62aba6b239ca7228bb6483bcf8259ee493","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"62d80405c46c3f4c527ee657ae9d43fda65a0bf582292429aea1e69144a522a6","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"1b3fe904465430e030c93239a348f05e1be80640d91f2f004c3512c2c2c89f34","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"d071129cba6a5f2700be09c86c07ad2791ab67d4e5ed1eb301d6746c62745ea4","affectsGlobalScope":true},{"version":"10bbdc1981b8d9310ee75bfac28ee0477bb2353e8529da8cff7cb26c409cb5e8","affectsGlobalScope":true},"c4f5f288a2b8dcfb6183e29612ec26b7a049314a6a10b7e6e700a8307077455a","12f4cfe2fe60b810c3174537bc2ddb20c1067b7768643d12cb1266fd183afb75","80310f2f11d74eede68eddec9977900f2c1965e728b63b1a4e47a20e15ac84e5","76395d012a9988aec73b86e6bcabb9ddf7e0b3edc7621615aac620aeebcfb558","8846e9ec615004e255a9aac0056071d9f2e8dedf4e391c4dd308d793db2f5744","005f56f0650768db0a1326a3bf7f3e5be1346152d12825162804cc6b1c0e673c","199065a9ea9449bf8177a7b4a19337eb5a8da409e214ad8efa9e7cd7d3ced190","b6ed5ce407d26b7d0d364b2eea58a68837557da3af4e14212145a3e8496b7a57","6da970129f66ae6cec3bc4910447772f96de476b50d8d31fcc9b4461d1d06934","73801edd15e5b7d77e0c3159a9a5f5ae506a0631893faaa0e4deb89f83630386","0c8a56610b08f55e29ffb466cd27626ad6dbe822312a398026e82270c63088e3","1e5743b25a63fd34ffbae89adcbf248ee17db6ed08d90079ffa93803c3e80d2a","7b33ee85f2e96a51c0e3bcee47b247a24515aff37a7d8b5dfe4e18b735d37440","2fcd2d22b1f30555e785105597cd8f57ed50300e213c4f1bbca6ae149f782c38",{"version":"bb4248c7f953233ac52332088fac897d62b82be07244e551d87c5049600b6cf7","affectsGlobalScope":true},"70f04c91d3186b1b10157157887fab664968fc9b88377785a5ee42750c202c6d","06e20da1bc94df355f22ac7a9533c2488816ec4cb9134d9b160a263629a07072","c311ef8d8b159d0c268b415f78c1949498dc2d14455a9891c5b8ef84625b1e41","f07a77a7fb1d49aa2b61cb68bf712a083487acd7130d20223a83de03af0c257d","48997560f6ca5fd8b4233b69d1f9cbac88d26719e925fff493fdebb5198b675f","a1045a03e654de1219e85600f7589af7a91e4ac37e2aff114f2ceba34111d34d","48d697d00cbdd0df5728773969a65c1f486daafcf2077871f8cc5fed66ea4014","fbe3e5003a3945114b1175a5547d4bfa7c09bf73be03c283107f31a25d53df26","2d36e6d5a7c99088290a15d860da0337d38833f90065c1def71921f0a64c48fb","fc9a059f93763e55a69b998866523b9070ee4f7f94448158402c9923e8417ef2","22328737737440b1243c57219bad62697ab9e0d71d043cbddb582fc07d5ccfa3","9cc266f7c0e6f95ffccef901a73a3317648b03beda79db2de55f3648880a479d","2459a79823f59c1d0b6a77660f636e6aae91e4270e25296aa534bc524c7b96d0","0d5a2ee1fdfa82740e0103389b9efd6bfe145a20018a2da3c02b89666181f4d9","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"92d63add669d18ebc349efbacd88966d6f2ccdddfb1b880b2db98ae3aa7bf7c4","affectsGlobalScope":true},"ccc94049a9841fe47abe5baef6be9a38fc6228807974ae675fb15dc22531b4be",{"version":"9acfe4d1ff027015151ce81d60797b04b52bffe97ad8310bb0ec2e8fd61e1303","affectsGlobalScope":true},"95843d5cfafced8f3f8a5ce57d2335f0bcd361b9483587d12a25e4bd403b8216","afc6e96061af46bcff47246158caee7e056f5288783f2d83d6858cd25be1c565",{"version":"34f5bcac12b36d70304b73de5f5aab3bb91bd9919f984be80579ebcad03a624e","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","2f520601649a893e6a49a8851ebfcf4be8ce090dc1281c2a08a871cb04e8251f","f50c975ab7b50e25a69e3d8a3773894125b44e9698924105f23b812bf7488baf","2b8c764f856a1dd0a9a2bf23e5efddbff157de8138b0754010be561ae5fcaa90","76650408392bf49a8fbf3e2b6b302712a92d76af77b06e2da1cc8077359c4409","0af3121e68297b2247dd331c0d24dba599e50736a7517a5622d5591aae4a3122","6972fca26f6e9bd56197568d4379f99071a90766e06b4fcb5920a0130a9202be",{"version":"4a2628e95962c8ab756121faa3ac2ed348112ff7a87b5c286dd2cc3326546b4c","affectsGlobalScope":true},"80793b2277f31baa199234daed806fff0fb11491d1ebd3357e520c3558063f00","a049a59a02009fc023684fcfaf0ac526fe36c35dcc5d2b7d620c1750ba11b083","b9b963043551b034abd9e7c6d859f7a81d99479fde938d983114d167d0644a78","b287b810b5035d5685f1df6e1e418f1ca452a3ed4f59fd5cc081dbf2045f0d9b","4b9a003b5c556c96784132945bb41c655ea11273b1917f5c8d0c154dd5fd20dd","a458dc78104cc80048ac24fdc02fe6dce254838094c2f25641b3f954d9721241",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"902cd98bf46e95caf4118a0733fb801e9e90eec3edaed6abdad77124afec9ca2","abc1c425b2ad6720433f40f1877abfa4223f0f3dd486c9c28c492179ca183cb6","cd4854d38f4eb5592afd98ab95ca17389a7dfe38013d9079e802d739bdbcc939","94eed4cc2f5f658d5e229ff1ccd38860bddf4233e347bf78edd2154dee1f2b99",{"version":"bd1a08e30569b0fb2f0b21035eb9b039871f68faa9b98accf847e9c878c5e0a9","affectsGlobalScope":true},"9f1069b9e2c051737b1f9b4f1baf50e4a63385a6a89c32235549ae87fc3d5492","ee18f2da7a037c6ceeb112a084e485aead9ea166980bf433474559eac1b46553","29c2706fa0cc49a2bd90c83234da33d08bb9554ecec675e91c1f85087f5a5324","0acbf26bf958f9e80c1ffa587b74749d2697b75b484062d36e103c137c562bc3","d7838022c7dab596357a9604b9c6adffe37dc34085ce0779c958ce9545bd7139","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"a7971f9fb2a32ec7788ec6cda9d7a33c02023dfe9a62db2030ad1359649d8050","c33a6ea7147af60d8e98f1ac127047f4b0d4e2ce28b8f08ff3de07ca7cc00637",{"version":"b42b47e17b8ece2424ae8039feb944c2e3ba4b262986aebd582e51efbdca93dc","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","2408611d9b4146e35d1dbd1f443ccd8e187c74614a54b80300728277529dbf11","998a3de5237518c0b3ac00a11b3b4417affb008aa20aedee52f3fdae3cb86151","ad41008ffe077206e1811fc873f4d9005b5fd7f6ab52bb6118fef600815a5cb4","d88ecca73348e7c337541c4b8b60a50aca5e87384f6b8a422fc6603c637e4c21","badae0df9a8016ac36994b0a0e7b82ba6aaa3528e175a8c3cb161e4683eec03e","c3db860bcaaaeb3bbc23f353bbda1f8ab82756c8d5e973bebb3953cb09ea68f2","235a53595bd20b0b0eeb1a29cb2887c67c48375e92f03749b2488fbd46d0b1a0","bc09393cd4cd13f69cf1366d4236fbae5359bb550f0de4e15767e9a91d63dfb1","9c266243b01545e11d2733a55ad02b4c00ecdbda99c561cd1674f96e89cdc958","c71155c05fc76ff948a4759abc1cb9feec036509f500174bc18dad4c7827a60c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"1cdb8f094b969dcc183745dc88404e2d8fcf2a858c6e7cc2441011476573238e"],"options":{"allowSyntheticDefaultImports":true,"declaration":true,"esModuleInterop":false,"experimentalDecorators":true,"importHelpers":true,"inlineSources":true,"module":99,"noEmitOnError":true,"outDir":"./dist","rootDir":"./src","sourceMap":true,"strict":true,"target":5},"fileIdsList":[[111],[50,51,111],[59,111],[56,58,111],[68,111],[71,111],[72,77,111],[73,83,84,91,100,110,111],[73,74,83,91,111],[75,111],[76,77,84,92,111],[77,100,107,111],[78,80,83,91,111],[79,111],[80,81,111],[82,83,111],[83,111],[83,84,85,100,110,111],[83,84,85,100,111],[86,91,100,110,111],[83,84,86,87,91,100,107,110,111],[86,88,100,107,110,111],[68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104,105,106,107,108,109,110,111,112,113,114,115,116,117],[83,89,111],[90,110,111],[80,83,91,100,111],[92,111],[93,111],[71,94,111],[95,109,111,115],[96,111],[97,111],[83,98,111],[98,99,111,113],[83,100,101,102,111],[100,102,111],[100,101,111],[103,111],[104,111],[83,105,106,111],[105,106,111],[77,91,107,111],[108,111],[91,109,111],[72,86,97,110,111],[77,111],[100,111,112],[111,113],[111,114],[72,77,83,85,94,100,110,111,113,115],[100,111,116],[53,111],[52,56,111],[56,111],[54,55,111],[52,56,57,111],[41,42,111],[41,42,44,111],[41,61,111],[41,42,58,60,111],[41,42,46,111],[41,46,47,48,111],[41,42,47,111],[41,111],[40,41,111],[41,65,66,111]],"referencedMap":[[50,1],[51,1],[52,2],[60,3],[59,4],[68,5],[69,5],[71,6],[72,7],[73,8],[74,9],[75,10],[76,11],[77,12],[78,13],[79,14],[80,15],[81,15],[82,16],[83,17],[84,18],[85,19],[70,1],[117,1],[86,20],[87,21],[88,22],[118,23],[89,24],[90,25],[91,26],[92,27],[93,28],[94,29],[95,30],[96,31],[97,32],[98,33],[99,34],[100,35],[102,36],[101,37],[103,38],[104,39],[105,40],[106,41],[107,42],[108,43],[109,44],[110,45],[111,46],[112,47],[113,48],[114,49],[115,50],[116,51],[54,52],[53,1],[57,53],[55,54],[56,55],[58,56],[41,1],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[38,1],[34,1],[35,1],[36,1],[37,1],[1,1],[39,1],[40,1],[42,1],[43,57],[45,58],[62,59],[61,60],[47,61],[49,62],[46,63],[44,64],[48,57],[63,65],[64,65],[67,66],[65,65],[66,65]],"exportedModulesMap":[[50,1],[51,1],[52,2],[60,3],[59,4],[68,5],[69,5],[71,6],[72,7],[73,8],[74,9],[75,10],[76,11],[77,12],[78,13],[79,14],[80,15],[81,15],[82,16],[83,17],[84,18],[85,19],[70,1],[117,1],[86,20],[87,21],[88,22],[118,23],[89,24],[90,25],[91,26],[92,27],[93,28],[94,29],[95,30],[96,31],[97,32],[98,33],[99,34],[100,35],[102,36],[101,37],[103,38],[104,39],[105,40],[106,41],[107,42],[108,43],[109,44],[110,45],[111,46],[112,47],[113,48],[114,49],[115,50],[116,51],[54,52],[53,1],[57,53],[55,54],[56,55],[58,56],[41,1],[8,1],[10,1],[9,1],[2,1],[11,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[3,1],[4,1],[22,1],[19,1],[20,1],[21,1],[23,1],[24,1],[25,1],[5,1],[26,1],[27,1],[28,1],[29,1],[6,1],[30,1],[31,1],[32,1],[33,1],[7,1],[38,1],[34,1],[35,1],[36,1],[37,1],[1,1],[39,1],[40,1],[42,1],[43,57],[45,58],[62,59],[61,60],[47,61],[49,62],[46,63],[44,64],[48,57],[63,65],[64,65],[67,66],[65,65],[66,65]],"semanticDiagnosticsPerFile":[50,51,52,60,59,68,69,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,70,117,86,87,88,118,89,90,91,92,93,94,95,96,97,98,99,100,102,101,103,104,105,106,107,108,109,110,111,112,113,114,115,116,54,53,57,55,56,58,41,8,10,9,2,11,12,13,14,15,16,17,18,3,4,22,19,20,21,23,24,25,5,26,27,28,29,6,30,31,32,33,7,38,34,35,36,37,1,39,40,42,43,45,62,61,47,49,46,44,48,63,64,67,65,66]},"version":"4.5.2"}
|