@openreplay/tracker 14.0.10-beta.1 → 14.0.10
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/{cjs → dist/cjs}/index.js +27 -49
- package/dist/cjs/index.js.map +1 -0
- package/{cjs → dist/cjs/main}/app/index.d.ts +38 -6
- package/{lib → dist/cjs/main}/app/messages.gen.d.ts +2 -2
- package/{lib/app/nodes.d.ts → dist/cjs/main/app/nodes/index.d.ts} +15 -7
- package/dist/cjs/main/app/nodes/maintainer.d.ts +28 -0
- package/{cjs → dist/cjs/main}/app/observer/iframe_observer.d.ts +1 -1
- package/{lib → dist/cjs/main}/app/observer/iframe_offsets.d.ts +1 -1
- package/{lib → dist/cjs/main}/app/observer/observer.d.ts +6 -0
- package/{lib → dist/cjs/main}/app/observer/top_observer.d.ts +6 -2
- package/{cjs → dist/cjs/main}/app/sanitizer.d.ts +5 -2
- package/{cjs → dist/cjs/main}/app/session.d.ts +6 -3
- package/{lib → dist/cjs/main}/index.d.ts +2 -2
- package/{lib → dist/cjs/main}/modules/attributeSender.d.ts +5 -2
- package/{cjs → dist/cjs/main}/modules/conditionsManager.d.ts +1 -1
- package/{cjs → dist/cjs/main}/modules/tagWatcher.d.ts +8 -4
- package/{lib → dist/cjs/main}/modules/userTesting/SignalManager.d.ts +2 -2
- package/{lib → dist/cjs/main}/utils.d.ts +4 -3
- package/dist/lib/index.js +9323 -0
- package/dist/lib/index.js.map +1 -0
- package/{lib → dist/lib/main}/app/index.d.ts +38 -6
- package/{cjs → dist/lib/main}/app/messages.gen.d.ts +2 -2
- package/{cjs/app/nodes.d.ts → dist/lib/main/app/nodes/index.d.ts} +15 -7
- package/dist/lib/main/app/nodes/maintainer.d.ts +28 -0
- package/{lib → dist/lib/main}/app/observer/iframe_observer.d.ts +1 -1
- package/{cjs → dist/lib/main}/app/observer/iframe_offsets.d.ts +1 -1
- package/{cjs → dist/lib/main}/app/observer/observer.d.ts +6 -0
- package/{cjs → dist/lib/main}/app/observer/top_observer.d.ts +6 -2
- package/{lib → dist/lib/main}/app/sanitizer.d.ts +5 -2
- package/{lib → dist/lib/main}/app/session.d.ts +6 -3
- package/{cjs → dist/lib/main}/index.d.ts +2 -2
- package/{cjs → dist/lib/main}/modules/attributeSender.d.ts +5 -2
- package/{lib → dist/lib/main}/modules/conditionsManager.d.ts +1 -1
- package/{lib → dist/lib/main}/modules/tagWatcher.d.ts +8 -4
- package/{cjs → dist/lib/main}/modules/userTesting/SignalManager.d.ts +2 -2
- package/{cjs → dist/lib/main}/utils.d.ts +4 -3
- package/package.json +29 -10
- package/.eslintignore +0 -11
- package/.nvmrc +0 -1
- package/.prettierignore +0 -1
- package/CHANGELOG.md +0 -297
- package/bun.lockb +0 -0
- package/cjs/app/canvas.js +0 -204
- package/cjs/app/guards.js +0 -37
- package/cjs/app/index.js +0 -1366
- package/cjs/app/logger.js +0 -37
- package/cjs/app/messages.gen.js +0 -702
- package/cjs/app/nodes.js +0 -110
- package/cjs/app/observer/iframe_observer.js +0 -35
- package/cjs/app/observer/iframe_offsets.js +0 -56
- package/cjs/app/observer/observer.js +0 -352
- package/cjs/app/observer/shadow_root_observer.js +0 -24
- package/cjs/app/observer/top_observer.js +0 -134
- package/cjs/app/sanitizer.js +0 -82
- package/cjs/app/session.js +0 -140
- package/cjs/app/ticker.js +0 -48
- package/cjs/common/interaction.js +0 -2
- package/cjs/common/messages.gen.js +0 -4
- package/cjs/modules/attributeSender.js +0 -51
- package/cjs/modules/axiosSpy.js +0 -122
- package/cjs/modules/conditionsManager.js +0 -343
- package/cjs/modules/connection.js +0 -15
- package/cjs/modules/console.js +0 -127
- package/cjs/modules/constructedStyleSheets.js +0 -138
- package/cjs/modules/cssrules.js +0 -99
- package/cjs/modules/exception.js +0 -85
- package/cjs/modules/featureFlags.js +0 -89
- package/cjs/modules/focus.js +0 -45
- package/cjs/modules/fonts.js +0 -57
- package/cjs/modules/img.js +0 -110
- package/cjs/modules/input.js +0 -203
- package/cjs/modules/mouse.js +0 -195
- package/cjs/modules/network.js +0 -244
- package/cjs/modules/performance.js +0 -53
- package/cjs/modules/scroll.js +0 -84
- package/cjs/modules/selection.js +0 -37
- package/cjs/modules/tabs.js +0 -13
- package/cjs/modules/tagWatcher.js +0 -76
- package/cjs/modules/timing.js +0 -173
- package/cjs/modules/userTesting/SignalManager.js +0 -83
- package/cjs/modules/userTesting/dnd.js +0 -40
- package/cjs/modules/userTesting/index.js +0 -464
- package/cjs/modules/userTesting/recorder.js +0 -101
- package/cjs/modules/userTesting/styles.js +0 -266
- package/cjs/modules/userTesting/utils.js +0 -87
- package/cjs/modules/viewport.js +0 -43
- package/cjs/package.json +0 -1
- package/cjs/utils.js +0 -230
- package/coverage/clover.xml +0 -4304
- package/coverage/coverage-final.json +0 -55
- package/coverage/lcov-report/base.css +0 -224
- package/coverage/lcov-report/block-navigation.js +0 -87
- package/coverage/lcov-report/favicon.png +0 -0
- package/coverage/lcov-report/index.html +0 -206
- package/coverage/lcov-report/main/app/canvas.ts.html +0 -712
- package/coverage/lcov-report/main/app/guards.ts.html +0 -232
- package/coverage/lcov-report/main/app/index.html +0 -236
- package/coverage/lcov-report/main/app/index.ts.html +0 -3955
- package/coverage/lcov-report/main/app/logger.ts.html +0 -211
- package/coverage/lcov-report/main/app/messages.gen.ts.html +0 -3034
- package/coverage/lcov-report/main/app/nodes.ts.html +0 -406
- package/coverage/lcov-report/main/app/observer/iframe_observer.ts.html +0 -148
- package/coverage/lcov-report/main/app/observer/iframe_offsets.ts.html +0 -289
- package/coverage/lcov-report/main/app/observer/index.html +0 -161
- package/coverage/lcov-report/main/app/observer/shadow_root_observer.ts.html +0 -142
- package/coverage/lcov-report/main/app/observer/top_observer.ts.html +0 -541
- package/coverage/lcov-report/main/app/sanitizer.ts.html +0 -403
- package/coverage/lcov-report/main/app/session.ts.html +0 -622
- package/coverage/lcov-report/main/app/ticker.ts.html +0 -250
- package/coverage/lcov-report/main/index.html +0 -131
- package/coverage/lcov-report/main/index.ts.html +0 -1597
- package/coverage/lcov-report/main/modules/Network/beaconProxy.ts.html +0 -400
- package/coverage/lcov-report/main/modules/Network/fetchProxy.ts.html +0 -1075
- package/coverage/lcov-report/main/modules/Network/index.html +0 -191
- package/coverage/lcov-report/main/modules/Network/index.ts.html +0 -244
- package/coverage/lcov-report/main/modules/Network/networkMessage.ts.html +0 -400
- package/coverage/lcov-report/main/modules/Network/utils.ts.html +0 -709
- package/coverage/lcov-report/main/modules/Network/xhrProxy.ts.html +0 -877
- package/coverage/lcov-report/main/modules/attributeSender.ts.html +0 -241
- package/coverage/lcov-report/main/modules/axiosSpy.ts.html +0 -709
- package/coverage/lcov-report/main/modules/conditionsManager.ts.html +0 -1381
- package/coverage/lcov-report/main/modules/connection.ts.html +0 -160
- package/coverage/lcov-report/main/modules/console.ts.html +0 -541
- package/coverage/lcov-report/main/modules/constructedStyleSheets.ts.html +0 -571
- package/coverage/lcov-report/main/modules/cssrules.ts.html +0 -418
- package/coverage/lcov-report/main/modules/exception.ts.html +0 -385
- package/coverage/lcov-report/main/modules/featureFlags.ts.html +0 -415
- package/coverage/lcov-report/main/modules/focus.ts.html +0 -220
- package/coverage/lcov-report/main/modules/fonts.ts.html +0 -289
- package/coverage/lcov-report/main/modules/img.ts.html +0 -436
- package/coverage/lcov-report/main/modules/index.html +0 -431
- package/coverage/lcov-report/main/modules/input.ts.html +0 -826
- package/coverage/lcov-report/main/modules/mouse.ts.html +0 -826
- package/coverage/lcov-report/main/modules/network.ts.html +0 -1123
- package/coverage/lcov-report/main/modules/performance.ts.html +0 -367
- package/coverage/lcov-report/main/modules/scroll.ts.html +0 -364
- package/coverage/lcov-report/main/modules/selection.ts.html +0 -202
- package/coverage/lcov-report/main/modules/tabs.ts.html +0 -124
- package/coverage/lcov-report/main/modules/tagWatcher.ts.html +0 -337
- package/coverage/lcov-report/main/modules/timing.ts.html +0 -877
- package/coverage/lcov-report/main/modules/userTesting/SignalManager.ts.html +0 -370
- package/coverage/lcov-report/main/modules/userTesting/dnd.ts.html +0 -220
- package/coverage/lcov-report/main/modules/userTesting/index.html +0 -191
- package/coverage/lcov-report/main/modules/userTesting/index.ts.html +0 -1909
- package/coverage/lcov-report/main/modules/userTesting/recorder.ts.html +0 -430
- package/coverage/lcov-report/main/modules/userTesting/styles.ts.html +0 -937
- package/coverage/lcov-report/main/modules/userTesting/utils.ts.html +0 -364
- package/coverage/lcov-report/main/modules/viewport.ts.html +0 -250
- package/coverage/lcov-report/main/utils.ts.html +0 -814
- package/coverage/lcov-report/prettify.css +0 -1
- package/coverage/lcov-report/prettify.js +0 -2
- package/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/coverage/lcov-report/sorter.js +0 -196
- package/coverage/lcov-report/webworker/BatchWriter.ts.html +0 -499
- package/coverage/lcov-report/webworker/MessageEncoder.gen.ts.html +0 -1021
- package/coverage/lcov-report/webworker/PrimitiveEncoder.ts.html +0 -436
- package/coverage/lcov-report/webworker/QueueSender.ts.html +0 -547
- package/coverage/lcov-report/webworker/index.html +0 -176
- package/coverage/lcov-report/webworker/index.ts.html +0 -667
- package/coverage/lcov.info +0 -8425
- package/jest.config.js +0 -13
- package/lib/app/canvas.js +0 -202
- package/lib/app/guards.js +0 -26
- package/lib/app/index.js +0 -1336
- package/lib/app/logger.js +0 -33
- package/lib/app/messages.gen.js +0 -622
- package/lib/app/nodes.js +0 -107
- package/lib/app/observer/iframe_observer.js +0 -29
- package/lib/app/observer/iframe_offsets.js +0 -53
- package/lib/app/observer/observer.js +0 -349
- package/lib/app/observer/shadow_root_observer.js +0 -18
- package/lib/app/observer/top_observer.js +0 -128
- package/lib/app/sanitizer.js +0 -77
- package/lib/app/session.js +0 -137
- package/lib/app/ticker.js +0 -45
- package/lib/common/interaction.js +0 -1
- package/lib/common/messages.gen.js +0 -3
- package/lib/common/tsconfig.tsbuildinfo +0 -1
- package/lib/index.js +0 -423
- package/lib/modules/attributeSender.js +0 -46
- package/lib/modules/axiosSpy.js +0 -119
- package/lib/modules/conditionsManager.js +0 -340
- package/lib/modules/connection.js +0 -12
- package/lib/modules/console.js +0 -124
- package/lib/modules/constructedStyleSheets.js +0 -133
- package/lib/modules/cssrules.js +0 -97
- package/lib/modules/exception.js +0 -76
- package/lib/modules/featureFlags.js +0 -86
- package/lib/modules/focus.js +0 -42
- package/lib/modules/fonts.js +0 -54
- package/lib/modules/img.js +0 -107
- package/lib/modules/input.js +0 -198
- package/lib/modules/mouse.js +0 -192
- package/lib/modules/network.js +0 -238
- package/lib/modules/performance.js +0 -49
- package/lib/modules/scroll.js +0 -81
- package/lib/modules/selection.js +0 -35
- package/lib/modules/tabs.js +0 -10
- package/lib/modules/tagWatcher.js +0 -73
- package/lib/modules/timing.js +0 -170
- package/lib/modules/userTesting/SignalManager.js +0 -80
- package/lib/modules/userTesting/dnd.js +0 -37
- package/lib/modules/userTesting/index.js +0 -435
- package/lib/modules/userTesting/recorder.js +0 -97
- package/lib/modules/userTesting/styles.js +0 -263
- package/lib/modules/userTesting/utils.js +0 -79
- package/lib/modules/viewport.js +0 -40
- package/lib/utils.js +0 -211
- package/rollup.config.js +0 -12
- package/scripts/checkver.cjs +0 -7
- package/tsconfig-base.json +0 -16
- /package/{cjs → dist/cjs}/common/interaction.d.ts +0 -0
- /package/{cjs → dist/cjs}/common/messages.gen.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/app/canvas.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/app/guards.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/app/logger.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/app/observer/shadow_root_observer.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/app/ticker.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/axiosSpy.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/connection.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/console.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/constructedStyleSheets.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/cssrules.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/exception.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/featureFlags.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/focus.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/fonts.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/img.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/input.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/mouse.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/network.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/performance.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/scroll.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/selection.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/tabs.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/timing.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/userTesting/dnd.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/userTesting/index.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/userTesting/recorder.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/userTesting/styles.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/userTesting/utils.d.ts +0 -0
- /package/{cjs → dist/cjs/main}/modules/viewport.d.ts +0 -0
- /package/{lib → dist/lib}/common/interaction.d.ts +0 -0
- /package/{lib → dist/lib}/common/messages.gen.d.ts +0 -0
- /package/{lib → dist/lib/main}/app/canvas.d.ts +0 -0
- /package/{lib → dist/lib/main}/app/guards.d.ts +0 -0
- /package/{lib → dist/lib/main}/app/logger.d.ts +0 -0
- /package/{lib → dist/lib/main}/app/observer/shadow_root_observer.d.ts +0 -0
- /package/{lib → dist/lib/main}/app/ticker.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/axiosSpy.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/connection.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/console.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/constructedStyleSheets.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/cssrules.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/exception.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/featureFlags.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/focus.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/fonts.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/img.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/input.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/mouse.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/network.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/performance.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/scroll.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/selection.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/tabs.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/timing.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/userTesting/dnd.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/userTesting/index.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/userTesting/recorder.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/userTesting/styles.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/userTesting/utils.d.ts +0 -0
- /package/{lib → dist/lib/main}/modules/viewport.d.ts +0 -0
|
@@ -1,1909 +0,0 @@
|
|
|
1
|
-
|
|
2
|
-
<!doctype html>
|
|
3
|
-
<html lang="en">
|
|
4
|
-
|
|
5
|
-
<head>
|
|
6
|
-
<title>Code coverage report for main/modules/userTesting/index.ts</title>
|
|
7
|
-
<meta charset="utf-8" />
|
|
8
|
-
<link rel="stylesheet" href="../../../prettify.css" />
|
|
9
|
-
<link rel="stylesheet" href="../../../base.css" />
|
|
10
|
-
<link rel="shortcut icon" type="image/x-icon" href="../../../favicon.png" />
|
|
11
|
-
<meta name="viewport" content="width=device-width, initial-scale=1" />
|
|
12
|
-
<style type='text/css'>
|
|
13
|
-
.coverage-summary .sorter {
|
|
14
|
-
background-image: url(../../../sort-arrow-sprite.png);
|
|
15
|
-
}
|
|
16
|
-
</style>
|
|
17
|
-
</head>
|
|
18
|
-
|
|
19
|
-
<body>
|
|
20
|
-
<div class='wrapper'>
|
|
21
|
-
<div class='pad1'>
|
|
22
|
-
<h1><a href="../../../index.html">All files</a> / <a href="index.html">main/modules/userTesting</a> index.ts</h1>
|
|
23
|
-
<div class='clearfix'>
|
|
24
|
-
|
|
25
|
-
<div class='fl pad1y space-right2'>
|
|
26
|
-
<span class="strong">0% </span>
|
|
27
|
-
<span class="quiet">Statements</span>
|
|
28
|
-
<span class='fraction'>0/291</span>
|
|
29
|
-
</div>
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
<div class='fl pad1y space-right2'>
|
|
33
|
-
<span class="strong">0% </span>
|
|
34
|
-
<span class="quiet">Branches</span>
|
|
35
|
-
<span class='fraction'>0/148</span>
|
|
36
|
-
</div>
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
<div class='fl pad1y space-right2'>
|
|
40
|
-
<span class="strong">0% </span>
|
|
41
|
-
<span class="quiet">Functions</span>
|
|
42
|
-
<span class='fraction'>0/45</span>
|
|
43
|
-
</div>
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
<div class='fl pad1y space-right2'>
|
|
47
|
-
<span class="strong">0% </span>
|
|
48
|
-
<span class="quiet">Lines</span>
|
|
49
|
-
<span class='fraction'>0/284</span>
|
|
50
|
-
</div>
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
</div>
|
|
54
|
-
<p class="quiet">
|
|
55
|
-
Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
|
|
56
|
-
</p>
|
|
57
|
-
<template id="filterTemplate">
|
|
58
|
-
<div class="quiet">
|
|
59
|
-
Filter:
|
|
60
|
-
<input oninput="onInput()" type="search" id="fileSearch">
|
|
61
|
-
</div>
|
|
62
|
-
</template>
|
|
63
|
-
</div>
|
|
64
|
-
<div class='status-line low'></div>
|
|
65
|
-
<pre><table class="coverage">
|
|
66
|
-
<tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
|
|
67
|
-
<a name='L2'></a><a href='#L2'>2</a>
|
|
68
|
-
<a name='L3'></a><a href='#L3'>3</a>
|
|
69
|
-
<a name='L4'></a><a href='#L4'>4</a>
|
|
70
|
-
<a name='L5'></a><a href='#L5'>5</a>
|
|
71
|
-
<a name='L6'></a><a href='#L6'>6</a>
|
|
72
|
-
<a name='L7'></a><a href='#L7'>7</a>
|
|
73
|
-
<a name='L8'></a><a href='#L8'>8</a>
|
|
74
|
-
<a name='L9'></a><a href='#L9'>9</a>
|
|
75
|
-
<a name='L10'></a><a href='#L10'>10</a>
|
|
76
|
-
<a name='L11'></a><a href='#L11'>11</a>
|
|
77
|
-
<a name='L12'></a><a href='#L12'>12</a>
|
|
78
|
-
<a name='L13'></a><a href='#L13'>13</a>
|
|
79
|
-
<a name='L14'></a><a href='#L14'>14</a>
|
|
80
|
-
<a name='L15'></a><a href='#L15'>15</a>
|
|
81
|
-
<a name='L16'></a><a href='#L16'>16</a>
|
|
82
|
-
<a name='L17'></a><a href='#L17'>17</a>
|
|
83
|
-
<a name='L18'></a><a href='#L18'>18</a>
|
|
84
|
-
<a name='L19'></a><a href='#L19'>19</a>
|
|
85
|
-
<a name='L20'></a><a href='#L20'>20</a>
|
|
86
|
-
<a name='L21'></a><a href='#L21'>21</a>
|
|
87
|
-
<a name='L22'></a><a href='#L22'>22</a>
|
|
88
|
-
<a name='L23'></a><a href='#L23'>23</a>
|
|
89
|
-
<a name='L24'></a><a href='#L24'>24</a>
|
|
90
|
-
<a name='L25'></a><a href='#L25'>25</a>
|
|
91
|
-
<a name='L26'></a><a href='#L26'>26</a>
|
|
92
|
-
<a name='L27'></a><a href='#L27'>27</a>
|
|
93
|
-
<a name='L28'></a><a href='#L28'>28</a>
|
|
94
|
-
<a name='L29'></a><a href='#L29'>29</a>
|
|
95
|
-
<a name='L30'></a><a href='#L30'>30</a>
|
|
96
|
-
<a name='L31'></a><a href='#L31'>31</a>
|
|
97
|
-
<a name='L32'></a><a href='#L32'>32</a>
|
|
98
|
-
<a name='L33'></a><a href='#L33'>33</a>
|
|
99
|
-
<a name='L34'></a><a href='#L34'>34</a>
|
|
100
|
-
<a name='L35'></a><a href='#L35'>35</a>
|
|
101
|
-
<a name='L36'></a><a href='#L36'>36</a>
|
|
102
|
-
<a name='L37'></a><a href='#L37'>37</a>
|
|
103
|
-
<a name='L38'></a><a href='#L38'>38</a>
|
|
104
|
-
<a name='L39'></a><a href='#L39'>39</a>
|
|
105
|
-
<a name='L40'></a><a href='#L40'>40</a>
|
|
106
|
-
<a name='L41'></a><a href='#L41'>41</a>
|
|
107
|
-
<a name='L42'></a><a href='#L42'>42</a>
|
|
108
|
-
<a name='L43'></a><a href='#L43'>43</a>
|
|
109
|
-
<a name='L44'></a><a href='#L44'>44</a>
|
|
110
|
-
<a name='L45'></a><a href='#L45'>45</a>
|
|
111
|
-
<a name='L46'></a><a href='#L46'>46</a>
|
|
112
|
-
<a name='L47'></a><a href='#L47'>47</a>
|
|
113
|
-
<a name='L48'></a><a href='#L48'>48</a>
|
|
114
|
-
<a name='L49'></a><a href='#L49'>49</a>
|
|
115
|
-
<a name='L50'></a><a href='#L50'>50</a>
|
|
116
|
-
<a name='L51'></a><a href='#L51'>51</a>
|
|
117
|
-
<a name='L52'></a><a href='#L52'>52</a>
|
|
118
|
-
<a name='L53'></a><a href='#L53'>53</a>
|
|
119
|
-
<a name='L54'></a><a href='#L54'>54</a>
|
|
120
|
-
<a name='L55'></a><a href='#L55'>55</a>
|
|
121
|
-
<a name='L56'></a><a href='#L56'>56</a>
|
|
122
|
-
<a name='L57'></a><a href='#L57'>57</a>
|
|
123
|
-
<a name='L58'></a><a href='#L58'>58</a>
|
|
124
|
-
<a name='L59'></a><a href='#L59'>59</a>
|
|
125
|
-
<a name='L60'></a><a href='#L60'>60</a>
|
|
126
|
-
<a name='L61'></a><a href='#L61'>61</a>
|
|
127
|
-
<a name='L62'></a><a href='#L62'>62</a>
|
|
128
|
-
<a name='L63'></a><a href='#L63'>63</a>
|
|
129
|
-
<a name='L64'></a><a href='#L64'>64</a>
|
|
130
|
-
<a name='L65'></a><a href='#L65'>65</a>
|
|
131
|
-
<a name='L66'></a><a href='#L66'>66</a>
|
|
132
|
-
<a name='L67'></a><a href='#L67'>67</a>
|
|
133
|
-
<a name='L68'></a><a href='#L68'>68</a>
|
|
134
|
-
<a name='L69'></a><a href='#L69'>69</a>
|
|
135
|
-
<a name='L70'></a><a href='#L70'>70</a>
|
|
136
|
-
<a name='L71'></a><a href='#L71'>71</a>
|
|
137
|
-
<a name='L72'></a><a href='#L72'>72</a>
|
|
138
|
-
<a name='L73'></a><a href='#L73'>73</a>
|
|
139
|
-
<a name='L74'></a><a href='#L74'>74</a>
|
|
140
|
-
<a name='L75'></a><a href='#L75'>75</a>
|
|
141
|
-
<a name='L76'></a><a href='#L76'>76</a>
|
|
142
|
-
<a name='L77'></a><a href='#L77'>77</a>
|
|
143
|
-
<a name='L78'></a><a href='#L78'>78</a>
|
|
144
|
-
<a name='L79'></a><a href='#L79'>79</a>
|
|
145
|
-
<a name='L80'></a><a href='#L80'>80</a>
|
|
146
|
-
<a name='L81'></a><a href='#L81'>81</a>
|
|
147
|
-
<a name='L82'></a><a href='#L82'>82</a>
|
|
148
|
-
<a name='L83'></a><a href='#L83'>83</a>
|
|
149
|
-
<a name='L84'></a><a href='#L84'>84</a>
|
|
150
|
-
<a name='L85'></a><a href='#L85'>85</a>
|
|
151
|
-
<a name='L86'></a><a href='#L86'>86</a>
|
|
152
|
-
<a name='L87'></a><a href='#L87'>87</a>
|
|
153
|
-
<a name='L88'></a><a href='#L88'>88</a>
|
|
154
|
-
<a name='L89'></a><a href='#L89'>89</a>
|
|
155
|
-
<a name='L90'></a><a href='#L90'>90</a>
|
|
156
|
-
<a name='L91'></a><a href='#L91'>91</a>
|
|
157
|
-
<a name='L92'></a><a href='#L92'>92</a>
|
|
158
|
-
<a name='L93'></a><a href='#L93'>93</a>
|
|
159
|
-
<a name='L94'></a><a href='#L94'>94</a>
|
|
160
|
-
<a name='L95'></a><a href='#L95'>95</a>
|
|
161
|
-
<a name='L96'></a><a href='#L96'>96</a>
|
|
162
|
-
<a name='L97'></a><a href='#L97'>97</a>
|
|
163
|
-
<a name='L98'></a><a href='#L98'>98</a>
|
|
164
|
-
<a name='L99'></a><a href='#L99'>99</a>
|
|
165
|
-
<a name='L100'></a><a href='#L100'>100</a>
|
|
166
|
-
<a name='L101'></a><a href='#L101'>101</a>
|
|
167
|
-
<a name='L102'></a><a href='#L102'>102</a>
|
|
168
|
-
<a name='L103'></a><a href='#L103'>103</a>
|
|
169
|
-
<a name='L104'></a><a href='#L104'>104</a>
|
|
170
|
-
<a name='L105'></a><a href='#L105'>105</a>
|
|
171
|
-
<a name='L106'></a><a href='#L106'>106</a>
|
|
172
|
-
<a name='L107'></a><a href='#L107'>107</a>
|
|
173
|
-
<a name='L108'></a><a href='#L108'>108</a>
|
|
174
|
-
<a name='L109'></a><a href='#L109'>109</a>
|
|
175
|
-
<a name='L110'></a><a href='#L110'>110</a>
|
|
176
|
-
<a name='L111'></a><a href='#L111'>111</a>
|
|
177
|
-
<a name='L112'></a><a href='#L112'>112</a>
|
|
178
|
-
<a name='L113'></a><a href='#L113'>113</a>
|
|
179
|
-
<a name='L114'></a><a href='#L114'>114</a>
|
|
180
|
-
<a name='L115'></a><a href='#L115'>115</a>
|
|
181
|
-
<a name='L116'></a><a href='#L116'>116</a>
|
|
182
|
-
<a name='L117'></a><a href='#L117'>117</a>
|
|
183
|
-
<a name='L118'></a><a href='#L118'>118</a>
|
|
184
|
-
<a name='L119'></a><a href='#L119'>119</a>
|
|
185
|
-
<a name='L120'></a><a href='#L120'>120</a>
|
|
186
|
-
<a name='L121'></a><a href='#L121'>121</a>
|
|
187
|
-
<a name='L122'></a><a href='#L122'>122</a>
|
|
188
|
-
<a name='L123'></a><a href='#L123'>123</a>
|
|
189
|
-
<a name='L124'></a><a href='#L124'>124</a>
|
|
190
|
-
<a name='L125'></a><a href='#L125'>125</a>
|
|
191
|
-
<a name='L126'></a><a href='#L126'>126</a>
|
|
192
|
-
<a name='L127'></a><a href='#L127'>127</a>
|
|
193
|
-
<a name='L128'></a><a href='#L128'>128</a>
|
|
194
|
-
<a name='L129'></a><a href='#L129'>129</a>
|
|
195
|
-
<a name='L130'></a><a href='#L130'>130</a>
|
|
196
|
-
<a name='L131'></a><a href='#L131'>131</a>
|
|
197
|
-
<a name='L132'></a><a href='#L132'>132</a>
|
|
198
|
-
<a name='L133'></a><a href='#L133'>133</a>
|
|
199
|
-
<a name='L134'></a><a href='#L134'>134</a>
|
|
200
|
-
<a name='L135'></a><a href='#L135'>135</a>
|
|
201
|
-
<a name='L136'></a><a href='#L136'>136</a>
|
|
202
|
-
<a name='L137'></a><a href='#L137'>137</a>
|
|
203
|
-
<a name='L138'></a><a href='#L138'>138</a>
|
|
204
|
-
<a name='L139'></a><a href='#L139'>139</a>
|
|
205
|
-
<a name='L140'></a><a href='#L140'>140</a>
|
|
206
|
-
<a name='L141'></a><a href='#L141'>141</a>
|
|
207
|
-
<a name='L142'></a><a href='#L142'>142</a>
|
|
208
|
-
<a name='L143'></a><a href='#L143'>143</a>
|
|
209
|
-
<a name='L144'></a><a href='#L144'>144</a>
|
|
210
|
-
<a name='L145'></a><a href='#L145'>145</a>
|
|
211
|
-
<a name='L146'></a><a href='#L146'>146</a>
|
|
212
|
-
<a name='L147'></a><a href='#L147'>147</a>
|
|
213
|
-
<a name='L148'></a><a href='#L148'>148</a>
|
|
214
|
-
<a name='L149'></a><a href='#L149'>149</a>
|
|
215
|
-
<a name='L150'></a><a href='#L150'>150</a>
|
|
216
|
-
<a name='L151'></a><a href='#L151'>151</a>
|
|
217
|
-
<a name='L152'></a><a href='#L152'>152</a>
|
|
218
|
-
<a name='L153'></a><a href='#L153'>153</a>
|
|
219
|
-
<a name='L154'></a><a href='#L154'>154</a>
|
|
220
|
-
<a name='L155'></a><a href='#L155'>155</a>
|
|
221
|
-
<a name='L156'></a><a href='#L156'>156</a>
|
|
222
|
-
<a name='L157'></a><a href='#L157'>157</a>
|
|
223
|
-
<a name='L158'></a><a href='#L158'>158</a>
|
|
224
|
-
<a name='L159'></a><a href='#L159'>159</a>
|
|
225
|
-
<a name='L160'></a><a href='#L160'>160</a>
|
|
226
|
-
<a name='L161'></a><a href='#L161'>161</a>
|
|
227
|
-
<a name='L162'></a><a href='#L162'>162</a>
|
|
228
|
-
<a name='L163'></a><a href='#L163'>163</a>
|
|
229
|
-
<a name='L164'></a><a href='#L164'>164</a>
|
|
230
|
-
<a name='L165'></a><a href='#L165'>165</a>
|
|
231
|
-
<a name='L166'></a><a href='#L166'>166</a>
|
|
232
|
-
<a name='L167'></a><a href='#L167'>167</a>
|
|
233
|
-
<a name='L168'></a><a href='#L168'>168</a>
|
|
234
|
-
<a name='L169'></a><a href='#L169'>169</a>
|
|
235
|
-
<a name='L170'></a><a href='#L170'>170</a>
|
|
236
|
-
<a name='L171'></a><a href='#L171'>171</a>
|
|
237
|
-
<a name='L172'></a><a href='#L172'>172</a>
|
|
238
|
-
<a name='L173'></a><a href='#L173'>173</a>
|
|
239
|
-
<a name='L174'></a><a href='#L174'>174</a>
|
|
240
|
-
<a name='L175'></a><a href='#L175'>175</a>
|
|
241
|
-
<a name='L176'></a><a href='#L176'>176</a>
|
|
242
|
-
<a name='L177'></a><a href='#L177'>177</a>
|
|
243
|
-
<a name='L178'></a><a href='#L178'>178</a>
|
|
244
|
-
<a name='L179'></a><a href='#L179'>179</a>
|
|
245
|
-
<a name='L180'></a><a href='#L180'>180</a>
|
|
246
|
-
<a name='L181'></a><a href='#L181'>181</a>
|
|
247
|
-
<a name='L182'></a><a href='#L182'>182</a>
|
|
248
|
-
<a name='L183'></a><a href='#L183'>183</a>
|
|
249
|
-
<a name='L184'></a><a href='#L184'>184</a>
|
|
250
|
-
<a name='L185'></a><a href='#L185'>185</a>
|
|
251
|
-
<a name='L186'></a><a href='#L186'>186</a>
|
|
252
|
-
<a name='L187'></a><a href='#L187'>187</a>
|
|
253
|
-
<a name='L188'></a><a href='#L188'>188</a>
|
|
254
|
-
<a name='L189'></a><a href='#L189'>189</a>
|
|
255
|
-
<a name='L190'></a><a href='#L190'>190</a>
|
|
256
|
-
<a name='L191'></a><a href='#L191'>191</a>
|
|
257
|
-
<a name='L192'></a><a href='#L192'>192</a>
|
|
258
|
-
<a name='L193'></a><a href='#L193'>193</a>
|
|
259
|
-
<a name='L194'></a><a href='#L194'>194</a>
|
|
260
|
-
<a name='L195'></a><a href='#L195'>195</a>
|
|
261
|
-
<a name='L196'></a><a href='#L196'>196</a>
|
|
262
|
-
<a name='L197'></a><a href='#L197'>197</a>
|
|
263
|
-
<a name='L198'></a><a href='#L198'>198</a>
|
|
264
|
-
<a name='L199'></a><a href='#L199'>199</a>
|
|
265
|
-
<a name='L200'></a><a href='#L200'>200</a>
|
|
266
|
-
<a name='L201'></a><a href='#L201'>201</a>
|
|
267
|
-
<a name='L202'></a><a href='#L202'>202</a>
|
|
268
|
-
<a name='L203'></a><a href='#L203'>203</a>
|
|
269
|
-
<a name='L204'></a><a href='#L204'>204</a>
|
|
270
|
-
<a name='L205'></a><a href='#L205'>205</a>
|
|
271
|
-
<a name='L206'></a><a href='#L206'>206</a>
|
|
272
|
-
<a name='L207'></a><a href='#L207'>207</a>
|
|
273
|
-
<a name='L208'></a><a href='#L208'>208</a>
|
|
274
|
-
<a name='L209'></a><a href='#L209'>209</a>
|
|
275
|
-
<a name='L210'></a><a href='#L210'>210</a>
|
|
276
|
-
<a name='L211'></a><a href='#L211'>211</a>
|
|
277
|
-
<a name='L212'></a><a href='#L212'>212</a>
|
|
278
|
-
<a name='L213'></a><a href='#L213'>213</a>
|
|
279
|
-
<a name='L214'></a><a href='#L214'>214</a>
|
|
280
|
-
<a name='L215'></a><a href='#L215'>215</a>
|
|
281
|
-
<a name='L216'></a><a href='#L216'>216</a>
|
|
282
|
-
<a name='L217'></a><a href='#L217'>217</a>
|
|
283
|
-
<a name='L218'></a><a href='#L218'>218</a>
|
|
284
|
-
<a name='L219'></a><a href='#L219'>219</a>
|
|
285
|
-
<a name='L220'></a><a href='#L220'>220</a>
|
|
286
|
-
<a name='L221'></a><a href='#L221'>221</a>
|
|
287
|
-
<a name='L222'></a><a href='#L222'>222</a>
|
|
288
|
-
<a name='L223'></a><a href='#L223'>223</a>
|
|
289
|
-
<a name='L224'></a><a href='#L224'>224</a>
|
|
290
|
-
<a name='L225'></a><a href='#L225'>225</a>
|
|
291
|
-
<a name='L226'></a><a href='#L226'>226</a>
|
|
292
|
-
<a name='L227'></a><a href='#L227'>227</a>
|
|
293
|
-
<a name='L228'></a><a href='#L228'>228</a>
|
|
294
|
-
<a name='L229'></a><a href='#L229'>229</a>
|
|
295
|
-
<a name='L230'></a><a href='#L230'>230</a>
|
|
296
|
-
<a name='L231'></a><a href='#L231'>231</a>
|
|
297
|
-
<a name='L232'></a><a href='#L232'>232</a>
|
|
298
|
-
<a name='L233'></a><a href='#L233'>233</a>
|
|
299
|
-
<a name='L234'></a><a href='#L234'>234</a>
|
|
300
|
-
<a name='L235'></a><a href='#L235'>235</a>
|
|
301
|
-
<a name='L236'></a><a href='#L236'>236</a>
|
|
302
|
-
<a name='L237'></a><a href='#L237'>237</a>
|
|
303
|
-
<a name='L238'></a><a href='#L238'>238</a>
|
|
304
|
-
<a name='L239'></a><a href='#L239'>239</a>
|
|
305
|
-
<a name='L240'></a><a href='#L240'>240</a>
|
|
306
|
-
<a name='L241'></a><a href='#L241'>241</a>
|
|
307
|
-
<a name='L242'></a><a href='#L242'>242</a>
|
|
308
|
-
<a name='L243'></a><a href='#L243'>243</a>
|
|
309
|
-
<a name='L244'></a><a href='#L244'>244</a>
|
|
310
|
-
<a name='L245'></a><a href='#L245'>245</a>
|
|
311
|
-
<a name='L246'></a><a href='#L246'>246</a>
|
|
312
|
-
<a name='L247'></a><a href='#L247'>247</a>
|
|
313
|
-
<a name='L248'></a><a href='#L248'>248</a>
|
|
314
|
-
<a name='L249'></a><a href='#L249'>249</a>
|
|
315
|
-
<a name='L250'></a><a href='#L250'>250</a>
|
|
316
|
-
<a name='L251'></a><a href='#L251'>251</a>
|
|
317
|
-
<a name='L252'></a><a href='#L252'>252</a>
|
|
318
|
-
<a name='L253'></a><a href='#L253'>253</a>
|
|
319
|
-
<a name='L254'></a><a href='#L254'>254</a>
|
|
320
|
-
<a name='L255'></a><a href='#L255'>255</a>
|
|
321
|
-
<a name='L256'></a><a href='#L256'>256</a>
|
|
322
|
-
<a name='L257'></a><a href='#L257'>257</a>
|
|
323
|
-
<a name='L258'></a><a href='#L258'>258</a>
|
|
324
|
-
<a name='L259'></a><a href='#L259'>259</a>
|
|
325
|
-
<a name='L260'></a><a href='#L260'>260</a>
|
|
326
|
-
<a name='L261'></a><a href='#L261'>261</a>
|
|
327
|
-
<a name='L262'></a><a href='#L262'>262</a>
|
|
328
|
-
<a name='L263'></a><a href='#L263'>263</a>
|
|
329
|
-
<a name='L264'></a><a href='#L264'>264</a>
|
|
330
|
-
<a name='L265'></a><a href='#L265'>265</a>
|
|
331
|
-
<a name='L266'></a><a href='#L266'>266</a>
|
|
332
|
-
<a name='L267'></a><a href='#L267'>267</a>
|
|
333
|
-
<a name='L268'></a><a href='#L268'>268</a>
|
|
334
|
-
<a name='L269'></a><a href='#L269'>269</a>
|
|
335
|
-
<a name='L270'></a><a href='#L270'>270</a>
|
|
336
|
-
<a name='L271'></a><a href='#L271'>271</a>
|
|
337
|
-
<a name='L272'></a><a href='#L272'>272</a>
|
|
338
|
-
<a name='L273'></a><a href='#L273'>273</a>
|
|
339
|
-
<a name='L274'></a><a href='#L274'>274</a>
|
|
340
|
-
<a name='L275'></a><a href='#L275'>275</a>
|
|
341
|
-
<a name='L276'></a><a href='#L276'>276</a>
|
|
342
|
-
<a name='L277'></a><a href='#L277'>277</a>
|
|
343
|
-
<a name='L278'></a><a href='#L278'>278</a>
|
|
344
|
-
<a name='L279'></a><a href='#L279'>279</a>
|
|
345
|
-
<a name='L280'></a><a href='#L280'>280</a>
|
|
346
|
-
<a name='L281'></a><a href='#L281'>281</a>
|
|
347
|
-
<a name='L282'></a><a href='#L282'>282</a>
|
|
348
|
-
<a name='L283'></a><a href='#L283'>283</a>
|
|
349
|
-
<a name='L284'></a><a href='#L284'>284</a>
|
|
350
|
-
<a name='L285'></a><a href='#L285'>285</a>
|
|
351
|
-
<a name='L286'></a><a href='#L286'>286</a>
|
|
352
|
-
<a name='L287'></a><a href='#L287'>287</a>
|
|
353
|
-
<a name='L288'></a><a href='#L288'>288</a>
|
|
354
|
-
<a name='L289'></a><a href='#L289'>289</a>
|
|
355
|
-
<a name='L290'></a><a href='#L290'>290</a>
|
|
356
|
-
<a name='L291'></a><a href='#L291'>291</a>
|
|
357
|
-
<a name='L292'></a><a href='#L292'>292</a>
|
|
358
|
-
<a name='L293'></a><a href='#L293'>293</a>
|
|
359
|
-
<a name='L294'></a><a href='#L294'>294</a>
|
|
360
|
-
<a name='L295'></a><a href='#L295'>295</a>
|
|
361
|
-
<a name='L296'></a><a href='#L296'>296</a>
|
|
362
|
-
<a name='L297'></a><a href='#L297'>297</a>
|
|
363
|
-
<a name='L298'></a><a href='#L298'>298</a>
|
|
364
|
-
<a name='L299'></a><a href='#L299'>299</a>
|
|
365
|
-
<a name='L300'></a><a href='#L300'>300</a>
|
|
366
|
-
<a name='L301'></a><a href='#L301'>301</a>
|
|
367
|
-
<a name='L302'></a><a href='#L302'>302</a>
|
|
368
|
-
<a name='L303'></a><a href='#L303'>303</a>
|
|
369
|
-
<a name='L304'></a><a href='#L304'>304</a>
|
|
370
|
-
<a name='L305'></a><a href='#L305'>305</a>
|
|
371
|
-
<a name='L306'></a><a href='#L306'>306</a>
|
|
372
|
-
<a name='L307'></a><a href='#L307'>307</a>
|
|
373
|
-
<a name='L308'></a><a href='#L308'>308</a>
|
|
374
|
-
<a name='L309'></a><a href='#L309'>309</a>
|
|
375
|
-
<a name='L310'></a><a href='#L310'>310</a>
|
|
376
|
-
<a name='L311'></a><a href='#L311'>311</a>
|
|
377
|
-
<a name='L312'></a><a href='#L312'>312</a>
|
|
378
|
-
<a name='L313'></a><a href='#L313'>313</a>
|
|
379
|
-
<a name='L314'></a><a href='#L314'>314</a>
|
|
380
|
-
<a name='L315'></a><a href='#L315'>315</a>
|
|
381
|
-
<a name='L316'></a><a href='#L316'>316</a>
|
|
382
|
-
<a name='L317'></a><a href='#L317'>317</a>
|
|
383
|
-
<a name='L318'></a><a href='#L318'>318</a>
|
|
384
|
-
<a name='L319'></a><a href='#L319'>319</a>
|
|
385
|
-
<a name='L320'></a><a href='#L320'>320</a>
|
|
386
|
-
<a name='L321'></a><a href='#L321'>321</a>
|
|
387
|
-
<a name='L322'></a><a href='#L322'>322</a>
|
|
388
|
-
<a name='L323'></a><a href='#L323'>323</a>
|
|
389
|
-
<a name='L324'></a><a href='#L324'>324</a>
|
|
390
|
-
<a name='L325'></a><a href='#L325'>325</a>
|
|
391
|
-
<a name='L326'></a><a href='#L326'>326</a>
|
|
392
|
-
<a name='L327'></a><a href='#L327'>327</a>
|
|
393
|
-
<a name='L328'></a><a href='#L328'>328</a>
|
|
394
|
-
<a name='L329'></a><a href='#L329'>329</a>
|
|
395
|
-
<a name='L330'></a><a href='#L330'>330</a>
|
|
396
|
-
<a name='L331'></a><a href='#L331'>331</a>
|
|
397
|
-
<a name='L332'></a><a href='#L332'>332</a>
|
|
398
|
-
<a name='L333'></a><a href='#L333'>333</a>
|
|
399
|
-
<a name='L334'></a><a href='#L334'>334</a>
|
|
400
|
-
<a name='L335'></a><a href='#L335'>335</a>
|
|
401
|
-
<a name='L336'></a><a href='#L336'>336</a>
|
|
402
|
-
<a name='L337'></a><a href='#L337'>337</a>
|
|
403
|
-
<a name='L338'></a><a href='#L338'>338</a>
|
|
404
|
-
<a name='L339'></a><a href='#L339'>339</a>
|
|
405
|
-
<a name='L340'></a><a href='#L340'>340</a>
|
|
406
|
-
<a name='L341'></a><a href='#L341'>341</a>
|
|
407
|
-
<a name='L342'></a><a href='#L342'>342</a>
|
|
408
|
-
<a name='L343'></a><a href='#L343'>343</a>
|
|
409
|
-
<a name='L344'></a><a href='#L344'>344</a>
|
|
410
|
-
<a name='L345'></a><a href='#L345'>345</a>
|
|
411
|
-
<a name='L346'></a><a href='#L346'>346</a>
|
|
412
|
-
<a name='L347'></a><a href='#L347'>347</a>
|
|
413
|
-
<a name='L348'></a><a href='#L348'>348</a>
|
|
414
|
-
<a name='L349'></a><a href='#L349'>349</a>
|
|
415
|
-
<a name='L350'></a><a href='#L350'>350</a>
|
|
416
|
-
<a name='L351'></a><a href='#L351'>351</a>
|
|
417
|
-
<a name='L352'></a><a href='#L352'>352</a>
|
|
418
|
-
<a name='L353'></a><a href='#L353'>353</a>
|
|
419
|
-
<a name='L354'></a><a href='#L354'>354</a>
|
|
420
|
-
<a name='L355'></a><a href='#L355'>355</a>
|
|
421
|
-
<a name='L356'></a><a href='#L356'>356</a>
|
|
422
|
-
<a name='L357'></a><a href='#L357'>357</a>
|
|
423
|
-
<a name='L358'></a><a href='#L358'>358</a>
|
|
424
|
-
<a name='L359'></a><a href='#L359'>359</a>
|
|
425
|
-
<a name='L360'></a><a href='#L360'>360</a>
|
|
426
|
-
<a name='L361'></a><a href='#L361'>361</a>
|
|
427
|
-
<a name='L362'></a><a href='#L362'>362</a>
|
|
428
|
-
<a name='L363'></a><a href='#L363'>363</a>
|
|
429
|
-
<a name='L364'></a><a href='#L364'>364</a>
|
|
430
|
-
<a name='L365'></a><a href='#L365'>365</a>
|
|
431
|
-
<a name='L366'></a><a href='#L366'>366</a>
|
|
432
|
-
<a name='L367'></a><a href='#L367'>367</a>
|
|
433
|
-
<a name='L368'></a><a href='#L368'>368</a>
|
|
434
|
-
<a name='L369'></a><a href='#L369'>369</a>
|
|
435
|
-
<a name='L370'></a><a href='#L370'>370</a>
|
|
436
|
-
<a name='L371'></a><a href='#L371'>371</a>
|
|
437
|
-
<a name='L372'></a><a href='#L372'>372</a>
|
|
438
|
-
<a name='L373'></a><a href='#L373'>373</a>
|
|
439
|
-
<a name='L374'></a><a href='#L374'>374</a>
|
|
440
|
-
<a name='L375'></a><a href='#L375'>375</a>
|
|
441
|
-
<a name='L376'></a><a href='#L376'>376</a>
|
|
442
|
-
<a name='L377'></a><a href='#L377'>377</a>
|
|
443
|
-
<a name='L378'></a><a href='#L378'>378</a>
|
|
444
|
-
<a name='L379'></a><a href='#L379'>379</a>
|
|
445
|
-
<a name='L380'></a><a href='#L380'>380</a>
|
|
446
|
-
<a name='L381'></a><a href='#L381'>381</a>
|
|
447
|
-
<a name='L382'></a><a href='#L382'>382</a>
|
|
448
|
-
<a name='L383'></a><a href='#L383'>383</a>
|
|
449
|
-
<a name='L384'></a><a href='#L384'>384</a>
|
|
450
|
-
<a name='L385'></a><a href='#L385'>385</a>
|
|
451
|
-
<a name='L386'></a><a href='#L386'>386</a>
|
|
452
|
-
<a name='L387'></a><a href='#L387'>387</a>
|
|
453
|
-
<a name='L388'></a><a href='#L388'>388</a>
|
|
454
|
-
<a name='L389'></a><a href='#L389'>389</a>
|
|
455
|
-
<a name='L390'></a><a href='#L390'>390</a>
|
|
456
|
-
<a name='L391'></a><a href='#L391'>391</a>
|
|
457
|
-
<a name='L392'></a><a href='#L392'>392</a>
|
|
458
|
-
<a name='L393'></a><a href='#L393'>393</a>
|
|
459
|
-
<a name='L394'></a><a href='#L394'>394</a>
|
|
460
|
-
<a name='L395'></a><a href='#L395'>395</a>
|
|
461
|
-
<a name='L396'></a><a href='#L396'>396</a>
|
|
462
|
-
<a name='L397'></a><a href='#L397'>397</a>
|
|
463
|
-
<a name='L398'></a><a href='#L398'>398</a>
|
|
464
|
-
<a name='L399'></a><a href='#L399'>399</a>
|
|
465
|
-
<a name='L400'></a><a href='#L400'>400</a>
|
|
466
|
-
<a name='L401'></a><a href='#L401'>401</a>
|
|
467
|
-
<a name='L402'></a><a href='#L402'>402</a>
|
|
468
|
-
<a name='L403'></a><a href='#L403'>403</a>
|
|
469
|
-
<a name='L404'></a><a href='#L404'>404</a>
|
|
470
|
-
<a name='L405'></a><a href='#L405'>405</a>
|
|
471
|
-
<a name='L406'></a><a href='#L406'>406</a>
|
|
472
|
-
<a name='L407'></a><a href='#L407'>407</a>
|
|
473
|
-
<a name='L408'></a><a href='#L408'>408</a>
|
|
474
|
-
<a name='L409'></a><a href='#L409'>409</a>
|
|
475
|
-
<a name='L410'></a><a href='#L410'>410</a>
|
|
476
|
-
<a name='L411'></a><a href='#L411'>411</a>
|
|
477
|
-
<a name='L412'></a><a href='#L412'>412</a>
|
|
478
|
-
<a name='L413'></a><a href='#L413'>413</a>
|
|
479
|
-
<a name='L414'></a><a href='#L414'>414</a>
|
|
480
|
-
<a name='L415'></a><a href='#L415'>415</a>
|
|
481
|
-
<a name='L416'></a><a href='#L416'>416</a>
|
|
482
|
-
<a name='L417'></a><a href='#L417'>417</a>
|
|
483
|
-
<a name='L418'></a><a href='#L418'>418</a>
|
|
484
|
-
<a name='L419'></a><a href='#L419'>419</a>
|
|
485
|
-
<a name='L420'></a><a href='#L420'>420</a>
|
|
486
|
-
<a name='L421'></a><a href='#L421'>421</a>
|
|
487
|
-
<a name='L422'></a><a href='#L422'>422</a>
|
|
488
|
-
<a name='L423'></a><a href='#L423'>423</a>
|
|
489
|
-
<a name='L424'></a><a href='#L424'>424</a>
|
|
490
|
-
<a name='L425'></a><a href='#L425'>425</a>
|
|
491
|
-
<a name='L426'></a><a href='#L426'>426</a>
|
|
492
|
-
<a name='L427'></a><a href='#L427'>427</a>
|
|
493
|
-
<a name='L428'></a><a href='#L428'>428</a>
|
|
494
|
-
<a name='L429'></a><a href='#L429'>429</a>
|
|
495
|
-
<a name='L430'></a><a href='#L430'>430</a>
|
|
496
|
-
<a name='L431'></a><a href='#L431'>431</a>
|
|
497
|
-
<a name='L432'></a><a href='#L432'>432</a>
|
|
498
|
-
<a name='L433'></a><a href='#L433'>433</a>
|
|
499
|
-
<a name='L434'></a><a href='#L434'>434</a>
|
|
500
|
-
<a name='L435'></a><a href='#L435'>435</a>
|
|
501
|
-
<a name='L436'></a><a href='#L436'>436</a>
|
|
502
|
-
<a name='L437'></a><a href='#L437'>437</a>
|
|
503
|
-
<a name='L438'></a><a href='#L438'>438</a>
|
|
504
|
-
<a name='L439'></a><a href='#L439'>439</a>
|
|
505
|
-
<a name='L440'></a><a href='#L440'>440</a>
|
|
506
|
-
<a name='L441'></a><a href='#L441'>441</a>
|
|
507
|
-
<a name='L442'></a><a href='#L442'>442</a>
|
|
508
|
-
<a name='L443'></a><a href='#L443'>443</a>
|
|
509
|
-
<a name='L444'></a><a href='#L444'>444</a>
|
|
510
|
-
<a name='L445'></a><a href='#L445'>445</a>
|
|
511
|
-
<a name='L446'></a><a href='#L446'>446</a>
|
|
512
|
-
<a name='L447'></a><a href='#L447'>447</a>
|
|
513
|
-
<a name='L448'></a><a href='#L448'>448</a>
|
|
514
|
-
<a name='L449'></a><a href='#L449'>449</a>
|
|
515
|
-
<a name='L450'></a><a href='#L450'>450</a>
|
|
516
|
-
<a name='L451'></a><a href='#L451'>451</a>
|
|
517
|
-
<a name='L452'></a><a href='#L452'>452</a>
|
|
518
|
-
<a name='L453'></a><a href='#L453'>453</a>
|
|
519
|
-
<a name='L454'></a><a href='#L454'>454</a>
|
|
520
|
-
<a name='L455'></a><a href='#L455'>455</a>
|
|
521
|
-
<a name='L456'></a><a href='#L456'>456</a>
|
|
522
|
-
<a name='L457'></a><a href='#L457'>457</a>
|
|
523
|
-
<a name='L458'></a><a href='#L458'>458</a>
|
|
524
|
-
<a name='L459'></a><a href='#L459'>459</a>
|
|
525
|
-
<a name='L460'></a><a href='#L460'>460</a>
|
|
526
|
-
<a name='L461'></a><a href='#L461'>461</a>
|
|
527
|
-
<a name='L462'></a><a href='#L462'>462</a>
|
|
528
|
-
<a name='L463'></a><a href='#L463'>463</a>
|
|
529
|
-
<a name='L464'></a><a href='#L464'>464</a>
|
|
530
|
-
<a name='L465'></a><a href='#L465'>465</a>
|
|
531
|
-
<a name='L466'></a><a href='#L466'>466</a>
|
|
532
|
-
<a name='L467'></a><a href='#L467'>467</a>
|
|
533
|
-
<a name='L468'></a><a href='#L468'>468</a>
|
|
534
|
-
<a name='L469'></a><a href='#L469'>469</a>
|
|
535
|
-
<a name='L470'></a><a href='#L470'>470</a>
|
|
536
|
-
<a name='L471'></a><a href='#L471'>471</a>
|
|
537
|
-
<a name='L472'></a><a href='#L472'>472</a>
|
|
538
|
-
<a name='L473'></a><a href='#L473'>473</a>
|
|
539
|
-
<a name='L474'></a><a href='#L474'>474</a>
|
|
540
|
-
<a name='L475'></a><a href='#L475'>475</a>
|
|
541
|
-
<a name='L476'></a><a href='#L476'>476</a>
|
|
542
|
-
<a name='L477'></a><a href='#L477'>477</a>
|
|
543
|
-
<a name='L478'></a><a href='#L478'>478</a>
|
|
544
|
-
<a name='L479'></a><a href='#L479'>479</a>
|
|
545
|
-
<a name='L480'></a><a href='#L480'>480</a>
|
|
546
|
-
<a name='L481'></a><a href='#L481'>481</a>
|
|
547
|
-
<a name='L482'></a><a href='#L482'>482</a>
|
|
548
|
-
<a name='L483'></a><a href='#L483'>483</a>
|
|
549
|
-
<a name='L484'></a><a href='#L484'>484</a>
|
|
550
|
-
<a name='L485'></a><a href='#L485'>485</a>
|
|
551
|
-
<a name='L486'></a><a href='#L486'>486</a>
|
|
552
|
-
<a name='L487'></a><a href='#L487'>487</a>
|
|
553
|
-
<a name='L488'></a><a href='#L488'>488</a>
|
|
554
|
-
<a name='L489'></a><a href='#L489'>489</a>
|
|
555
|
-
<a name='L490'></a><a href='#L490'>490</a>
|
|
556
|
-
<a name='L491'></a><a href='#L491'>491</a>
|
|
557
|
-
<a name='L492'></a><a href='#L492'>492</a>
|
|
558
|
-
<a name='L493'></a><a href='#L493'>493</a>
|
|
559
|
-
<a name='L494'></a><a href='#L494'>494</a>
|
|
560
|
-
<a name='L495'></a><a href='#L495'>495</a>
|
|
561
|
-
<a name='L496'></a><a href='#L496'>496</a>
|
|
562
|
-
<a name='L497'></a><a href='#L497'>497</a>
|
|
563
|
-
<a name='L498'></a><a href='#L498'>498</a>
|
|
564
|
-
<a name='L499'></a><a href='#L499'>499</a>
|
|
565
|
-
<a name='L500'></a><a href='#L500'>500</a>
|
|
566
|
-
<a name='L501'></a><a href='#L501'>501</a>
|
|
567
|
-
<a name='L502'></a><a href='#L502'>502</a>
|
|
568
|
-
<a name='L503'></a><a href='#L503'>503</a>
|
|
569
|
-
<a name='L504'></a><a href='#L504'>504</a>
|
|
570
|
-
<a name='L505'></a><a href='#L505'>505</a>
|
|
571
|
-
<a name='L506'></a><a href='#L506'>506</a>
|
|
572
|
-
<a name='L507'></a><a href='#L507'>507</a>
|
|
573
|
-
<a name='L508'></a><a href='#L508'>508</a>
|
|
574
|
-
<a name='L509'></a><a href='#L509'>509</a>
|
|
575
|
-
<a name='L510'></a><a href='#L510'>510</a>
|
|
576
|
-
<a name='L511'></a><a href='#L511'>511</a>
|
|
577
|
-
<a name='L512'></a><a href='#L512'>512</a>
|
|
578
|
-
<a name='L513'></a><a href='#L513'>513</a>
|
|
579
|
-
<a name='L514'></a><a href='#L514'>514</a>
|
|
580
|
-
<a name='L515'></a><a href='#L515'>515</a>
|
|
581
|
-
<a name='L516'></a><a href='#L516'>516</a>
|
|
582
|
-
<a name='L517'></a><a href='#L517'>517</a>
|
|
583
|
-
<a name='L518'></a><a href='#L518'>518</a>
|
|
584
|
-
<a name='L519'></a><a href='#L519'>519</a>
|
|
585
|
-
<a name='L520'></a><a href='#L520'>520</a>
|
|
586
|
-
<a name='L521'></a><a href='#L521'>521</a>
|
|
587
|
-
<a name='L522'></a><a href='#L522'>522</a>
|
|
588
|
-
<a name='L523'></a><a href='#L523'>523</a>
|
|
589
|
-
<a name='L524'></a><a href='#L524'>524</a>
|
|
590
|
-
<a name='L525'></a><a href='#L525'>525</a>
|
|
591
|
-
<a name='L526'></a><a href='#L526'>526</a>
|
|
592
|
-
<a name='L527'></a><a href='#L527'>527</a>
|
|
593
|
-
<a name='L528'></a><a href='#L528'>528</a>
|
|
594
|
-
<a name='L529'></a><a href='#L529'>529</a>
|
|
595
|
-
<a name='L530'></a><a href='#L530'>530</a>
|
|
596
|
-
<a name='L531'></a><a href='#L531'>531</a>
|
|
597
|
-
<a name='L532'></a><a href='#L532'>532</a>
|
|
598
|
-
<a name='L533'></a><a href='#L533'>533</a>
|
|
599
|
-
<a name='L534'></a><a href='#L534'>534</a>
|
|
600
|
-
<a name='L535'></a><a href='#L535'>535</a>
|
|
601
|
-
<a name='L536'></a><a href='#L536'>536</a>
|
|
602
|
-
<a name='L537'></a><a href='#L537'>537</a>
|
|
603
|
-
<a name='L538'></a><a href='#L538'>538</a>
|
|
604
|
-
<a name='L539'></a><a href='#L539'>539</a>
|
|
605
|
-
<a name='L540'></a><a href='#L540'>540</a>
|
|
606
|
-
<a name='L541'></a><a href='#L541'>541</a>
|
|
607
|
-
<a name='L542'></a><a href='#L542'>542</a>
|
|
608
|
-
<a name='L543'></a><a href='#L543'>543</a>
|
|
609
|
-
<a name='L544'></a><a href='#L544'>544</a>
|
|
610
|
-
<a name='L545'></a><a href='#L545'>545</a>
|
|
611
|
-
<a name='L546'></a><a href='#L546'>546</a>
|
|
612
|
-
<a name='L547'></a><a href='#L547'>547</a>
|
|
613
|
-
<a name='L548'></a><a href='#L548'>548</a>
|
|
614
|
-
<a name='L549'></a><a href='#L549'>549</a>
|
|
615
|
-
<a name='L550'></a><a href='#L550'>550</a>
|
|
616
|
-
<a name='L551'></a><a href='#L551'>551</a>
|
|
617
|
-
<a name='L552'></a><a href='#L552'>552</a>
|
|
618
|
-
<a name='L553'></a><a href='#L553'>553</a>
|
|
619
|
-
<a name='L554'></a><a href='#L554'>554</a>
|
|
620
|
-
<a name='L555'></a><a href='#L555'>555</a>
|
|
621
|
-
<a name='L556'></a><a href='#L556'>556</a>
|
|
622
|
-
<a name='L557'></a><a href='#L557'>557</a>
|
|
623
|
-
<a name='L558'></a><a href='#L558'>558</a>
|
|
624
|
-
<a name='L559'></a><a href='#L559'>559</a>
|
|
625
|
-
<a name='L560'></a><a href='#L560'>560</a>
|
|
626
|
-
<a name='L561'></a><a href='#L561'>561</a>
|
|
627
|
-
<a name='L562'></a><a href='#L562'>562</a>
|
|
628
|
-
<a name='L563'></a><a href='#L563'>563</a>
|
|
629
|
-
<a name='L564'></a><a href='#L564'>564</a>
|
|
630
|
-
<a name='L565'></a><a href='#L565'>565</a>
|
|
631
|
-
<a name='L566'></a><a href='#L566'>566</a>
|
|
632
|
-
<a name='L567'></a><a href='#L567'>567</a>
|
|
633
|
-
<a name='L568'></a><a href='#L568'>568</a>
|
|
634
|
-
<a name='L569'></a><a href='#L569'>569</a>
|
|
635
|
-
<a name='L570'></a><a href='#L570'>570</a>
|
|
636
|
-
<a name='L571'></a><a href='#L571'>571</a>
|
|
637
|
-
<a name='L572'></a><a href='#L572'>572</a>
|
|
638
|
-
<a name='L573'></a><a href='#L573'>573</a>
|
|
639
|
-
<a name='L574'></a><a href='#L574'>574</a>
|
|
640
|
-
<a name='L575'></a><a href='#L575'>575</a>
|
|
641
|
-
<a name='L576'></a><a href='#L576'>576</a>
|
|
642
|
-
<a name='L577'></a><a href='#L577'>577</a>
|
|
643
|
-
<a name='L578'></a><a href='#L578'>578</a>
|
|
644
|
-
<a name='L579'></a><a href='#L579'>579</a>
|
|
645
|
-
<a name='L580'></a><a href='#L580'>580</a>
|
|
646
|
-
<a name='L581'></a><a href='#L581'>581</a>
|
|
647
|
-
<a name='L582'></a><a href='#L582'>582</a>
|
|
648
|
-
<a name='L583'></a><a href='#L583'>583</a>
|
|
649
|
-
<a name='L584'></a><a href='#L584'>584</a>
|
|
650
|
-
<a name='L585'></a><a href='#L585'>585</a>
|
|
651
|
-
<a name='L586'></a><a href='#L586'>586</a>
|
|
652
|
-
<a name='L587'></a><a href='#L587'>587</a>
|
|
653
|
-
<a name='L588'></a><a href='#L588'>588</a>
|
|
654
|
-
<a name='L589'></a><a href='#L589'>589</a>
|
|
655
|
-
<a name='L590'></a><a href='#L590'>590</a>
|
|
656
|
-
<a name='L591'></a><a href='#L591'>591</a>
|
|
657
|
-
<a name='L592'></a><a href='#L592'>592</a>
|
|
658
|
-
<a name='L593'></a><a href='#L593'>593</a>
|
|
659
|
-
<a name='L594'></a><a href='#L594'>594</a>
|
|
660
|
-
<a name='L595'></a><a href='#L595'>595</a>
|
|
661
|
-
<a name='L596'></a><a href='#L596'>596</a>
|
|
662
|
-
<a name='L597'></a><a href='#L597'>597</a>
|
|
663
|
-
<a name='L598'></a><a href='#L598'>598</a>
|
|
664
|
-
<a name='L599'></a><a href='#L599'>599</a>
|
|
665
|
-
<a name='L600'></a><a href='#L600'>600</a>
|
|
666
|
-
<a name='L601'></a><a href='#L601'>601</a>
|
|
667
|
-
<a name='L602'></a><a href='#L602'>602</a>
|
|
668
|
-
<a name='L603'></a><a href='#L603'>603</a>
|
|
669
|
-
<a name='L604'></a><a href='#L604'>604</a>
|
|
670
|
-
<a name='L605'></a><a href='#L605'>605</a>
|
|
671
|
-
<a name='L606'></a><a href='#L606'>606</a>
|
|
672
|
-
<a name='L607'></a><a href='#L607'>607</a>
|
|
673
|
-
<a name='L608'></a><a href='#L608'>608</a>
|
|
674
|
-
<a name='L609'></a><a href='#L609'>609</a></td><td class="line-coverage quiet"><span class="cline-any cline-neutral"> </span>
|
|
675
|
-
<span class="cline-any cline-no"> </span>
|
|
676
|
-
<span class="cline-any cline-no"> </span>
|
|
677
|
-
<span class="cline-any cline-no"> </span>
|
|
678
|
-
<span class="cline-any cline-no"> </span>
|
|
679
|
-
<span class="cline-any cline-neutral"> </span>
|
|
680
|
-
<span class="cline-any cline-neutral"> </span>
|
|
681
|
-
<span class="cline-any cline-neutral"> </span>
|
|
682
|
-
<span class="cline-any cline-neutral"> </span>
|
|
683
|
-
<span class="cline-any cline-neutral"> </span>
|
|
684
|
-
<span class="cline-any cline-neutral"> </span>
|
|
685
|
-
<span class="cline-any cline-neutral"> </span>
|
|
686
|
-
<span class="cline-any cline-neutral"> </span>
|
|
687
|
-
<span class="cline-any cline-neutral"> </span>
|
|
688
|
-
<span class="cline-any cline-no"> </span>
|
|
689
|
-
<span class="cline-any cline-neutral"> </span>
|
|
690
|
-
<span class="cline-any cline-neutral"> </span>
|
|
691
|
-
<span class="cline-any cline-neutral"> </span>
|
|
692
|
-
<span class="cline-any cline-neutral"> </span>
|
|
693
|
-
<span class="cline-any cline-neutral"> </span>
|
|
694
|
-
<span class="cline-any cline-neutral"> </span>
|
|
695
|
-
<span class="cline-any cline-neutral"> </span>
|
|
696
|
-
<span class="cline-any cline-neutral"> </span>
|
|
697
|
-
<span class="cline-any cline-neutral"> </span>
|
|
698
|
-
<span class="cline-any cline-neutral"> </span>
|
|
699
|
-
<span class="cline-any cline-neutral"> </span>
|
|
700
|
-
<span class="cline-any cline-neutral"> </span>
|
|
701
|
-
<span class="cline-any cline-neutral"> </span>
|
|
702
|
-
<span class="cline-any cline-neutral"> </span>
|
|
703
|
-
<span class="cline-any cline-neutral"> </span>
|
|
704
|
-
<span class="cline-any cline-neutral"> </span>
|
|
705
|
-
<span class="cline-any cline-neutral"> </span>
|
|
706
|
-
<span class="cline-any cline-neutral"> </span>
|
|
707
|
-
<span class="cline-any cline-no"> </span>
|
|
708
|
-
<span class="cline-any cline-neutral"> </span>
|
|
709
|
-
<span class="cline-any cline-no"> </span>
|
|
710
|
-
<span class="cline-any cline-no"> </span>
|
|
711
|
-
<span class="cline-any cline-neutral"> </span>
|
|
712
|
-
<span class="cline-any cline-neutral"> </span>
|
|
713
|
-
<span class="cline-any cline-neutral"> </span>
|
|
714
|
-
<span class="cline-any cline-neutral"> </span>
|
|
715
|
-
<span class="cline-any cline-neutral"> </span>
|
|
716
|
-
<span class="cline-any cline-neutral"> </span>
|
|
717
|
-
<span class="cline-any cline-no"> </span>
|
|
718
|
-
<span class="cline-any cline-no"> </span>
|
|
719
|
-
<span class="cline-any cline-no"> </span>
|
|
720
|
-
<span class="cline-any cline-no"> </span>
|
|
721
|
-
<span class="cline-any cline-no"> </span>
|
|
722
|
-
<span class="cline-any cline-no"> </span>
|
|
723
|
-
<span class="cline-any cline-no"> </span>
|
|
724
|
-
<span class="cline-any cline-no"> </span>
|
|
725
|
-
<span class="cline-any cline-no"> </span>
|
|
726
|
-
<span class="cline-any cline-no"> </span>
|
|
727
|
-
<span class="cline-any cline-no"> </span>
|
|
728
|
-
<span class="cline-any cline-no"> </span>
|
|
729
|
-
<span class="cline-any cline-neutral"> </span>
|
|
730
|
-
<span class="cline-any cline-neutral"> </span>
|
|
731
|
-
<span class="cline-any cline-no"> </span>
|
|
732
|
-
<span class="cline-any cline-no"> </span>
|
|
733
|
-
<span class="cline-any cline-neutral"> </span>
|
|
734
|
-
<span class="cline-any cline-no"> </span>
|
|
735
|
-
<span class="cline-any cline-no"> </span>
|
|
736
|
-
<span class="cline-any cline-no"> </span>
|
|
737
|
-
<span class="cline-any cline-no"> </span>
|
|
738
|
-
<span class="cline-any cline-no"> </span>
|
|
739
|
-
<span class="cline-any cline-no"> </span>
|
|
740
|
-
<span class="cline-any cline-no"> </span>
|
|
741
|
-
<span class="cline-any cline-no"> </span>
|
|
742
|
-
<span class="cline-any cline-no"> </span>
|
|
743
|
-
<span class="cline-any cline-neutral"> </span>
|
|
744
|
-
<span class="cline-any cline-neutral"> </span>
|
|
745
|
-
<span class="cline-any cline-no"> </span>
|
|
746
|
-
<span class="cline-any cline-no"> </span>
|
|
747
|
-
<span class="cline-any cline-no"> </span>
|
|
748
|
-
<span class="cline-any cline-neutral"> </span>
|
|
749
|
-
<span class="cline-any cline-neutral"> </span>
|
|
750
|
-
<span class="cline-any cline-neutral"> </span>
|
|
751
|
-
<span class="cline-any cline-neutral"> </span>
|
|
752
|
-
<span class="cline-any cline-no"> </span>
|
|
753
|
-
<span class="cline-any cline-neutral"> </span>
|
|
754
|
-
<span class="cline-any cline-neutral"> </span>
|
|
755
|
-
<span class="cline-any cline-no"> </span>
|
|
756
|
-
<span class="cline-any cline-no"> </span>
|
|
757
|
-
<span class="cline-any cline-no"> </span>
|
|
758
|
-
<span class="cline-any cline-no"> </span>
|
|
759
|
-
<span class="cline-any cline-neutral"> </span>
|
|
760
|
-
<span class="cline-any cline-neutral"> </span>
|
|
761
|
-
<span class="cline-any cline-neutral"> </span>
|
|
762
|
-
<span class="cline-any cline-neutral"> </span>
|
|
763
|
-
<span class="cline-any cline-no"> </span>
|
|
764
|
-
<span class="cline-any cline-neutral"> </span>
|
|
765
|
-
<span class="cline-any cline-no"> </span>
|
|
766
|
-
<span class="cline-any cline-no"> </span>
|
|
767
|
-
<span class="cline-any cline-no"> </span>
|
|
768
|
-
<span class="cline-any cline-neutral"> </span>
|
|
769
|
-
<span class="cline-any cline-no"> </span>
|
|
770
|
-
<span class="cline-any cline-neutral"> </span>
|
|
771
|
-
<span class="cline-any cline-neutral"> </span>
|
|
772
|
-
<span class="cline-any cline-neutral"> </span>
|
|
773
|
-
<span class="cline-any cline-no"> </span>
|
|
774
|
-
<span class="cline-any cline-no"> </span>
|
|
775
|
-
<span class="cline-any cline-no"> </span>
|
|
776
|
-
<span class="cline-any cline-no"> </span>
|
|
777
|
-
<span class="cline-any cline-neutral"> </span>
|
|
778
|
-
<span class="cline-any cline-no"> </span>
|
|
779
|
-
<span class="cline-any cline-no"> </span>
|
|
780
|
-
<span class="cline-any cline-no"> </span>
|
|
781
|
-
<span class="cline-any cline-no"> </span>
|
|
782
|
-
<span class="cline-any cline-neutral"> </span>
|
|
783
|
-
<span class="cline-any cline-no"> </span>
|
|
784
|
-
<span class="cline-any cline-no"> </span>
|
|
785
|
-
<span class="cline-any cline-neutral"> </span>
|
|
786
|
-
<span class="cline-any cline-neutral"> </span>
|
|
787
|
-
<span class="cline-any cline-no"> </span>
|
|
788
|
-
<span class="cline-any cline-neutral"> </span>
|
|
789
|
-
<span class="cline-any cline-no"> </span>
|
|
790
|
-
<span class="cline-any cline-neutral"> </span>
|
|
791
|
-
<span class="cline-any cline-neutral"> </span>
|
|
792
|
-
<span class="cline-any cline-neutral"> </span>
|
|
793
|
-
<span class="cline-any cline-no"> </span>
|
|
794
|
-
<span class="cline-any cline-no"> </span>
|
|
795
|
-
<span class="cline-any cline-no"> </span>
|
|
796
|
-
<span class="cline-any cline-no"> </span>
|
|
797
|
-
<span class="cline-any cline-neutral"> </span>
|
|
798
|
-
<span class="cline-any cline-neutral"> </span>
|
|
799
|
-
<span class="cline-any cline-no"> </span>
|
|
800
|
-
<span class="cline-any cline-no"> </span>
|
|
801
|
-
<span class="cline-any cline-neutral"> </span>
|
|
802
|
-
<span class="cline-any cline-neutral"> </span>
|
|
803
|
-
<span class="cline-any cline-neutral"> </span>
|
|
804
|
-
<span class="cline-any cline-neutral"> </span>
|
|
805
|
-
<span class="cline-any cline-neutral"> </span>
|
|
806
|
-
<span class="cline-any cline-neutral"> </span>
|
|
807
|
-
<span class="cline-any cline-neutral"> </span>
|
|
808
|
-
<span class="cline-any cline-no"> </span>
|
|
809
|
-
<span class="cline-any cline-neutral"> </span>
|
|
810
|
-
<span class="cline-any cline-neutral"> </span>
|
|
811
|
-
<span class="cline-any cline-neutral"> </span>
|
|
812
|
-
<span class="cline-any cline-neutral"> </span>
|
|
813
|
-
<span class="cline-any cline-neutral"> </span>
|
|
814
|
-
<span class="cline-any cline-neutral"> </span>
|
|
815
|
-
<span class="cline-any cline-no"> </span>
|
|
816
|
-
<span class="cline-any cline-neutral"> </span>
|
|
817
|
-
<span class="cline-any cline-no"> </span>
|
|
818
|
-
<span class="cline-any cline-no"> </span>
|
|
819
|
-
<span class="cline-any cline-neutral"> </span>
|
|
820
|
-
<span class="cline-any cline-no"> </span>
|
|
821
|
-
<span class="cline-any cline-no"> </span>
|
|
822
|
-
<span class="cline-any cline-no"> </span>
|
|
823
|
-
<span class="cline-any cline-no"> </span>
|
|
824
|
-
<span class="cline-any cline-neutral"> </span>
|
|
825
|
-
<span class="cline-any cline-no"> </span>
|
|
826
|
-
<span class="cline-any cline-no"> </span>
|
|
827
|
-
<span class="cline-any cline-no"> </span>
|
|
828
|
-
<span class="cline-any cline-no"> </span>
|
|
829
|
-
<span class="cline-any cline-no"> </span>
|
|
830
|
-
<span class="cline-any cline-no"> </span>
|
|
831
|
-
<span class="cline-any cline-neutral"> </span>
|
|
832
|
-
<span class="cline-any cline-no"> </span>
|
|
833
|
-
<span class="cline-any cline-no"> </span>
|
|
834
|
-
<span class="cline-any cline-no"> </span>
|
|
835
|
-
<span class="cline-any cline-no"> </span>
|
|
836
|
-
<span class="cline-any cline-neutral"> </span>
|
|
837
|
-
<span class="cline-any cline-neutral"> </span>
|
|
838
|
-
<span class="cline-any cline-no"> </span>
|
|
839
|
-
<span class="cline-any cline-no"> </span>
|
|
840
|
-
<span class="cline-any cline-no"> </span>
|
|
841
|
-
<span class="cline-any cline-neutral"> </span>
|
|
842
|
-
<span class="cline-any cline-neutral"> </span>
|
|
843
|
-
<span class="cline-any cline-neutral"> </span>
|
|
844
|
-
<span class="cline-any cline-neutral"> </span>
|
|
845
|
-
<span class="cline-any cline-neutral"> </span>
|
|
846
|
-
<span class="cline-any cline-neutral"> </span>
|
|
847
|
-
<span class="cline-any cline-neutral"> </span>
|
|
848
|
-
<span class="cline-any cline-neutral"> </span>
|
|
849
|
-
<span class="cline-any cline-neutral"> </span>
|
|
850
|
-
<span class="cline-any cline-neutral"> </span>
|
|
851
|
-
<span class="cline-any cline-neutral"> </span>
|
|
852
|
-
<span class="cline-any cline-neutral"> </span>
|
|
853
|
-
<span class="cline-any cline-no"> </span>
|
|
854
|
-
<span class="cline-any cline-no"> </span>
|
|
855
|
-
<span class="cline-any cline-neutral"> </span>
|
|
856
|
-
<span class="cline-any cline-neutral"> </span>
|
|
857
|
-
<span class="cline-any cline-neutral"> </span>
|
|
858
|
-
<span class="cline-any cline-neutral"> </span>
|
|
859
|
-
<span class="cline-any cline-neutral"> </span>
|
|
860
|
-
<span class="cline-any cline-neutral"> </span>
|
|
861
|
-
<span class="cline-any cline-neutral"> </span>
|
|
862
|
-
<span class="cline-any cline-neutral"> </span>
|
|
863
|
-
<span class="cline-any cline-neutral"> </span>
|
|
864
|
-
<span class="cline-any cline-neutral"> </span>
|
|
865
|
-
<span class="cline-any cline-neutral"> </span>
|
|
866
|
-
<span class="cline-any cline-neutral"> </span>
|
|
867
|
-
<span class="cline-any cline-neutral"> </span>
|
|
868
|
-
<span class="cline-any cline-no"> </span>
|
|
869
|
-
<span class="cline-any cline-no"> </span>
|
|
870
|
-
<span class="cline-any cline-no"> </span>
|
|
871
|
-
<span class="cline-any cline-no"> </span>
|
|
872
|
-
<span class="cline-any cline-no"> </span>
|
|
873
|
-
<span class="cline-any cline-no"> </span>
|
|
874
|
-
<span class="cline-any cline-no"> </span>
|
|
875
|
-
<span class="cline-any cline-no"> </span>
|
|
876
|
-
<span class="cline-any cline-no"> </span>
|
|
877
|
-
<span class="cline-any cline-neutral"> </span>
|
|
878
|
-
<span class="cline-any cline-no"> </span>
|
|
879
|
-
<span class="cline-any cline-no"> </span>
|
|
880
|
-
<span class="cline-any cline-no"> </span>
|
|
881
|
-
<span class="cline-any cline-no"> </span>
|
|
882
|
-
<span class="cline-any cline-no"> </span>
|
|
883
|
-
<span class="cline-any cline-no"> </span>
|
|
884
|
-
<span class="cline-any cline-no"> </span>
|
|
885
|
-
<span class="cline-any cline-no"> </span>
|
|
886
|
-
<span class="cline-any cline-no"> </span>
|
|
887
|
-
<span class="cline-any cline-no"> </span>
|
|
888
|
-
<span class="cline-any cline-neutral"> </span>
|
|
889
|
-
<span class="cline-any cline-no"> </span>
|
|
890
|
-
<span class="cline-any cline-no"> </span>
|
|
891
|
-
<span class="cline-any cline-neutral"> </span>
|
|
892
|
-
<span class="cline-any cline-no"> </span>
|
|
893
|
-
<span class="cline-any cline-neutral"> </span>
|
|
894
|
-
<span class="cline-any cline-neutral"> </span>
|
|
895
|
-
<span class="cline-any cline-neutral"> </span>
|
|
896
|
-
<span class="cline-any cline-neutral"> </span>
|
|
897
|
-
<span class="cline-any cline-no"> </span>
|
|
898
|
-
<span class="cline-any cline-no"> </span>
|
|
899
|
-
<span class="cline-any cline-no"> </span>
|
|
900
|
-
<span class="cline-any cline-neutral"> </span>
|
|
901
|
-
<span class="cline-any cline-neutral"> </span>
|
|
902
|
-
<span class="cline-any cline-neutral"> </span>
|
|
903
|
-
<span class="cline-any cline-neutral"> </span>
|
|
904
|
-
<span class="cline-any cline-neutral"> </span>
|
|
905
|
-
<span class="cline-any cline-neutral"> </span>
|
|
906
|
-
<span class="cline-any cline-neutral"> </span>
|
|
907
|
-
<span class="cline-any cline-neutral"> </span>
|
|
908
|
-
<span class="cline-any cline-neutral"> </span>
|
|
909
|
-
<span class="cline-any cline-neutral"> </span>
|
|
910
|
-
<span class="cline-any cline-neutral"> </span>
|
|
911
|
-
<span class="cline-any cline-neutral"> </span>
|
|
912
|
-
<span class="cline-any cline-neutral"> </span>
|
|
913
|
-
<span class="cline-any cline-no"> </span>
|
|
914
|
-
<span class="cline-any cline-neutral"> </span>
|
|
915
|
-
<span class="cline-any cline-no"> </span>
|
|
916
|
-
<span class="cline-any cline-neutral"> </span>
|
|
917
|
-
<span class="cline-any cline-no"> </span>
|
|
918
|
-
<span class="cline-any cline-no"> </span>
|
|
919
|
-
<span class="cline-any cline-no"> </span>
|
|
920
|
-
<span class="cline-any cline-no"> </span>
|
|
921
|
-
<span class="cline-any cline-neutral"> </span>
|
|
922
|
-
<span class="cline-any cline-neutral"> </span>
|
|
923
|
-
<span class="cline-any cline-neutral"> </span>
|
|
924
|
-
<span class="cline-any cline-neutral"> </span>
|
|
925
|
-
<span class="cline-any cline-neutral"> </span>
|
|
926
|
-
<span class="cline-any cline-no"> </span>
|
|
927
|
-
<span class="cline-any cline-no"> </span>
|
|
928
|
-
<span class="cline-any cline-neutral"> </span>
|
|
929
|
-
<span class="cline-any cline-neutral"> </span>
|
|
930
|
-
<span class="cline-any cline-neutral"> </span>
|
|
931
|
-
<span class="cline-any cline-neutral"> </span>
|
|
932
|
-
<span class="cline-any cline-no"> </span>
|
|
933
|
-
<span class="cline-any cline-no"> </span>
|
|
934
|
-
<span class="cline-any cline-neutral"> </span>
|
|
935
|
-
<span class="cline-any cline-neutral"> </span>
|
|
936
|
-
<span class="cline-any cline-neutral"> </span>
|
|
937
|
-
<span class="cline-any cline-neutral"> </span>
|
|
938
|
-
<span class="cline-any cline-no"> </span>
|
|
939
|
-
<span class="cline-any cline-no"> </span>
|
|
940
|
-
<span class="cline-any cline-neutral"> </span>
|
|
941
|
-
<span class="cline-any cline-neutral"> </span>
|
|
942
|
-
<span class="cline-any cline-neutral"> </span>
|
|
943
|
-
<span class="cline-any cline-neutral"> </span>
|
|
944
|
-
<span class="cline-any cline-no"> </span>
|
|
945
|
-
<span class="cline-any cline-no"> </span>
|
|
946
|
-
<span class="cline-any cline-neutral"> </span>
|
|
947
|
-
<span class="cline-any cline-neutral"> </span>
|
|
948
|
-
<span class="cline-any cline-neutral"> </span>
|
|
949
|
-
<span class="cline-any cline-neutral"> </span>
|
|
950
|
-
<span class="cline-any cline-no"> </span>
|
|
951
|
-
<span class="cline-any cline-neutral"> </span>
|
|
952
|
-
<span class="cline-any cline-neutral"> </span>
|
|
953
|
-
<span class="cline-any cline-no"> </span>
|
|
954
|
-
<span class="cline-any cline-no"> </span>
|
|
955
|
-
<span class="cline-any cline-neutral"> </span>
|
|
956
|
-
<span class="cline-any cline-neutral"> </span>
|
|
957
|
-
<span class="cline-any cline-no"> </span>
|
|
958
|
-
<span class="cline-any cline-neutral"> </span>
|
|
959
|
-
<span class="cline-any cline-no"> </span>
|
|
960
|
-
<span class="cline-any cline-no"> </span>
|
|
961
|
-
<span class="cline-any cline-no"> </span>
|
|
962
|
-
<span class="cline-any cline-neutral"> </span>
|
|
963
|
-
<span class="cline-any cline-no"> </span>
|
|
964
|
-
<span class="cline-any cline-no"> </span>
|
|
965
|
-
<span class="cline-any cline-neutral"> </span>
|
|
966
|
-
<span class="cline-any cline-neutral"> </span>
|
|
967
|
-
<span class="cline-any cline-neutral"> </span>
|
|
968
|
-
<span class="cline-any cline-no"> </span>
|
|
969
|
-
<span class="cline-any cline-neutral"> </span>
|
|
970
|
-
<span class="cline-any cline-neutral"> </span>
|
|
971
|
-
<span class="cline-any cline-no"> </span>
|
|
972
|
-
<span class="cline-any cline-no"> </span>
|
|
973
|
-
<span class="cline-any cline-no"> </span>
|
|
974
|
-
<span class="cline-any cline-neutral"> </span>
|
|
975
|
-
<span class="cline-any cline-neutral"> </span>
|
|
976
|
-
<span class="cline-any cline-neutral"> </span>
|
|
977
|
-
<span class="cline-any cline-neutral"> </span>
|
|
978
|
-
<span class="cline-any cline-neutral"> </span>
|
|
979
|
-
<span class="cline-any cline-neutral"> </span>
|
|
980
|
-
<span class="cline-any cline-neutral"> </span>
|
|
981
|
-
<span class="cline-any cline-neutral"> </span>
|
|
982
|
-
<span class="cline-any cline-neutral"> </span>
|
|
983
|
-
<span class="cline-any cline-no"> </span>
|
|
984
|
-
<span class="cline-any cline-no"> </span>
|
|
985
|
-
<span class="cline-any cline-no"> </span>
|
|
986
|
-
<span class="cline-any cline-neutral"> </span>
|
|
987
|
-
<span class="cline-any cline-neutral"> </span>
|
|
988
|
-
<span class="cline-any cline-neutral"> </span>
|
|
989
|
-
<span class="cline-any cline-neutral"> </span>
|
|
990
|
-
<span class="cline-any cline-neutral"> </span>
|
|
991
|
-
<span class="cline-any cline-neutral"> </span>
|
|
992
|
-
<span class="cline-any cline-neutral"> </span>
|
|
993
|
-
<span class="cline-any cline-no"> </span>
|
|
994
|
-
<span class="cline-any cline-no"> </span>
|
|
995
|
-
<span class="cline-any cline-neutral"> </span>
|
|
996
|
-
<span class="cline-any cline-no"> </span>
|
|
997
|
-
<span class="cline-any cline-no"> </span>
|
|
998
|
-
<span class="cline-any cline-no"> </span>
|
|
999
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1000
|
-
<span class="cline-any cline-no"> </span>
|
|
1001
|
-
<span class="cline-any cline-no"> </span>
|
|
1002
|
-
<span class="cline-any cline-no"> </span>
|
|
1003
|
-
<span class="cline-any cline-no"> </span>
|
|
1004
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1005
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1006
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1007
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1008
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1009
|
-
<span class="cline-any cline-no"> </span>
|
|
1010
|
-
<span class="cline-any cline-no"> </span>
|
|
1011
|
-
<span class="cline-any cline-no"> </span>
|
|
1012
|
-
<span class="cline-any cline-no"> </span>
|
|
1013
|
-
<span class="cline-any cline-no"> </span>
|
|
1014
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1015
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1016
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1017
|
-
<span class="cline-any cline-no"> </span>
|
|
1018
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1019
|
-
<span class="cline-any cline-no"> </span>
|
|
1020
|
-
<span class="cline-any cline-no"> </span>
|
|
1021
|
-
<span class="cline-any cline-no"> </span>
|
|
1022
|
-
<span class="cline-any cline-no"> </span>
|
|
1023
|
-
<span class="cline-any cline-no"> </span>
|
|
1024
|
-
<span class="cline-any cline-no"> </span>
|
|
1025
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1026
|
-
<span class="cline-any cline-no"> </span>
|
|
1027
|
-
<span class="cline-any cline-no"> </span>
|
|
1028
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1029
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1030
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1031
|
-
<span class="cline-any cline-no"> </span>
|
|
1032
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1033
|
-
<span class="cline-any cline-no"> </span>
|
|
1034
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1035
|
-
<span class="cline-any cline-no"> </span>
|
|
1036
|
-
<span class="cline-any cline-no"> </span>
|
|
1037
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1038
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1039
|
-
<span class="cline-any cline-no"> </span>
|
|
1040
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1041
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1042
|
-
<span class="cline-any cline-no"> </span>
|
|
1043
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1044
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1045
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1046
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1047
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1048
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1049
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1050
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1051
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1052
|
-
<span class="cline-any cline-no"> </span>
|
|
1053
|
-
<span class="cline-any cline-no"> </span>
|
|
1054
|
-
<span class="cline-any cline-no"> </span>
|
|
1055
|
-
<span class="cline-any cline-no"> </span>
|
|
1056
|
-
<span class="cline-any cline-no"> </span>
|
|
1057
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1058
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1059
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1060
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1061
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1062
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1063
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1064
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1065
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1066
|
-
<span class="cline-any cline-no"> </span>
|
|
1067
|
-
<span class="cline-any cline-no"> </span>
|
|
1068
|
-
<span class="cline-any cline-no"> </span>
|
|
1069
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1070
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1071
|
-
<span class="cline-any cline-no"> </span>
|
|
1072
|
-
<span class="cline-any cline-no"> </span>
|
|
1073
|
-
<span class="cline-any cline-no"> </span>
|
|
1074
|
-
<span class="cline-any cline-no"> </span>
|
|
1075
|
-
<span class="cline-any cline-no"> </span>
|
|
1076
|
-
<span class="cline-any cline-no"> </span>
|
|
1077
|
-
<span class="cline-any cline-no"> </span>
|
|
1078
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1079
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1080
|
-
<span class="cline-any cline-no"> </span>
|
|
1081
|
-
<span class="cline-any cline-no"> </span>
|
|
1082
|
-
<span class="cline-any cline-no"> </span>
|
|
1083
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1084
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1085
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1086
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1087
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1088
|
-
<span class="cline-any cline-no"> </span>
|
|
1089
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1090
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1091
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1092
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1093
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1094
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1095
|
-
<span class="cline-any cline-no"> </span>
|
|
1096
|
-
<span class="cline-any cline-no"> </span>
|
|
1097
|
-
<span class="cline-any cline-no"> </span>
|
|
1098
|
-
<span class="cline-any cline-no"> </span>
|
|
1099
|
-
<span class="cline-any cline-no"> </span>
|
|
1100
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1101
|
-
<span class="cline-any cline-no"> </span>
|
|
1102
|
-
<span class="cline-any cline-no"> </span>
|
|
1103
|
-
<span class="cline-any cline-no"> </span>
|
|
1104
|
-
<span class="cline-any cline-no"> </span>
|
|
1105
|
-
<span class="cline-any cline-no"> </span>
|
|
1106
|
-
<span class="cline-any cline-no"> </span>
|
|
1107
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1108
|
-
<span class="cline-any cline-no"> </span>
|
|
1109
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1110
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1111
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1112
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1113
|
-
<span class="cline-any cline-no"> </span>
|
|
1114
|
-
<span class="cline-any cline-no"> </span>
|
|
1115
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1116
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1117
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1118
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1119
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1120
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1121
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1122
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1123
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1124
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1125
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1126
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1127
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1128
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1129
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1130
|
-
<span class="cline-any cline-no"> </span>
|
|
1131
|
-
<span class="cline-any cline-no"> </span>
|
|
1132
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1133
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1134
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1135
|
-
<span class="cline-any cline-no"> </span>
|
|
1136
|
-
<span class="cline-any cline-no"> </span>
|
|
1137
|
-
<span class="cline-any cline-no"> </span>
|
|
1138
|
-
<span class="cline-any cline-no"> </span>
|
|
1139
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1140
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1141
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1142
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1143
|
-
<span class="cline-any cline-no"> </span>
|
|
1144
|
-
<span class="cline-any cline-no"> </span>
|
|
1145
|
-
<span class="cline-any cline-no"> </span>
|
|
1146
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1147
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1148
|
-
<span class="cline-any cline-no"> </span>
|
|
1149
|
-
<span class="cline-any cline-no"> </span>
|
|
1150
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1151
|
-
<span class="cline-any cline-no"> </span>
|
|
1152
|
-
<span class="cline-any cline-no"> </span>
|
|
1153
|
-
<span class="cline-any cline-no"> </span>
|
|
1154
|
-
<span class="cline-any cline-no"> </span>
|
|
1155
|
-
<span class="cline-any cline-no"> </span>
|
|
1156
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1157
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1158
|
-
<span class="cline-any cline-no"> </span>
|
|
1159
|
-
<span class="cline-any cline-no"> </span>
|
|
1160
|
-
<span class="cline-any cline-no"> </span>
|
|
1161
|
-
<span class="cline-any cline-no"> </span>
|
|
1162
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1163
|
-
<span class="cline-any cline-no"> </span>
|
|
1164
|
-
<span class="cline-any cline-no"> </span>
|
|
1165
|
-
<span class="cline-any cline-no"> </span>
|
|
1166
|
-
<span class="cline-any cline-no"> </span>
|
|
1167
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1168
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1169
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1170
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1171
|
-
<span class="cline-any cline-no"> </span>
|
|
1172
|
-
<span class="cline-any cline-no"> </span>
|
|
1173
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1174
|
-
<span class="cline-any cline-no"> </span>
|
|
1175
|
-
<span class="cline-any cline-no"> </span>
|
|
1176
|
-
<span class="cline-any cline-no"> </span>
|
|
1177
|
-
<span class="cline-any cline-no"> </span>
|
|
1178
|
-
<span class="cline-any cline-no"> </span>
|
|
1179
|
-
<span class="cline-any cline-no"> </span>
|
|
1180
|
-
<span class="cline-any cline-no"> </span>
|
|
1181
|
-
<span class="cline-any cline-no"> </span>
|
|
1182
|
-
<span class="cline-any cline-no"> </span>
|
|
1183
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1184
|
-
<span class="cline-any cline-no"> </span>
|
|
1185
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1186
|
-
<span class="cline-any cline-no"> </span>
|
|
1187
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1188
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1189
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1190
|
-
<span class="cline-any cline-no"> </span>
|
|
1191
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1192
|
-
<span class="cline-any cline-no"> </span>
|
|
1193
|
-
<span class="cline-any cline-no"> </span>
|
|
1194
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1195
|
-
<span class="cline-any cline-no"> </span>
|
|
1196
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1197
|
-
<span class="cline-any cline-no"> </span>
|
|
1198
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1199
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1200
|
-
<span class="cline-any cline-no"> </span>
|
|
1201
|
-
<span class="cline-any cline-no"> </span>
|
|
1202
|
-
<span class="cline-any cline-no"> </span>
|
|
1203
|
-
<span class="cline-any cline-no"> </span>
|
|
1204
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1205
|
-
<span class="cline-any cline-no"> </span>
|
|
1206
|
-
<span class="cline-any cline-no"> </span>
|
|
1207
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1208
|
-
<span class="cline-any cline-no"> </span>
|
|
1209
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1210
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1211
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1212
|
-
<span class="cline-any cline-no"> </span>
|
|
1213
|
-
<span class="cline-any cline-no"> </span>
|
|
1214
|
-
<span class="cline-any cline-no"> </span>
|
|
1215
|
-
<span class="cline-any cline-no"> </span>
|
|
1216
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1217
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1218
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1219
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1220
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1221
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1222
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1223
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1224
|
-
<span class="cline-any cline-no"> </span>
|
|
1225
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1226
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1227
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1228
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1229
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1230
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1231
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1232
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1233
|
-
<span class="cline-any cline-no"> </span>
|
|
1234
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1235
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1236
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1237
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1238
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1239
|
-
<span class="cline-any cline-no"> </span>
|
|
1240
|
-
<span class="cline-any cline-no"> </span>
|
|
1241
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1242
|
-
<span class="cline-any cline-no"> </span>
|
|
1243
|
-
<span class="cline-any cline-no"> </span>
|
|
1244
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1245
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1246
|
-
<span class="cline-any cline-no"> </span>
|
|
1247
|
-
<span class="cline-any cline-no"> </span>
|
|
1248
|
-
<span class="cline-any cline-no"> </span>
|
|
1249
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1250
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1251
|
-
<span class="cline-any cline-no"> </span>
|
|
1252
|
-
<span class="cline-any cline-no"> </span>
|
|
1253
|
-
<span class="cline-any cline-no"> </span>
|
|
1254
|
-
<span class="cline-any cline-no"> </span>
|
|
1255
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1256
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1257
|
-
<span class="cline-any cline-no"> </span>
|
|
1258
|
-
<span class="cline-any cline-no"> </span>
|
|
1259
|
-
<span class="cline-any cline-no"> </span>
|
|
1260
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1261
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1262
|
-
<span class="cline-any cline-no"> </span>
|
|
1263
|
-
<span class="cline-any cline-no"> </span>
|
|
1264
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1265
|
-
<span class="cline-any cline-no"> </span>
|
|
1266
|
-
<span class="cline-any cline-no"> </span>
|
|
1267
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1268
|
-
<span class="cline-any cline-no"> </span>
|
|
1269
|
-
<span class="cline-any cline-no"> </span>
|
|
1270
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1271
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1272
|
-
<span class="cline-any cline-no"> </span>
|
|
1273
|
-
<span class="cline-any cline-no"> </span>
|
|
1274
|
-
<span class="cline-any cline-no"> </span>
|
|
1275
|
-
<span class="cline-any cline-no"> </span>
|
|
1276
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1277
|
-
<span class="cline-any cline-no"> </span>
|
|
1278
|
-
<span class="cline-any cline-no"> </span>
|
|
1279
|
-
<span class="cline-any cline-no"> </span>
|
|
1280
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1281
|
-
<span class="cline-any cline-neutral"> </span>
|
|
1282
|
-
<span class="cline-any cline-neutral"> </span></td><td class="text"><pre class="prettyprint lang-js">import App from '../../app/index.js'
|
|
1283
|
-
<span class="cstat-no" title="statement not covered" >import * as styles from './styles.js'</span>
|
|
1284
|
-
<span class="cstat-no" title="statement not covered" >import Recorder, { Quality } from './recorder.js'</span>
|
|
1285
|
-
<span class="cstat-no" title="statement not covered" >import attachDND from './dnd.js'</span>
|
|
1286
|
-
<span class="cstat-no" title="statement not covered" >import {</span>
|
|
1287
|
-
generateGrid,
|
|
1288
|
-
generateChevron,
|
|
1289
|
-
createSpinner,
|
|
1290
|
-
createElement,
|
|
1291
|
-
TEST_START,
|
|
1292
|
-
TASK_IND,
|
|
1293
|
-
SESSION_ID,
|
|
1294
|
-
TEST_ID,
|
|
1295
|
-
} from './utils.js'
|
|
1296
|
-
<span class="cstat-no" title="statement not covered" >import SignalManager from './SignalManager.js'</span>
|
|
1297
|
-
|
|
1298
|
-
interface Test {
|
|
1299
|
-
title: string
|
|
1300
|
-
description: string
|
|
1301
|
-
startingPath: string
|
|
1302
|
-
status: string
|
|
1303
|
-
reqMic: boolean
|
|
1304
|
-
reqCamera: boolean
|
|
1305
|
-
guidelines: string
|
|
1306
|
-
conclusion: string
|
|
1307
|
-
tasks: {
|
|
1308
|
-
task_id: number
|
|
1309
|
-
title: string
|
|
1310
|
-
description: string
|
|
1311
|
-
allow_typing: boolean
|
|
1312
|
-
}[]
|
|
1313
|
-
}
|
|
1314
|
-
|
|
1315
|
-
<span class="cstat-no" title="statement not covered" >export default class U</span>serTestManager {
|
|
1316
|
-
private readonly userRecorder: Recorder
|
|
1317
|
-
private readonly <span class="cstat-no" title="statement not covered" >bg = createElement('div', 'bg', styles.bgStyle, undefined, '__or_ut_bg')</span>
|
|
1318
|
-
private readonly <span class="cstat-no" title="statement not covered" >container = createElement(</span>
|
|
1319
|
-
'div',
|
|
1320
|
-
'container',
|
|
1321
|
-
styles.containerStyle,
|
|
1322
|
-
undefined,
|
|
1323
|
-
'__or_ut_ct',
|
|
1324
|
-
)
|
|
1325
|
-
private <span class="cstat-no" title="statement not covered" >widgetGuidelinesVisible = true</span>
|
|
1326
|
-
private <span class="cstat-no" title="statement not covered" >widgetTasksVisible = false</span>
|
|
1327
|
-
private <span class="cstat-no" title="statement not covered" >widgetVisible = true</span>
|
|
1328
|
-
public <span class="cstat-no" title="statement not covered" >isActive = false</span>
|
|
1329
|
-
private <span class="cstat-no" title="statement not covered" >descriptionSection: HTMLElement | null = null</span>
|
|
1330
|
-
private <span class="cstat-no" title="statement not covered" >taskSection: HTMLElement | null = null</span>
|
|
1331
|
-
private <span class="cstat-no" title="statement not covered" >endSection: HTMLElement | null = null</span>
|
|
1332
|
-
private <span class="cstat-no" title="statement not covered" >stopButton: HTMLElement | null = null</span>
|
|
1333
|
-
private <span class="cstat-no" title="statement not covered" >stopButtonContainer: HTMLElement | null = null</span>
|
|
1334
|
-
private <span class="cstat-no" title="statement not covered" >test: Test | null = null</span>
|
|
1335
|
-
private <span class="cstat-no" title="statement not covered" >testId: number | null = null</span>
|
|
1336
|
-
private <span class="cstat-no" title="statement not covered" >signalManager: SignalManager | null = null</span>
|
|
1337
|
-
|
|
1338
|
-
<span class="fstat-no" title="function not covered" > constructor(</span>
|
|
1339
|
-
private readonly <span class="cstat-no" title="statement not covered" >app: App,</span>
|
|
1340
|
-
private readonly <span class="cstat-no" title="statement not covered" >storageKey: string,</span>
|
|
1341
|
-
) {
|
|
1342
|
-
<span class="cstat-no" title="statement not covered" > this.userRecorder = new Recorder(app)</span>
|
|
1343
|
-
const sessionId = <span class="cstat-no" title="statement not covered" >this.app.getSessionID()</span>
|
|
1344
|
-
const savedSessionId = <span class="cstat-no" title="statement not covered" >this.app.localStorage.getItem(SESSION_ID)</span>
|
|
1345
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (sessionId !== savedSessionId) {</span>
|
|
1346
|
-
<span class="cstat-no" title="statement not covered" > this.app.localStorage.removeItem(this.storageKey)</span>
|
|
1347
|
-
<span class="cstat-no" title="statement not covered" > this.app.localStorage.removeItem(SESSION_ID)</span>
|
|
1348
|
-
<span class="cstat-no" title="statement not covered" > this.app.localStorage.removeItem(TEST_ID)</span>
|
|
1349
|
-
<span class="cstat-no" title="statement not covered" > this.app.localStorage.removeItem(TASK_IND)</span>
|
|
1350
|
-
<span class="cstat-no" title="statement not covered" > this.app.localStorage.removeItem(TEST_START)</span>
|
|
1351
|
-
}
|
|
1352
|
-
|
|
1353
|
-
const taskIndex = <span class="cstat-no" title="statement not covered" >this.app.localStorage.getItem(TASK_IND)</span>
|
|
1354
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (taskIndex) {</span>
|
|
1355
|
-
<span class="cstat-no" title="statement not covered" > this.currentTaskIndex = parseInt(taskIndex, 10)</span>
|
|
1356
|
-
}
|
|
1357
|
-
}
|
|
1358
|
-
|
|
1359
|
-
public <span class="fstat-no" title="function not covered" >getTestId(</span>) {
|
|
1360
|
-
<span class="cstat-no" title="statement not covered" > return this.testId</span>
|
|
1361
|
-
}
|
|
1362
|
-
|
|
1363
|
-
<span class="cstat-no" title="statement not covered" > getTest = <span class="fstat-no" title="function not covered" >(i</span>d: number, token: string, inProgress?: boolean) => {</span>
|
|
1364
|
-
<span class="cstat-no" title="statement not covered" > this.testId = id</span>
|
|
1365
|
-
const ingest = <span class="cstat-no" title="statement not covered" >this.app.options.ingestPoint</span>
|
|
1366
|
-
<span class="cstat-no" title="statement not covered" > return fetch(`${ingest}/v1/web/uxt/test/${id}`, {</span>
|
|
1367
|
-
headers: {
|
|
1368
|
-
Authorization: `Bearer ${token}`,
|
|
1369
|
-
},
|
|
1370
|
-
})
|
|
1371
|
-
.then(<span class="fstat-no" title="function not covered" >(r</span>es) => <span class="cstat-no" title="statement not covered" >res.json())</span>
|
|
1372
|
-
.then(<span class="fstat-no" title="function not covered" >({</span> test }: { test: Test }) => {
|
|
1373
|
-
<span class="cstat-no" title="statement not covered" > this.isActive = true</span>
|
|
1374
|
-
<span class="cstat-no" title="statement not covered" > this.test = test</span>
|
|
1375
|
-
<span class="cstat-no" title="statement not covered" > this.signalManager = new SignalManager(</span>
|
|
1376
|
-
this.app.options.ingestPoint,
|
|
1377
|
-
<span class="fstat-no" title="function not covered" > () =</span>> <span class="cstat-no" title="statement not covered" >this.app.timestamp(),</span>
|
|
1378
|
-
token,
|
|
1379
|
-
id,
|
|
1380
|
-
this.storageKey,
|
|
1381
|
-
<span class="fstat-no" title="function not covered" > (k</span>: string, v: string) => <span class="cstat-no" title="statement not covered" >this.app.localStorage.setItem(k, v),</span>
|
|
1382
|
-
<span class="fstat-no" title="function not covered" > (k</span>) => <span class="cstat-no" title="statement not covered" >this.app.localStorage.removeItem(k),</span>
|
|
1383
|
-
<span class="fstat-no" title="function not covered" > (k</span>) => <span class="cstat-no" title="statement not covered" >this.app.localStorage.getItem(k),</span>
|
|
1384
|
-
<span class="fstat-no" title="function not covered" > () =</span>> <span class="cstat-no" title="statement not covered" >this.app.getSessionID(),</span>
|
|
1385
|
-
)
|
|
1386
|
-
<span class="cstat-no" title="statement not covered" > this.createGreeting(test.title, test.reqMic, test.reqCamera)</span>
|
|
1387
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (inProgress) {</span>
|
|
1388
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (test.reqMic || test.reqCamera) {</span>
|
|
1389
|
-
<span class="cstat-no" title="statement not covered" > void this.userRecorder.startRecording(30, Quality.Standard, test.reqMic, test.reqCamera)</span>
|
|
1390
|
-
}
|
|
1391
|
-
<span class="cstat-no" title="statement not covered" > this.showWidget(test.description, test.tasks, true)</span>
|
|
1392
|
-
<span class="cstat-no" title="statement not covered" > this.showTaskSection()</span>
|
|
1393
|
-
}
|
|
1394
|
-
})
|
|
1395
|
-
.then(<span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >id)</span>
|
|
1396
|
-
.catch(<span class="fstat-no" title="function not covered" >(e</span>rr) => {
|
|
1397
|
-
<span class="cstat-no" title="statement not covered" > console.log('OR: Error fetching test', err)</span>
|
|
1398
|
-
})
|
|
1399
|
-
}
|
|
1400
|
-
|
|
1401
|
-
<span class="cstat-no" title="statement not covered" > hideTaskSection = <span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >false</span></span>
|
|
1402
|
-
<span class="cstat-no" title="statement not covered" > showTaskSection = <span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >true</span></span>
|
|
1403
|
-
<span class="cstat-no" title="statement not covered" > collapseWidget = <span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >false</span></span>
|
|
1404
|
-
<span class="cstat-no" title="statement not covered" > removeGreeting = <span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >false</span></span>
|
|
1405
|
-
|
|
1406
|
-
<span class="fstat-no" title="function not covered" > createGreeting(</span>title: string, micRequired: boolean, cameraRequired: boolean) {
|
|
1407
|
-
const titleElement = <span class="cstat-no" title="statement not covered" >createElement('div', 'title', styles.titleStyle, title)</span>
|
|
1408
|
-
const descriptionElement = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1409
|
-
'div',
|
|
1410
|
-
'description',
|
|
1411
|
-
styles.descriptionStyle,
|
|
1412
|
-
`Welcome, you're here to help us improve, not to be judged. Your insights matter!\n
|
|
1413
|
-
📹 We're recording this browser tab to learn from your experience.
|
|
1414
|
-
🎤 Please enable mic and camera if asked, to give us a complete picture.`,
|
|
1415
|
-
)
|
|
1416
|
-
const buttonElement = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1417
|
-
'div',
|
|
1418
|
-
'button',
|
|
1419
|
-
styles.buttonStyle,
|
|
1420
|
-
'Read guidelines to begin',
|
|
1421
|
-
)
|
|
1422
|
-
|
|
1423
|
-
<span class="cstat-no" title="statement not covered" > this.removeGreeting = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1424
|
-
// this.container.innerHTML = ''
|
|
1425
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (micRequired || cameraRequired) {</span>
|
|
1426
|
-
<span class="cstat-no" title="statement not covered" > void this.userRecorder.startRecording(30, Quality.Standard, micRequired, cameraRequired)</span>
|
|
1427
|
-
}
|
|
1428
|
-
<span class="cstat-no" title="statement not covered" > this.container.removeChild(buttonElement)</span>
|
|
1429
|
-
<span class="cstat-no" title="statement not covered" > this.container.removeChild(descriptionElement)</span>
|
|
1430
|
-
<span class="cstat-no" title="statement not covered" > this.container.removeChild(titleElement)</span>
|
|
1431
|
-
<span class="cstat-no" title="statement not covered" > return false</span>
|
|
1432
|
-
}
|
|
1433
|
-
<span class="cstat-no" title="statement not covered" > buttonElement.onclick = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1434
|
-
<span class="cstat-no" title="statement not covered" > this.removeGreeting()</span>
|
|
1435
|
-
const durations = <span class="cstat-no" title="statement not covered" >this.signalManager?.getDurations()</span>
|
|
1436
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (durations && this.signalManager) {</span>
|
|
1437
|
-
<span class="cstat-no" title="statement not covered" > durations.testStart = this.app.timestamp()</span>
|
|
1438
|
-
<span class="cstat-no" title="statement not covered" > this.signalManager.setDurations(durations)</span>
|
|
1439
|
-
}
|
|
1440
|
-
<span class="cstat-no" title="statement not covered" > void this.signalManager?.signalTest('begin')</span>
|
|
1441
|
-
<span class="cstat-no" title="statement not covered" > this.container.style.fontFamily = `-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"`</span>
|
|
1442
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(this.container.style, styles.containerWidgetStyle)</span>
|
|
1443
|
-
<span class="cstat-no" title="statement not covered" > this.showWidget(this.test?.guidelines || '', this.test?.tasks || [])</span>
|
|
1444
|
-
}
|
|
1445
|
-
|
|
1446
|
-
<span class="cstat-no" title="statement not covered" > this.container.append(titleElement, descriptionElement, buttonElement)</span>
|
|
1447
|
-
<span class="cstat-no" title="statement not covered" > this.bg.appendChild(this.container)</span>
|
|
1448
|
-
<span class="cstat-no" title="statement not covered" > document.body.appendChild(this.bg)</span>
|
|
1449
|
-
}
|
|
1450
|
-
|
|
1451
|
-
<span class="fstat-no" title="function not covered" > showWidget(</span>
|
|
1452
|
-
guidelines: string,
|
|
1453
|
-
tasks: {
|
|
1454
|
-
title: string
|
|
1455
|
-
description: string
|
|
1456
|
-
task_id: number
|
|
1457
|
-
allow_typing: boolean
|
|
1458
|
-
}[],
|
|
1459
|
-
inProgress?: boolean,
|
|
1460
|
-
) {
|
|
1461
|
-
<span class="cstat-no" title="statement not covered" > this.container.innerHTML = ''</span>
|
|
1462
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(this.bg.style, {</span>
|
|
1463
|
-
position: 'fixed',
|
|
1464
|
-
zIndex: 99999999999999,
|
|
1465
|
-
right: '8px',
|
|
1466
|
-
left: 'unset',
|
|
1467
|
-
width: 'fit-content',
|
|
1468
|
-
top: '8px',
|
|
1469
|
-
height: 'fit-content',
|
|
1470
|
-
background: 'unset',
|
|
1471
|
-
display: 'unset',
|
|
1472
|
-
alignItems: 'unset',
|
|
1473
|
-
justifyContent: 'unset',
|
|
1474
|
-
})
|
|
1475
|
-
// Create title section
|
|
1476
|
-
const titleSection = <span class="cstat-no" title="statement not covered" >this.createTitleSection()</span>
|
|
1477
|
-
<span class="cstat-no" title="statement not covered" > this.container.style.fontFamily = `-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"`</span>
|
|
1478
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(this.container.style, styles.containerWidgetStyle)</span>
|
|
1479
|
-
const descriptionSection = <span class="cstat-no" title="statement not covered" >this.createDescriptionSection(guidelines)</span>
|
|
1480
|
-
const tasksSection = <span class="cstat-no" title="statement not covered" >this.createTasksSection(tasks)</span>
|
|
1481
|
-
const stopButton = <span class="cstat-no" title="statement not covered" >createElement('div', 'stop_bn_or', styles.stopWidgetStyle, 'Abort Session')</span>
|
|
1482
|
-
const stopContainer = <span class="cstat-no" title="statement not covered" >createElement('div', 'stop_ct_or', { fontSize: '13px!important' })</span>
|
|
1483
|
-
<span class="cstat-no" title="statement not covered" > stopContainer.style.fontSize = '13px'</span>
|
|
1484
|
-
<span class="cstat-no" title="statement not covered" > stopContainer.append(stopButton)</span>
|
|
1485
|
-
|
|
1486
|
-
<span class="cstat-no" title="statement not covered" > this.container.append(titleSection, descriptionSection, tasksSection, stopContainer)</span>
|
|
1487
|
-
<span class="cstat-no" title="statement not covered" > this.taskSection = tasksSection</span>
|
|
1488
|
-
<span class="cstat-no" title="statement not covered" > this.descriptionSection = descriptionSection</span>
|
|
1489
|
-
<span class="cstat-no" title="statement not covered" > this.stopButton = stopButton</span>
|
|
1490
|
-
<span class="cstat-no" title="statement not covered" > this.stopButtonContainer = stopContainer</span>
|
|
1491
|
-
<span class="cstat-no" title="statement not covered" > stopButton.onclick = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1492
|
-
<span class="cstat-no" title="statement not covered" > this.userRecorder.discard()</span>
|
|
1493
|
-
<span class="cstat-no" title="statement not covered" > void this.signalManager?.signalTest('skipped')</span>
|
|
1494
|
-
<span class="cstat-no" title="statement not covered" > document.body.removeChild(this.bg)</span>
|
|
1495
|
-
<span class="cstat-no" title="statement not covered" > window.close()</span>
|
|
1496
|
-
}
|
|
1497
|
-
<span class="cstat-no" title="statement not covered" > if (!inProgress) {</span>
|
|
1498
|
-
<span class="cstat-no" title="statement not covered" > this.hideTaskSection()</span>
|
|
1499
|
-
} else {
|
|
1500
|
-
<span class="cstat-no" title="statement not covered" > this.toggleDescriptionVisibility()</span>
|
|
1501
|
-
}
|
|
1502
|
-
}
|
|
1503
|
-
|
|
1504
|
-
<span class="fstat-no" title="function not covered" > createTitleSection(</span>) {
|
|
1505
|
-
const title = <span class="cstat-no" title="statement not covered" >createElement('div', 'title', styles.titleWidgetStyle)</span>
|
|
1506
|
-
const leftIcon = <span class="cstat-no" title="statement not covered" >generateGrid()</span>
|
|
1507
|
-
const titleText = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1508
|
-
'div',
|
|
1509
|
-
'title_text',
|
|
1510
|
-
{
|
|
1511
|
-
maxWidth: '19rem',
|
|
1512
|
-
overflow: 'hidden',
|
|
1513
|
-
textOverflow: 'ellipsis',
|
|
1514
|
-
width: '100%',
|
|
1515
|
-
fontSize: 16,
|
|
1516
|
-
lineHeight: 'auto',
|
|
1517
|
-
cursor: 'pointer',
|
|
1518
|
-
},
|
|
1519
|
-
this.test?.title,
|
|
1520
|
-
)
|
|
1521
|
-
const rightIcon = <span class="cstat-no" title="statement not covered" >generateChevron()</span>
|
|
1522
|
-
|
|
1523
|
-
<span class="cstat-no" title="statement not covered" > title.append(leftIcon, titleText, rightIcon)</span>
|
|
1524
|
-
|
|
1525
|
-
const toggleWidget = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >(i</span>sVisible: boolean) => {</span>
|
|
1526
|
-
<span class="cstat-no" title="statement not covered" > this.widgetVisible = isVisible</span>
|
|
1527
|
-
<span class="cstat-no" title="statement not covered" > this.container.style.fontFamily = `-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"`</span>
|
|
1528
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1529
|
-
this.container.style,
|
|
1530
|
-
this.widgetVisible
|
|
1531
|
-
? styles.containerWidgetStyle
|
|
1532
|
-
: { border: 'none', background: 'none', padding: 0 },
|
|
1533
|
-
)
|
|
1534
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.taskSection) {</span>
|
|
1535
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1536
|
-
this.taskSection.style,
|
|
1537
|
-
this.widgetVisible ? styles.descriptionWidgetStyle : { display: 'none' },
|
|
1538
|
-
)
|
|
1539
|
-
}
|
|
1540
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.descriptionSection) {</span>
|
|
1541
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1542
|
-
this.descriptionSection.style,
|
|
1543
|
-
this.widgetVisible ? styles.descriptionWidgetStyle : { display: 'none' },
|
|
1544
|
-
)
|
|
1545
|
-
}
|
|
1546
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.endSection) {</span>
|
|
1547
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1548
|
-
this.endSection.style,
|
|
1549
|
-
this.widgetVisible ? styles.descriptionWidgetStyle : { display: 'none' },
|
|
1550
|
-
)
|
|
1551
|
-
}
|
|
1552
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.stopButton) {</span>
|
|
1553
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1554
|
-
this.stopButton.style,
|
|
1555
|
-
this.widgetVisible ? styles.stopWidgetStyle : { display: 'none' },
|
|
1556
|
-
)
|
|
1557
|
-
}
|
|
1558
|
-
<span class="cstat-no" title="statement not covered" > return isVisible</span>
|
|
1559
|
-
}
|
|
1560
|
-
|
|
1561
|
-
const collapseWidget = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1562
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(rightIcon.style, {</span>
|
|
1563
|
-
transform: this.widgetVisible ? 'rotate(0deg)' : 'rotate(180deg)',
|
|
1564
|
-
})
|
|
1565
|
-
<span class="cstat-no" title="statement not covered" > toggleWidget(!this.widgetVisible)</span>
|
|
1566
|
-
}
|
|
1567
|
-
<span class="cstat-no" title="statement not covered" > titleText.onclick = collapseWidget</span>
|
|
1568
|
-
<span class="cstat-no" title="statement not covered" > rightIcon.onclick = collapseWidget</span>
|
|
1569
|
-
<span class="cstat-no" title="statement not covered" > attachDND(this.bg, leftIcon)</span>
|
|
1570
|
-
|
|
1571
|
-
<span class="cstat-no" title="statement not covered" > this.collapseWidget = <span class="fstat-no" title="function not covered" >() =</span>> <span class="cstat-no" title="statement not covered" >toggleWidget(false)</span></span>
|
|
1572
|
-
<span class="cstat-no" title="statement not covered" > return title</span>
|
|
1573
|
-
}
|
|
1574
|
-
|
|
1575
|
-
// eslint-disable-next-line @typescript-eslint/no-empty-function
|
|
1576
|
-
<span class="cstat-no" title="statement not covered" > toggleDescriptionVisibility = <span class="fstat-no" title="function not covered" >() =</span>> {}</span>
|
|
1577
|
-
|
|
1578
|
-
<span class="fstat-no" title="function not covered" > createDescriptionSection(</span>guidelines: string) {
|
|
1579
|
-
const section = <span class="cstat-no" title="statement not covered" >createElement('div', 'description_section_or', styles.descriptionWidgetStyle)</span>
|
|
1580
|
-
const titleContainer = <span class="cstat-no" title="statement not covered" >createElement('div', 'description_s_title_or', styles.sectionTitleStyle)</span>
|
|
1581
|
-
const title = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1582
|
-
'div',
|
|
1583
|
-
'title',
|
|
1584
|
-
{
|
|
1585
|
-
fontSize: 13,
|
|
1586
|
-
fontWeight: 500,
|
|
1587
|
-
lineHeight: 'auto',
|
|
1588
|
-
},
|
|
1589
|
-
'Introduction & Guidelines',
|
|
1590
|
-
)
|
|
1591
|
-
const icon = <span class="cstat-no" title="statement not covered" >createElement('div', 'icon', styles.symbolIcon, '-')</span>
|
|
1592
|
-
const content = <span class="cstat-no" title="statement not covered" >createElement('div', 'content', styles.contentStyle)</span>
|
|
1593
|
-
const descriptionC = <span class="cstat-no" title="statement not covered" >createElement('div', 'text_description', {</span>
|
|
1594
|
-
maxHeight: '250px',
|
|
1595
|
-
overflowY: 'auto',
|
|
1596
|
-
whiteSpace: 'pre-wrap',
|
|
1597
|
-
fontSize: 13,
|
|
1598
|
-
color: '#454545',
|
|
1599
|
-
lineHeight: 'auto',
|
|
1600
|
-
})
|
|
1601
|
-
<span class="cstat-no" title="statement not covered" > descriptionC.innerHTML = guidelines</span>
|
|
1602
|
-
const button = <span class="cstat-no" title="statement not covered" >createElement('div', 'button_begin_or', styles.buttonWidgetStyle, 'Begin Test')</span>
|
|
1603
|
-
|
|
1604
|
-
<span class="cstat-no" title="statement not covered" > titleContainer.append(title, icon)</span>
|
|
1605
|
-
<span class="cstat-no" title="statement not covered" > content.append(descriptionC, button)</span>
|
|
1606
|
-
<span class="cstat-no" title="statement not covered" > section.append(titleContainer, content)</span>
|
|
1607
|
-
|
|
1608
|
-
const toggleDescriptionVisibility = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1609
|
-
<span class="cstat-no" title="statement not covered" > this.widgetGuidelinesVisible = !this.widgetGuidelinesVisible</span>
|
|
1610
|
-
<span class="cstat-no" title="statement not covered" > icon.textContent = this.widgetGuidelinesVisible ? '-' : '+'</span>
|
|
1611
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1612
|
-
content.style,
|
|
1613
|
-
this.widgetGuidelinesVisible ? styles.contentStyle : { display: 'none' },
|
|
1614
|
-
)
|
|
1615
|
-
}
|
|
1616
|
-
|
|
1617
|
-
<span class="cstat-no" title="statement not covered" > titleContainer.onclick = toggleDescriptionVisibility</span>
|
|
1618
|
-
<span class="cstat-no" title="statement not covered" > this.toggleDescriptionVisibility = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1619
|
-
<span class="cstat-no" title="statement not covered" > this.widgetGuidelinesVisible = false</span>
|
|
1620
|
-
<span class="cstat-no" title="statement not covered" > icon.textContent = this.widgetGuidelinesVisible ? '-' : '+'</span>
|
|
1621
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1622
|
-
content.style,
|
|
1623
|
-
this.widgetGuidelinesVisible ? styles.contentStyle : { display: 'none' },
|
|
1624
|
-
)
|
|
1625
|
-
<span class="cstat-no" title="statement not covered" > content.removeChild(button)</span>
|
|
1626
|
-
}
|
|
1627
|
-
<span class="cstat-no" title="statement not covered" > button.onclick = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1628
|
-
<span class="cstat-no" title="statement not covered" > toggleDescriptionVisibility()</span>
|
|
1629
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.test) {</span>
|
|
1630
|
-
const durations = <span class="cstat-no" title="statement not covered" >this.signalManager?.getDurations()</span>
|
|
1631
|
-
const taskDurationInd = <span class="cstat-no" title="statement not covered" >durations</span>
|
|
1632
|
-
? durations.tasks.findIndex(<span class="fstat-no" title="function not covered" >(t</span>) => <span class="cstat-no" title="statement not covered" >this.test && t.taskId === this.test.tasks[0].task_id)</span>
|
|
1633
|
-
: null
|
|
1634
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (durations && taskDurationInd === -1) {</span>
|
|
1635
|
-
<span class="cstat-no" title="statement not covered" > durations.tasks.push({</span>
|
|
1636
|
-
taskId: this.test.tasks[0].task_id,
|
|
1637
|
-
started: this.app.timestamp(),
|
|
1638
|
-
})
|
|
1639
|
-
<span class="cstat-no" title="statement not covered" > this.signalManager?.setDurations(durations)</span>
|
|
1640
|
-
}
|
|
1641
|
-
<span class="cstat-no" title="statement not covered" > void this.signalManager?.signalTask(this.test.tasks[0].task_id, 'begin')</span>
|
|
1642
|
-
}
|
|
1643
|
-
<span class="cstat-no" title="statement not covered" > this.showTaskSection()</span>
|
|
1644
|
-
<span class="cstat-no" title="statement not covered" > content.removeChild(button)</span>
|
|
1645
|
-
}
|
|
1646
|
-
|
|
1647
|
-
<span class="cstat-no" title="statement not covered" > return section</span>
|
|
1648
|
-
}
|
|
1649
|
-
|
|
1650
|
-
<span class="cstat-no" title="statement not covered" > currentTaskIndex = 0</span>
|
|
1651
|
-
|
|
1652
|
-
<span class="fstat-no" title="function not covered" > createTasksSection(</span>
|
|
1653
|
-
tasks: {
|
|
1654
|
-
title: string
|
|
1655
|
-
description: string
|
|
1656
|
-
task_id: number
|
|
1657
|
-
allow_typing: boolean
|
|
1658
|
-
}[],
|
|
1659
|
-
) {
|
|
1660
|
-
<span class="cstat-no" title="statement not covered" > this.container.style.fontFamily = `-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol"`</span>
|
|
1661
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(this.container.style, styles.containerWidgetStyle)</span>
|
|
1662
|
-
const section = <span class="cstat-no" title="statement not covered" >createElement('div', 'task_section_or', styles.descriptionWidgetStyle)</span>
|
|
1663
|
-
const titleContainer = <span class="cstat-no" title="statement not covered" >createElement('div', 'description_t_title_or', styles.sectionTitleStyle)</span>
|
|
1664
|
-
const title = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1665
|
-
'div',
|
|
1666
|
-
'title',
|
|
1667
|
-
{
|
|
1668
|
-
fontSize: '13px',
|
|
1669
|
-
fontWeight: '500',
|
|
1670
|
-
lineHeight: 'auto',
|
|
1671
|
-
},
|
|
1672
|
-
'Tasks',
|
|
1673
|
-
)
|
|
1674
|
-
const icon = <span class="cstat-no" title="statement not covered" >createElement('div', 'icon', styles.symbolIcon, '-')</span>
|
|
1675
|
-
const content = <span class="cstat-no" title="statement not covered" >createElement('div', 'content', styles.contentStyle)</span>
|
|
1676
|
-
const pagination = <span class="cstat-no" title="statement not covered" >createElement('div', 'pagination', styles.paginationStyle)</span>
|
|
1677
|
-
// const leftArrow = createElement('span', 'leftArrow', {}, '<')
|
|
1678
|
-
// const rightArrow = createElement('span', 'rightArrow', {}, '>')
|
|
1679
|
-
const taskCard = <span class="cstat-no" title="statement not covered" >createElement('div', 'taskCard', styles.taskDescriptionCard)</span>
|
|
1680
|
-
const taskText = <span class="cstat-no" title="statement not covered" >createElement('div', 'taskText', styles.taskTextStyle)</span>
|
|
1681
|
-
const taskDescription = <span class="cstat-no" title="statement not covered" >createElement('div', 'taskDescription', styles.taskDescriptionStyle)</span>
|
|
1682
|
-
const taskButtons = <span class="cstat-no" title="statement not covered" >createElement('div', 'taskButtons', styles.taskButtonsRow)</span>
|
|
1683
|
-
const inputTitle = <span class="cstat-no" title="statement not covered" >createElement('div', 'taskText', styles.taskTextStyle)</span>
|
|
1684
|
-
<span class="cstat-no" title="statement not covered" > inputTitle.textContent = 'Your answer'</span>
|
|
1685
|
-
const inputArea = <span class="cstat-no" title="statement not covered" >createElement('textarea', 'taskDescription', {</span>
|
|
1686
|
-
resize: 'vertical',
|
|
1687
|
-
}) as HTMLTextAreaElement
|
|
1688
|
-
const inputContainer = <span class="cstat-no" title="statement not covered" >createElement('div', 'inputArea', styles.taskDescriptionCard)</span>
|
|
1689
|
-
<span class="cstat-no" title="statement not covered" > inputContainer.append(inputTitle, inputArea)</span>
|
|
1690
|
-
const closePanelButton = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1691
|
-
'div',
|
|
1692
|
-
'closePanelButton',
|
|
1693
|
-
styles.taskButtonStyle,
|
|
1694
|
-
'Collapse Panel',
|
|
1695
|
-
)
|
|
1696
|
-
const nextButton = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1697
|
-
'div',
|
|
1698
|
-
'nextButton',
|
|
1699
|
-
styles.taskButtonBorderedStyle,
|
|
1700
|
-
'Done, Next',
|
|
1701
|
-
)
|
|
1702
|
-
|
|
1703
|
-
<span class="cstat-no" title="statement not covered" > titleContainer.append(title, icon)</span>
|
|
1704
|
-
<span class="cstat-no" title="statement not covered" > taskCard.append(taskText, taskDescription)</span>
|
|
1705
|
-
<span class="cstat-no" title="statement not covered" > taskButtons.append(closePanelButton, nextButton)</span>
|
|
1706
|
-
<span class="cstat-no" title="statement not covered" > content.append(pagination, taskCard, inputContainer, taskButtons)</span>
|
|
1707
|
-
<span class="cstat-no" title="statement not covered" > section.append(titleContainer, content)</span>
|
|
1708
|
-
|
|
1709
|
-
const updateTaskContent = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1710
|
-
const task = <span class="cstat-no" title="statement not covered" >tasks[this.currentTaskIndex]</span>
|
|
1711
|
-
<span class="cstat-no" title="statement not covered" > taskText.textContent = task.title</span>
|
|
1712
|
-
<span class="cstat-no" title="statement not covered" > taskDescription.textContent = task.description</span>
|
|
1713
|
-
<span class="cstat-no" title="statement not covered" > if (task.allow_typing) {</span>
|
|
1714
|
-
<span class="cstat-no" title="statement not covered" > inputContainer.style.display = 'flex'</span>
|
|
1715
|
-
} else {
|
|
1716
|
-
<span class="cstat-no" title="statement not covered" > inputContainer.style.display = 'none'</span>
|
|
1717
|
-
}
|
|
1718
|
-
}
|
|
1719
|
-
|
|
1720
|
-
// pagination.appendChild(leftArrow)
|
|
1721
|
-
<span class="cstat-no" title="statement not covered" > tasks.forEach(<span class="fstat-no" title="function not covered" >(_</span>, index) => {</span>
|
|
1722
|
-
const pageNumber = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1723
|
-
'span',
|
|
1724
|
-
`or_task_${index}`,
|
|
1725
|
-
{
|
|
1726
|
-
outline: '1px solid #efefef',
|
|
1727
|
-
fontSize: '13px',
|
|
1728
|
-
height: '24px',
|
|
1729
|
-
width: '24px',
|
|
1730
|
-
display: 'flex',
|
|
1731
|
-
flexDirection: 'column',
|
|
1732
|
-
alignItems: 'center',
|
|
1733
|
-
justifyContent: 'center',
|
|
1734
|
-
borderRadius: '6.25em',
|
|
1735
|
-
},
|
|
1736
|
-
(index + 1).toString(),
|
|
1737
|
-
)
|
|
1738
|
-
<span class="cstat-no" title="statement not covered" > pageNumber.id = `or_task_${index}`</span>
|
|
1739
|
-
<span class="cstat-no" title="statement not covered" > pagination.append(pageNumber)</span>
|
|
1740
|
-
})
|
|
1741
|
-
// pagination.appendChild(rightArrow)
|
|
1742
|
-
|
|
1743
|
-
const toggleTasksVisibility = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1744
|
-
<span class="cstat-no" title="statement not covered" > this.widgetTasksVisible = !this.widgetTasksVisible</span>
|
|
1745
|
-
<span class="cstat-no" title="statement not covered" > icon.textContent = this.widgetTasksVisible ? '-' : '+'</span>
|
|
1746
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(</span>
|
|
1747
|
-
content.style,
|
|
1748
|
-
this.widgetTasksVisible ? styles.contentStyle : { display: 'none' },
|
|
1749
|
-
)
|
|
1750
|
-
}
|
|
1751
|
-
<span class="cstat-no" title="statement not covered" > this.hideTaskSection = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1752
|
-
<span class="cstat-no" title="statement not covered" > icon.textContent = '+'</span>
|
|
1753
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(content.style, {</span>
|
|
1754
|
-
display: 'none',
|
|
1755
|
-
})
|
|
1756
|
-
<span class="cstat-no" title="statement not covered" > this.widgetTasksVisible = false</span>
|
|
1757
|
-
<span class="cstat-no" title="statement not covered" > return false</span>
|
|
1758
|
-
}
|
|
1759
|
-
<span class="cstat-no" title="statement not covered" > this.showTaskSection = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1760
|
-
<span class="cstat-no" title="statement not covered" > icon.textContent = '-'</span>
|
|
1761
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(content.style, styles.contentStyle)</span>
|
|
1762
|
-
<span class="cstat-no" title="statement not covered" > this.widgetTasksVisible = true</span>
|
|
1763
|
-
<span class="cstat-no" title="statement not covered" > return true</span>
|
|
1764
|
-
}
|
|
1765
|
-
|
|
1766
|
-
const highlightActive = <span class="cstat-no" title="statement not covered" ><span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1767
|
-
const activeTaskEl = <span class="cstat-no" title="statement not covered" >document.getElementById(`or_task_${this.currentTaskIndex}`)</span>
|
|
1768
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (activeTaskEl) {</span>
|
|
1769
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(activeTaskEl.style, styles.taskNumberActive)</span>
|
|
1770
|
-
}
|
|
1771
|
-
<span class="cstat-no" title="statement not covered" > for (let i = <span class="cstat-no" title="statement not covered" >0;</span> i < this.currentTaskIndex; i++) {</span>
|
|
1772
|
-
const taskEl = <span class="cstat-no" title="statement not covered" >document.getElementById(`or_task_${i}`)</span>
|
|
1773
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (taskEl) {</span>
|
|
1774
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(taskEl.style, styles.taskNumberDone)</span>
|
|
1775
|
-
}
|
|
1776
|
-
}
|
|
1777
|
-
}
|
|
1778
|
-
|
|
1779
|
-
<span class="cstat-no" title="statement not covered" > titleContainer.onclick = toggleTasksVisibility</span>
|
|
1780
|
-
<span class="cstat-no" title="statement not covered" > closePanelButton.onclick = this.collapseWidget</span>
|
|
1781
|
-
|
|
1782
|
-
<span class="cstat-no" title="statement not covered" > nextButton.onclick = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1783
|
-
const textAnswer = <span class="cstat-no" title="statement not covered" >tasks[this.currentTaskIndex].allow_typing ? inputArea.value : undefined</span>
|
|
1784
|
-
<span class="cstat-no" title="statement not covered" > inputArea.value = ''</span>
|
|
1785
|
-
<span class="cstat-no" title="statement not covered" > void this.signalManager?.signalTask(tasks[this.currentTaskIndex].task_id, 'done', textAnswer)</span>
|
|
1786
|
-
<span class="cstat-no" title="statement not covered" > if (this.currentTaskIndex < tasks.length - 1) {</span>
|
|
1787
|
-
<span class="cstat-no" title="statement not covered" > this.currentTaskIndex++</span>
|
|
1788
|
-
<span class="cstat-no" title="statement not covered" > updateTaskContent()</span>
|
|
1789
|
-
const durations = <span class="cstat-no" title="statement not covered" >this.signalManager?.getDurations()</span>
|
|
1790
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (</span>
|
|
1791
|
-
durations &&
|
|
1792
|
-
durations.tasks.findIndex(<span class="fstat-no" title="function not covered" >(t</span>) => <span class="cstat-no" title="statement not covered" >t.taskId === tasks[this.currentTaskIndex].task_id)</span> === -1
|
|
1793
|
-
) {
|
|
1794
|
-
<span class="cstat-no" title="statement not covered" > durations.tasks.push({</span>
|
|
1795
|
-
taskId: tasks[this.currentTaskIndex].task_id,
|
|
1796
|
-
started: this.app.timestamp(),
|
|
1797
|
-
})
|
|
1798
|
-
<span class="cstat-no" title="statement not covered" > this.signalManager?.setDurations(durations)</span>
|
|
1799
|
-
}
|
|
1800
|
-
<span class="cstat-no" title="statement not covered" > void this.signalManager?.signalTask(tasks[this.currentTaskIndex].task_id, 'begin')</span>
|
|
1801
|
-
<span class="cstat-no" title="statement not covered" > highlightActive()</span>
|
|
1802
|
-
} else {
|
|
1803
|
-
<span class="cstat-no" title="statement not covered" > this.showEndSection()</span>
|
|
1804
|
-
}
|
|
1805
|
-
<span class="cstat-no" title="statement not covered" > this.app.localStorage.setItem('or_uxt_task_index', this.currentTaskIndex.toString())</span>
|
|
1806
|
-
}
|
|
1807
|
-
|
|
1808
|
-
<span class="cstat-no" title="statement not covered" > setTimeout(<span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1809
|
-
const firstTaskEl = <span class="cstat-no" title="statement not covered" >document.getElementById('or_task_0')</span>
|
|
1810
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (firstTaskEl) {</span>
|
|
1811
|
-
<span class="cstat-no" title="statement not covered" > Object.assign(firstTaskEl.style, styles.taskNumberActive)</span>
|
|
1812
|
-
}
|
|
1813
|
-
<span class="cstat-no" title="statement not covered" > updateTaskContent()</span>
|
|
1814
|
-
<span class="cstat-no" title="statement not covered" > highlightActive()</span>
|
|
1815
|
-
}, 1)
|
|
1816
|
-
<span class="cstat-no" title="statement not covered" > return section</span>
|
|
1817
|
-
}
|
|
1818
|
-
|
|
1819
|
-
<span class="fstat-no" title="function not covered" > showEndSection(</span>) {
|
|
1820
|
-
let isLoading = <span class="cstat-no" title="statement not covered" >true</span>
|
|
1821
|
-
<span class="cstat-no" title="statement not covered" > void this.signalManager?.signalTest('done')</span>
|
|
1822
|
-
const section = <span class="cstat-no" title="statement not covered" >createElement('div', 'end_section_or', styles.endSectionStyle)</span>
|
|
1823
|
-
const title = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1824
|
-
'div',
|
|
1825
|
-
'end_title_or',
|
|
1826
|
-
{
|
|
1827
|
-
fontSize: '1.25rem',
|
|
1828
|
-
fontWeight: '500',
|
|
1829
|
-
},
|
|
1830
|
-
'Thank you! 👍',
|
|
1831
|
-
)
|
|
1832
|
-
const description = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1833
|
-
'div',
|
|
1834
|
-
'end_description_or',
|
|
1835
|
-
{},
|
|
1836
|
-
this.test?.conclusion ??
|
|
1837
|
-
'Thank you for participating in our usability test. Your feedback has been captured and will be used to enhance our website. \n' +
|
|
1838
|
-
'\n' +
|
|
1839
|
-
'We appreciate your time and valuable input.',
|
|
1840
|
-
)
|
|
1841
|
-
const button = <span class="cstat-no" title="statement not covered" >createElement(</span>
|
|
1842
|
-
'div',
|
|
1843
|
-
'end_button_or',
|
|
1844
|
-
styles.buttonWidgetStyle,
|
|
1845
|
-
'Submitting Feedback',
|
|
1846
|
-
)
|
|
1847
|
-
const spinner = <span class="cstat-no" title="statement not covered" >createSpinner()</span>
|
|
1848
|
-
<span class="cstat-no" title="statement not covered" > button.appendChild(spinner)</span>
|
|
1849
|
-
|
|
1850
|
-
<span class="cstat-no" title="statement not covered" > if (this.test?.reqMic || this.test?.reqCamera) {</span>
|
|
1851
|
-
<span class="cstat-no" title="statement not covered" > void this.userRecorder</span>
|
|
1852
|
-
.sendToAPI()
|
|
1853
|
-
.then(<span class="fstat-no" title="function not covered" >() =</span>> {
|
|
1854
|
-
<span class="cstat-no" title="statement not covered" > button.removeChild(spinner)</span>
|
|
1855
|
-
<span class="cstat-no" title="statement not covered" > button.textContent = 'End Session'</span>
|
|
1856
|
-
<span class="cstat-no" title="statement not covered" > isLoading = false</span>
|
|
1857
|
-
})
|
|
1858
|
-
.catch(<span class="fstat-no" title="function not covered" >(e</span>rr) => {
|
|
1859
|
-
<span class="cstat-no" title="statement not covered" > console.error(err)</span>
|
|
1860
|
-
<span class="cstat-no" title="statement not covered" > button.removeChild(spinner)</span>
|
|
1861
|
-
<span class="cstat-no" title="statement not covered" > button.textContent = 'End Session'</span>
|
|
1862
|
-
<span class="cstat-no" title="statement not covered" > isLoading = false</span>
|
|
1863
|
-
})
|
|
1864
|
-
} else {
|
|
1865
|
-
<span class="cstat-no" title="statement not covered" > button.removeChild(spinner)</span>
|
|
1866
|
-
<span class="cstat-no" title="statement not covered" > button.textContent = 'End Session'</span>
|
|
1867
|
-
<span class="cstat-no" title="statement not covered" > isLoading = false</span>
|
|
1868
|
-
}
|
|
1869
|
-
|
|
1870
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.taskSection) {</span>
|
|
1871
|
-
<span class="cstat-no" title="statement not covered" > this.container.removeChild(this.taskSection)</span>
|
|
1872
|
-
}
|
|
1873
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.descriptionSection) {</span>
|
|
1874
|
-
<span class="cstat-no" title="statement not covered" > this.container.removeChild(this.descriptionSection)</span>
|
|
1875
|
-
}
|
|
1876
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (this.stopButton && this.stopButtonContainer) {</span>
|
|
1877
|
-
<span class="cstat-no" title="statement not covered" > this.container.removeChild(this.stopButtonContainer)</span>
|
|
1878
|
-
}
|
|
1879
|
-
|
|
1880
|
-
<span class="cstat-no" title="statement not covered" > button.onclick = <span class="fstat-no" title="function not covered" >() =</span>> {</span>
|
|
1881
|
-
<span class="cstat-no" title="statement not covered" > <span class="missing-if-branch" title="if path not taken" >I</span>if (isLoading) <span class="cstat-no" title="statement not covered" >return</span></span>
|
|
1882
|
-
<span class="cstat-no" title="statement not covered" > window.close()</span>
|
|
1883
|
-
<span class="cstat-no" title="statement not covered" > document.body.removeChild(this.bg)</span>
|
|
1884
|
-
}
|
|
1885
|
-
<span class="cstat-no" title="statement not covered" > section.append(title, description, button)</span>
|
|
1886
|
-
<span class="cstat-no" title="statement not covered" > this.endSection = section</span>
|
|
1887
|
-
<span class="cstat-no" title="statement not covered" > this.container.append(section)</span>
|
|
1888
|
-
}
|
|
1889
|
-
}
|
|
1890
|
-
</pre></td></tr></table></pre>
|
|
1891
|
-
|
|
1892
|
-
<div class='push'></div><!-- for sticky footer -->
|
|
1893
|
-
</div><!-- /wrapper -->
|
|
1894
|
-
<div class='footer quiet pad2 space-top1 center small'>
|
|
1895
|
-
Code coverage generated by
|
|
1896
|
-
<a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
|
|
1897
|
-
at 2024-06-04T11:50:55.506Z
|
|
1898
|
-
</div>
|
|
1899
|
-
<script src="../../../prettify.js"></script>
|
|
1900
|
-
<script>
|
|
1901
|
-
window.onload = function () {
|
|
1902
|
-
prettyPrint();
|
|
1903
|
-
};
|
|
1904
|
-
</script>
|
|
1905
|
-
<script src="../../../sorter.js"></script>
|
|
1906
|
-
<script src="../../../block-navigation.js"></script>
|
|
1907
|
-
</body>
|
|
1908
|
-
</html>
|
|
1909
|
-
|