@vpmedia/phaser 1.83.0 → 1.85.0

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.
Files changed (134) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +1 -1
  3. package/SECURITY.md +5 -0
  4. package/package.json +12 -10
  5. package/src/phaser/core/animation_manager.js +6 -2
  6. package/src/phaser/core/game.js +2 -8
  7. package/src/phaser/core/loader.js +4 -2
  8. package/src/phaser/core/sound_manager.js +9 -5
  9. package/src/phaser/display/canvas/tinter.js +4 -2
  10. package/types/phaser/core/animation_manager.d.ts.map +1 -1
  11. package/types/phaser/core/game.d.ts +0 -1
  12. package/types/phaser/core/game.d.ts.map +1 -1
  13. package/types/phaser/core/loader.d.ts.map +1 -1
  14. package/types/phaser/core/sound_manager.d.ts.map +1 -1
  15. package/types/phaser/display/canvas/tinter.d.ts.map +1 -1
  16. package/coverage/base.css +0 -224
  17. package/coverage/block-navigation.js +0 -87
  18. package/coverage/favicon.png +0 -0
  19. package/coverage/index.html +0 -236
  20. package/coverage/prettify.css +0 -1
  21. package/coverage/prettify.js +0 -2
  22. package/coverage/sort-arrow-sprite.png +0 -0
  23. package/coverage/sorter.js +0 -210
  24. package/coverage/src/index.html +0 -116
  25. package/coverage/src/index.js.html +0 -241
  26. package/coverage/src/phaser/core/animation.js.html +0 -1450
  27. package/coverage/src/phaser/core/animation_manager.js.html +0 -1117
  28. package/coverage/src/phaser/core/animation_parser.js.html +0 -373
  29. package/coverage/src/phaser/core/array_set.js.html +0 -562
  30. package/coverage/src/phaser/core/cache.js.html +0 -2404
  31. package/coverage/src/phaser/core/const.js.html +0 -901
  32. package/coverage/src/phaser/core/device.js.html +0 -373
  33. package/coverage/src/phaser/core/device_util.js.html +0 -850
  34. package/coverage/src/phaser/core/dom.js.html +0 -1042
  35. package/coverage/src/phaser/core/error_code.js.html +0 -109
  36. package/coverage/src/phaser/core/event_manager.js.html +0 -1264
  37. package/coverage/src/phaser/core/factory.js.html +0 -436
  38. package/coverage/src/phaser/core/frame.js.html +0 -415
  39. package/coverage/src/phaser/core/frame_data.js.html +0 -478
  40. package/coverage/src/phaser/core/frame_util.js.html +0 -169
  41. package/coverage/src/phaser/core/game.js.html +0 -1075
  42. package/coverage/src/phaser/core/index.html +0 -731
  43. package/coverage/src/phaser/core/input.js.html +0 -1576
  44. package/coverage/src/phaser/core/input_handler.js.html +0 -2959
  45. package/coverage/src/phaser/core/input_mouse.js.html +0 -988
  46. package/coverage/src/phaser/core/input_mspointer.js.html +0 -754
  47. package/coverage/src/phaser/core/input_pointer.js.html +0 -1645
  48. package/coverage/src/phaser/core/input_touch.js.html +0 -643
  49. package/coverage/src/phaser/core/loader.js.html +0 -3676
  50. package/coverage/src/phaser/core/loader_parser.js.html +0 -397
  51. package/coverage/src/phaser/core/raf.js.html +0 -184
  52. package/coverage/src/phaser/core/scale_manager.js.html +0 -3082
  53. package/coverage/src/phaser/core/scene.js.html +0 -265
  54. package/coverage/src/phaser/core/scene_manager.js.html +0 -1030
  55. package/coverage/src/phaser/core/signal.js.html +0 -859
  56. package/coverage/src/phaser/core/signal_binding.js.html +0 -388
  57. package/coverage/src/phaser/core/sound.js.html +0 -1678
  58. package/coverage/src/phaser/core/sound_manager.js.html +0 -1594
  59. package/coverage/src/phaser/core/sound_sprite.js.html +0 -265
  60. package/coverage/src/phaser/core/stage.js.html +0 -505
  61. package/coverage/src/phaser/core/time.js.html +0 -829
  62. package/coverage/src/phaser/core/timer.js.html +0 -1231
  63. package/coverage/src/phaser/core/timer_event.js.html +0 -157
  64. package/coverage/src/phaser/core/tween.js.html +0 -1486
  65. package/coverage/src/phaser/core/tween_data.js.html +0 -976
  66. package/coverage/src/phaser/core/tween_easing.js.html +0 -1099
  67. package/coverage/src/phaser/core/tween_manager.js.html +0 -826
  68. package/coverage/src/phaser/core/world.js.html +0 -139
  69. package/coverage/src/phaser/display/bitmap_text.js.html +0 -1423
  70. package/coverage/src/phaser/display/button.js.html +0 -916
  71. package/coverage/src/phaser/display/canvas/buffer.js.html +0 -232
  72. package/coverage/src/phaser/display/canvas/graphics.js.html +0 -766
  73. package/coverage/src/phaser/display/canvas/index.html +0 -206
  74. package/coverage/src/phaser/display/canvas/masker.js.html +0 -184
  75. package/coverage/src/phaser/display/canvas/pool.js.html +0 -445
  76. package/coverage/src/phaser/display/canvas/renderer.js.html +0 -589
  77. package/coverage/src/phaser/display/canvas/tinter.js.html +0 -658
  78. package/coverage/src/phaser/display/canvas/util.js.html +0 -544
  79. package/coverage/src/phaser/display/display_object.js.html +0 -2494
  80. package/coverage/src/phaser/display/graphics.js.html +0 -2815
  81. package/coverage/src/phaser/display/graphics_data.js.html +0 -187
  82. package/coverage/src/phaser/display/graphics_data_util.js.html +0 -139
  83. package/coverage/src/phaser/display/group.js.html +0 -1000
  84. package/coverage/src/phaser/display/image.js.html +0 -1222
  85. package/coverage/src/phaser/display/index.html +0 -266
  86. package/coverage/src/phaser/display/sprite_batch.js.html +0 -121
  87. package/coverage/src/phaser/display/sprite_util.js.html +0 -883
  88. package/coverage/src/phaser/display/text.js.html +0 -4597
  89. package/coverage/src/phaser/display/webgl/abstract_filter.js.html +0 -157
  90. package/coverage/src/phaser/display/webgl/base_texture.js.html +0 -322
  91. package/coverage/src/phaser/display/webgl/blend_manager.js.html +0 -208
  92. package/coverage/src/phaser/display/webgl/earcut.js.html +0 -2137
  93. package/coverage/src/phaser/display/webgl/earcut_node.js.html +0 -160
  94. package/coverage/src/phaser/display/webgl/fast_sprite_batch.js.html +0 -877
  95. package/coverage/src/phaser/display/webgl/filter_manager.js.html +0 -271
  96. package/coverage/src/phaser/display/webgl/filter_texture.js.html +0 -298
  97. package/coverage/src/phaser/display/webgl/graphics.js.html +0 -1942
  98. package/coverage/src/phaser/display/webgl/graphics_data.js.html +0 -214
  99. package/coverage/src/phaser/display/webgl/index.html +0 -386
  100. package/coverage/src/phaser/display/webgl/mask_manager.js.html +0 -199
  101. package/coverage/src/phaser/display/webgl/render_texture.js.html +0 -406
  102. package/coverage/src/phaser/display/webgl/renderer.js.html +0 -1003
  103. package/coverage/src/phaser/display/webgl/shader/complex.js.html +0 -316
  104. package/coverage/src/phaser/display/webgl/shader/fast.js.html +0 -406
  105. package/coverage/src/phaser/display/webgl/shader/index.html +0 -176
  106. package/coverage/src/phaser/display/webgl/shader/normal.js.html +0 -826
  107. package/coverage/src/phaser/display/webgl/shader/primitive.js.html +0 -310
  108. package/coverage/src/phaser/display/webgl/shader/strip.js.html +0 -325
  109. package/coverage/src/phaser/display/webgl/shader_manager.js.html +0 -385
  110. package/coverage/src/phaser/display/webgl/sprite_batch.js.html +0 -1135
  111. package/coverage/src/phaser/display/webgl/stencil_manager.js.html +0 -655
  112. package/coverage/src/phaser/display/webgl/texture.js.html +0 -490
  113. package/coverage/src/phaser/display/webgl/texture_util.js.html +0 -169
  114. package/coverage/src/phaser/display/webgl/util.js.html +0 -451
  115. package/coverage/src/phaser/geom/circle.js.html +0 -1003
  116. package/coverage/src/phaser/geom/ellipse.js.html +0 -388
  117. package/coverage/src/phaser/geom/index.html +0 -221
  118. package/coverage/src/phaser/geom/line.js.html +0 -1102
  119. package/coverage/src/phaser/geom/matrix.js.html +0 -751
  120. package/coverage/src/phaser/geom/point.js.html +0 -1027
  121. package/coverage/src/phaser/geom/polygon.js.html +0 -604
  122. package/coverage/src/phaser/geom/rectangle.js.html +0 -1774
  123. package/coverage/src/phaser/geom/rounded_rectangle.js.html +0 -226
  124. package/coverage/src/phaser/geom/util/circle.js.html +0 -436
  125. package/coverage/src/phaser/geom/util/ellipse.js.html +0 -139
  126. package/coverage/src/phaser/geom/util/index.html +0 -221
  127. package/coverage/src/phaser/geom/util/line.js.html +0 -475
  128. package/coverage/src/phaser/geom/util/matrix.js.html +0 -223
  129. package/coverage/src/phaser/geom/util/point.js.html +0 -961
  130. package/coverage/src/phaser/geom/util/polygon.js.html +0 -124
  131. package/coverage/src/phaser/geom/util/rectangle.js.html +0 -784
  132. package/coverage/src/phaser/geom/util/rounded_rectangle.js.html +0 -136
  133. package/coverage/src/phaser/util/index.html +0 -116
  134. package/coverage/src/phaser/util/math.js.html +0 -958
@@ -1,3676 +0,0 @@
1
-
2
- <!doctype html>
3
- <html lang="en">
4
-
5
- <head>
6
- <title>Code coverage report for src/phaser/core/loader.js</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">src/phaser/core</a> loader.js</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/1146</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/1</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/1</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/1146</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 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>
675
- <a name='L610'></a><a href='#L610'>610</a>
676
- <a name='L611'></a><a href='#L611'>611</a>
677
- <a name='L612'></a><a href='#L612'>612</a>
678
- <a name='L613'></a><a href='#L613'>613</a>
679
- <a name='L614'></a><a href='#L614'>614</a>
680
- <a name='L615'></a><a href='#L615'>615</a>
681
- <a name='L616'></a><a href='#L616'>616</a>
682
- <a name='L617'></a><a href='#L617'>617</a>
683
- <a name='L618'></a><a href='#L618'>618</a>
684
- <a name='L619'></a><a href='#L619'>619</a>
685
- <a name='L620'></a><a href='#L620'>620</a>
686
- <a name='L621'></a><a href='#L621'>621</a>
687
- <a name='L622'></a><a href='#L622'>622</a>
688
- <a name='L623'></a><a href='#L623'>623</a>
689
- <a name='L624'></a><a href='#L624'>624</a>
690
- <a name='L625'></a><a href='#L625'>625</a>
691
- <a name='L626'></a><a href='#L626'>626</a>
692
- <a name='L627'></a><a href='#L627'>627</a>
693
- <a name='L628'></a><a href='#L628'>628</a>
694
- <a name='L629'></a><a href='#L629'>629</a>
695
- <a name='L630'></a><a href='#L630'>630</a>
696
- <a name='L631'></a><a href='#L631'>631</a>
697
- <a name='L632'></a><a href='#L632'>632</a>
698
- <a name='L633'></a><a href='#L633'>633</a>
699
- <a name='L634'></a><a href='#L634'>634</a>
700
- <a name='L635'></a><a href='#L635'>635</a>
701
- <a name='L636'></a><a href='#L636'>636</a>
702
- <a name='L637'></a><a href='#L637'>637</a>
703
- <a name='L638'></a><a href='#L638'>638</a>
704
- <a name='L639'></a><a href='#L639'>639</a>
705
- <a name='L640'></a><a href='#L640'>640</a>
706
- <a name='L641'></a><a href='#L641'>641</a>
707
- <a name='L642'></a><a href='#L642'>642</a>
708
- <a name='L643'></a><a href='#L643'>643</a>
709
- <a name='L644'></a><a href='#L644'>644</a>
710
- <a name='L645'></a><a href='#L645'>645</a>
711
- <a name='L646'></a><a href='#L646'>646</a>
712
- <a name='L647'></a><a href='#L647'>647</a>
713
- <a name='L648'></a><a href='#L648'>648</a>
714
- <a name='L649'></a><a href='#L649'>649</a>
715
- <a name='L650'></a><a href='#L650'>650</a>
716
- <a name='L651'></a><a href='#L651'>651</a>
717
- <a name='L652'></a><a href='#L652'>652</a>
718
- <a name='L653'></a><a href='#L653'>653</a>
719
- <a name='L654'></a><a href='#L654'>654</a>
720
- <a name='L655'></a><a href='#L655'>655</a>
721
- <a name='L656'></a><a href='#L656'>656</a>
722
- <a name='L657'></a><a href='#L657'>657</a>
723
- <a name='L658'></a><a href='#L658'>658</a>
724
- <a name='L659'></a><a href='#L659'>659</a>
725
- <a name='L660'></a><a href='#L660'>660</a>
726
- <a name='L661'></a><a href='#L661'>661</a>
727
- <a name='L662'></a><a href='#L662'>662</a>
728
- <a name='L663'></a><a href='#L663'>663</a>
729
- <a name='L664'></a><a href='#L664'>664</a>
730
- <a name='L665'></a><a href='#L665'>665</a>
731
- <a name='L666'></a><a href='#L666'>666</a>
732
- <a name='L667'></a><a href='#L667'>667</a>
733
- <a name='L668'></a><a href='#L668'>668</a>
734
- <a name='L669'></a><a href='#L669'>669</a>
735
- <a name='L670'></a><a href='#L670'>670</a>
736
- <a name='L671'></a><a href='#L671'>671</a>
737
- <a name='L672'></a><a href='#L672'>672</a>
738
- <a name='L673'></a><a href='#L673'>673</a>
739
- <a name='L674'></a><a href='#L674'>674</a>
740
- <a name='L675'></a><a href='#L675'>675</a>
741
- <a name='L676'></a><a href='#L676'>676</a>
742
- <a name='L677'></a><a href='#L677'>677</a>
743
- <a name='L678'></a><a href='#L678'>678</a>
744
- <a name='L679'></a><a href='#L679'>679</a>
745
- <a name='L680'></a><a href='#L680'>680</a>
746
- <a name='L681'></a><a href='#L681'>681</a>
747
- <a name='L682'></a><a href='#L682'>682</a>
748
- <a name='L683'></a><a href='#L683'>683</a>
749
- <a name='L684'></a><a href='#L684'>684</a>
750
- <a name='L685'></a><a href='#L685'>685</a>
751
- <a name='L686'></a><a href='#L686'>686</a>
752
- <a name='L687'></a><a href='#L687'>687</a>
753
- <a name='L688'></a><a href='#L688'>688</a>
754
- <a name='L689'></a><a href='#L689'>689</a>
755
- <a name='L690'></a><a href='#L690'>690</a>
756
- <a name='L691'></a><a href='#L691'>691</a>
757
- <a name='L692'></a><a href='#L692'>692</a>
758
- <a name='L693'></a><a href='#L693'>693</a>
759
- <a name='L694'></a><a href='#L694'>694</a>
760
- <a name='L695'></a><a href='#L695'>695</a>
761
- <a name='L696'></a><a href='#L696'>696</a>
762
- <a name='L697'></a><a href='#L697'>697</a>
763
- <a name='L698'></a><a href='#L698'>698</a>
764
- <a name='L699'></a><a href='#L699'>699</a>
765
- <a name='L700'></a><a href='#L700'>700</a>
766
- <a name='L701'></a><a href='#L701'>701</a>
767
- <a name='L702'></a><a href='#L702'>702</a>
768
- <a name='L703'></a><a href='#L703'>703</a>
769
- <a name='L704'></a><a href='#L704'>704</a>
770
- <a name='L705'></a><a href='#L705'>705</a>
771
- <a name='L706'></a><a href='#L706'>706</a>
772
- <a name='L707'></a><a href='#L707'>707</a>
773
- <a name='L708'></a><a href='#L708'>708</a>
774
- <a name='L709'></a><a href='#L709'>709</a>
775
- <a name='L710'></a><a href='#L710'>710</a>
776
- <a name='L711'></a><a href='#L711'>711</a>
777
- <a name='L712'></a><a href='#L712'>712</a>
778
- <a name='L713'></a><a href='#L713'>713</a>
779
- <a name='L714'></a><a href='#L714'>714</a>
780
- <a name='L715'></a><a href='#L715'>715</a>
781
- <a name='L716'></a><a href='#L716'>716</a>
782
- <a name='L717'></a><a href='#L717'>717</a>
783
- <a name='L718'></a><a href='#L718'>718</a>
784
- <a name='L719'></a><a href='#L719'>719</a>
785
- <a name='L720'></a><a href='#L720'>720</a>
786
- <a name='L721'></a><a href='#L721'>721</a>
787
- <a name='L722'></a><a href='#L722'>722</a>
788
- <a name='L723'></a><a href='#L723'>723</a>
789
- <a name='L724'></a><a href='#L724'>724</a>
790
- <a name='L725'></a><a href='#L725'>725</a>
791
- <a name='L726'></a><a href='#L726'>726</a>
792
- <a name='L727'></a><a href='#L727'>727</a>
793
- <a name='L728'></a><a href='#L728'>728</a>
794
- <a name='L729'></a><a href='#L729'>729</a>
795
- <a name='L730'></a><a href='#L730'>730</a>
796
- <a name='L731'></a><a href='#L731'>731</a>
797
- <a name='L732'></a><a href='#L732'>732</a>
798
- <a name='L733'></a><a href='#L733'>733</a>
799
- <a name='L734'></a><a href='#L734'>734</a>
800
- <a name='L735'></a><a href='#L735'>735</a>
801
- <a name='L736'></a><a href='#L736'>736</a>
802
- <a name='L737'></a><a href='#L737'>737</a>
803
- <a name='L738'></a><a href='#L738'>738</a>
804
- <a name='L739'></a><a href='#L739'>739</a>
805
- <a name='L740'></a><a href='#L740'>740</a>
806
- <a name='L741'></a><a href='#L741'>741</a>
807
- <a name='L742'></a><a href='#L742'>742</a>
808
- <a name='L743'></a><a href='#L743'>743</a>
809
- <a name='L744'></a><a href='#L744'>744</a>
810
- <a name='L745'></a><a href='#L745'>745</a>
811
- <a name='L746'></a><a href='#L746'>746</a>
812
- <a name='L747'></a><a href='#L747'>747</a>
813
- <a name='L748'></a><a href='#L748'>748</a>
814
- <a name='L749'></a><a href='#L749'>749</a>
815
- <a name='L750'></a><a href='#L750'>750</a>
816
- <a name='L751'></a><a href='#L751'>751</a>
817
- <a name='L752'></a><a href='#L752'>752</a>
818
- <a name='L753'></a><a href='#L753'>753</a>
819
- <a name='L754'></a><a href='#L754'>754</a>
820
- <a name='L755'></a><a href='#L755'>755</a>
821
- <a name='L756'></a><a href='#L756'>756</a>
822
- <a name='L757'></a><a href='#L757'>757</a>
823
- <a name='L758'></a><a href='#L758'>758</a>
824
- <a name='L759'></a><a href='#L759'>759</a>
825
- <a name='L760'></a><a href='#L760'>760</a>
826
- <a name='L761'></a><a href='#L761'>761</a>
827
- <a name='L762'></a><a href='#L762'>762</a>
828
- <a name='L763'></a><a href='#L763'>763</a>
829
- <a name='L764'></a><a href='#L764'>764</a>
830
- <a name='L765'></a><a href='#L765'>765</a>
831
- <a name='L766'></a><a href='#L766'>766</a>
832
- <a name='L767'></a><a href='#L767'>767</a>
833
- <a name='L768'></a><a href='#L768'>768</a>
834
- <a name='L769'></a><a href='#L769'>769</a>
835
- <a name='L770'></a><a href='#L770'>770</a>
836
- <a name='L771'></a><a href='#L771'>771</a>
837
- <a name='L772'></a><a href='#L772'>772</a>
838
- <a name='L773'></a><a href='#L773'>773</a>
839
- <a name='L774'></a><a href='#L774'>774</a>
840
- <a name='L775'></a><a href='#L775'>775</a>
841
- <a name='L776'></a><a href='#L776'>776</a>
842
- <a name='L777'></a><a href='#L777'>777</a>
843
- <a name='L778'></a><a href='#L778'>778</a>
844
- <a name='L779'></a><a href='#L779'>779</a>
845
- <a name='L780'></a><a href='#L780'>780</a>
846
- <a name='L781'></a><a href='#L781'>781</a>
847
- <a name='L782'></a><a href='#L782'>782</a>
848
- <a name='L783'></a><a href='#L783'>783</a>
849
- <a name='L784'></a><a href='#L784'>784</a>
850
- <a name='L785'></a><a href='#L785'>785</a>
851
- <a name='L786'></a><a href='#L786'>786</a>
852
- <a name='L787'></a><a href='#L787'>787</a>
853
- <a name='L788'></a><a href='#L788'>788</a>
854
- <a name='L789'></a><a href='#L789'>789</a>
855
- <a name='L790'></a><a href='#L790'>790</a>
856
- <a name='L791'></a><a href='#L791'>791</a>
857
- <a name='L792'></a><a href='#L792'>792</a>
858
- <a name='L793'></a><a href='#L793'>793</a>
859
- <a name='L794'></a><a href='#L794'>794</a>
860
- <a name='L795'></a><a href='#L795'>795</a>
861
- <a name='L796'></a><a href='#L796'>796</a>
862
- <a name='L797'></a><a href='#L797'>797</a>
863
- <a name='L798'></a><a href='#L798'>798</a>
864
- <a name='L799'></a><a href='#L799'>799</a>
865
- <a name='L800'></a><a href='#L800'>800</a>
866
- <a name='L801'></a><a href='#L801'>801</a>
867
- <a name='L802'></a><a href='#L802'>802</a>
868
- <a name='L803'></a><a href='#L803'>803</a>
869
- <a name='L804'></a><a href='#L804'>804</a>
870
- <a name='L805'></a><a href='#L805'>805</a>
871
- <a name='L806'></a><a href='#L806'>806</a>
872
- <a name='L807'></a><a href='#L807'>807</a>
873
- <a name='L808'></a><a href='#L808'>808</a>
874
- <a name='L809'></a><a href='#L809'>809</a>
875
- <a name='L810'></a><a href='#L810'>810</a>
876
- <a name='L811'></a><a href='#L811'>811</a>
877
- <a name='L812'></a><a href='#L812'>812</a>
878
- <a name='L813'></a><a href='#L813'>813</a>
879
- <a name='L814'></a><a href='#L814'>814</a>
880
- <a name='L815'></a><a href='#L815'>815</a>
881
- <a name='L816'></a><a href='#L816'>816</a>
882
- <a name='L817'></a><a href='#L817'>817</a>
883
- <a name='L818'></a><a href='#L818'>818</a>
884
- <a name='L819'></a><a href='#L819'>819</a>
885
- <a name='L820'></a><a href='#L820'>820</a>
886
- <a name='L821'></a><a href='#L821'>821</a>
887
- <a name='L822'></a><a href='#L822'>822</a>
888
- <a name='L823'></a><a href='#L823'>823</a>
889
- <a name='L824'></a><a href='#L824'>824</a>
890
- <a name='L825'></a><a href='#L825'>825</a>
891
- <a name='L826'></a><a href='#L826'>826</a>
892
- <a name='L827'></a><a href='#L827'>827</a>
893
- <a name='L828'></a><a href='#L828'>828</a>
894
- <a name='L829'></a><a href='#L829'>829</a>
895
- <a name='L830'></a><a href='#L830'>830</a>
896
- <a name='L831'></a><a href='#L831'>831</a>
897
- <a name='L832'></a><a href='#L832'>832</a>
898
- <a name='L833'></a><a href='#L833'>833</a>
899
- <a name='L834'></a><a href='#L834'>834</a>
900
- <a name='L835'></a><a href='#L835'>835</a>
901
- <a name='L836'></a><a href='#L836'>836</a>
902
- <a name='L837'></a><a href='#L837'>837</a>
903
- <a name='L838'></a><a href='#L838'>838</a>
904
- <a name='L839'></a><a href='#L839'>839</a>
905
- <a name='L840'></a><a href='#L840'>840</a>
906
- <a name='L841'></a><a href='#L841'>841</a>
907
- <a name='L842'></a><a href='#L842'>842</a>
908
- <a name='L843'></a><a href='#L843'>843</a>
909
- <a name='L844'></a><a href='#L844'>844</a>
910
- <a name='L845'></a><a href='#L845'>845</a>
911
- <a name='L846'></a><a href='#L846'>846</a>
912
- <a name='L847'></a><a href='#L847'>847</a>
913
- <a name='L848'></a><a href='#L848'>848</a>
914
- <a name='L849'></a><a href='#L849'>849</a>
915
- <a name='L850'></a><a href='#L850'>850</a>
916
- <a name='L851'></a><a href='#L851'>851</a>
917
- <a name='L852'></a><a href='#L852'>852</a>
918
- <a name='L853'></a><a href='#L853'>853</a>
919
- <a name='L854'></a><a href='#L854'>854</a>
920
- <a name='L855'></a><a href='#L855'>855</a>
921
- <a name='L856'></a><a href='#L856'>856</a>
922
- <a name='L857'></a><a href='#L857'>857</a>
923
- <a name='L858'></a><a href='#L858'>858</a>
924
- <a name='L859'></a><a href='#L859'>859</a>
925
- <a name='L860'></a><a href='#L860'>860</a>
926
- <a name='L861'></a><a href='#L861'>861</a>
927
- <a name='L862'></a><a href='#L862'>862</a>
928
- <a name='L863'></a><a href='#L863'>863</a>
929
- <a name='L864'></a><a href='#L864'>864</a>
930
- <a name='L865'></a><a href='#L865'>865</a>
931
- <a name='L866'></a><a href='#L866'>866</a>
932
- <a name='L867'></a><a href='#L867'>867</a>
933
- <a name='L868'></a><a href='#L868'>868</a>
934
- <a name='L869'></a><a href='#L869'>869</a>
935
- <a name='L870'></a><a href='#L870'>870</a>
936
- <a name='L871'></a><a href='#L871'>871</a>
937
- <a name='L872'></a><a href='#L872'>872</a>
938
- <a name='L873'></a><a href='#L873'>873</a>
939
- <a name='L874'></a><a href='#L874'>874</a>
940
- <a name='L875'></a><a href='#L875'>875</a>
941
- <a name='L876'></a><a href='#L876'>876</a>
942
- <a name='L877'></a><a href='#L877'>877</a>
943
- <a name='L878'></a><a href='#L878'>878</a>
944
- <a name='L879'></a><a href='#L879'>879</a>
945
- <a name='L880'></a><a href='#L880'>880</a>
946
- <a name='L881'></a><a href='#L881'>881</a>
947
- <a name='L882'></a><a href='#L882'>882</a>
948
- <a name='L883'></a><a href='#L883'>883</a>
949
- <a name='L884'></a><a href='#L884'>884</a>
950
- <a name='L885'></a><a href='#L885'>885</a>
951
- <a name='L886'></a><a href='#L886'>886</a>
952
- <a name='L887'></a><a href='#L887'>887</a>
953
- <a name='L888'></a><a href='#L888'>888</a>
954
- <a name='L889'></a><a href='#L889'>889</a>
955
- <a name='L890'></a><a href='#L890'>890</a>
956
- <a name='L891'></a><a href='#L891'>891</a>
957
- <a name='L892'></a><a href='#L892'>892</a>
958
- <a name='L893'></a><a href='#L893'>893</a>
959
- <a name='L894'></a><a href='#L894'>894</a>
960
- <a name='L895'></a><a href='#L895'>895</a>
961
- <a name='L896'></a><a href='#L896'>896</a>
962
- <a name='L897'></a><a href='#L897'>897</a>
963
- <a name='L898'></a><a href='#L898'>898</a>
964
- <a name='L899'></a><a href='#L899'>899</a>
965
- <a name='L900'></a><a href='#L900'>900</a>
966
- <a name='L901'></a><a href='#L901'>901</a>
967
- <a name='L902'></a><a href='#L902'>902</a>
968
- <a name='L903'></a><a href='#L903'>903</a>
969
- <a name='L904'></a><a href='#L904'>904</a>
970
- <a name='L905'></a><a href='#L905'>905</a>
971
- <a name='L906'></a><a href='#L906'>906</a>
972
- <a name='L907'></a><a href='#L907'>907</a>
973
- <a name='L908'></a><a href='#L908'>908</a>
974
- <a name='L909'></a><a href='#L909'>909</a>
975
- <a name='L910'></a><a href='#L910'>910</a>
976
- <a name='L911'></a><a href='#L911'>911</a>
977
- <a name='L912'></a><a href='#L912'>912</a>
978
- <a name='L913'></a><a href='#L913'>913</a>
979
- <a name='L914'></a><a href='#L914'>914</a>
980
- <a name='L915'></a><a href='#L915'>915</a>
981
- <a name='L916'></a><a href='#L916'>916</a>
982
- <a name='L917'></a><a href='#L917'>917</a>
983
- <a name='L918'></a><a href='#L918'>918</a>
984
- <a name='L919'></a><a href='#L919'>919</a>
985
- <a name='L920'></a><a href='#L920'>920</a>
986
- <a name='L921'></a><a href='#L921'>921</a>
987
- <a name='L922'></a><a href='#L922'>922</a>
988
- <a name='L923'></a><a href='#L923'>923</a>
989
- <a name='L924'></a><a href='#L924'>924</a>
990
- <a name='L925'></a><a href='#L925'>925</a>
991
- <a name='L926'></a><a href='#L926'>926</a>
992
- <a name='L927'></a><a href='#L927'>927</a>
993
- <a name='L928'></a><a href='#L928'>928</a>
994
- <a name='L929'></a><a href='#L929'>929</a>
995
- <a name='L930'></a><a href='#L930'>930</a>
996
- <a name='L931'></a><a href='#L931'>931</a>
997
- <a name='L932'></a><a href='#L932'>932</a>
998
- <a name='L933'></a><a href='#L933'>933</a>
999
- <a name='L934'></a><a href='#L934'>934</a>
1000
- <a name='L935'></a><a href='#L935'>935</a>
1001
- <a name='L936'></a><a href='#L936'>936</a>
1002
- <a name='L937'></a><a href='#L937'>937</a>
1003
- <a name='L938'></a><a href='#L938'>938</a>
1004
- <a name='L939'></a><a href='#L939'>939</a>
1005
- <a name='L940'></a><a href='#L940'>940</a>
1006
- <a name='L941'></a><a href='#L941'>941</a>
1007
- <a name='L942'></a><a href='#L942'>942</a>
1008
- <a name='L943'></a><a href='#L943'>943</a>
1009
- <a name='L944'></a><a href='#L944'>944</a>
1010
- <a name='L945'></a><a href='#L945'>945</a>
1011
- <a name='L946'></a><a href='#L946'>946</a>
1012
- <a name='L947'></a><a href='#L947'>947</a>
1013
- <a name='L948'></a><a href='#L948'>948</a>
1014
- <a name='L949'></a><a href='#L949'>949</a>
1015
- <a name='L950'></a><a href='#L950'>950</a>
1016
- <a name='L951'></a><a href='#L951'>951</a>
1017
- <a name='L952'></a><a href='#L952'>952</a>
1018
- <a name='L953'></a><a href='#L953'>953</a>
1019
- <a name='L954'></a><a href='#L954'>954</a>
1020
- <a name='L955'></a><a href='#L955'>955</a>
1021
- <a name='L956'></a><a href='#L956'>956</a>
1022
- <a name='L957'></a><a href='#L957'>957</a>
1023
- <a name='L958'></a><a href='#L958'>958</a>
1024
- <a name='L959'></a><a href='#L959'>959</a>
1025
- <a name='L960'></a><a href='#L960'>960</a>
1026
- <a name='L961'></a><a href='#L961'>961</a>
1027
- <a name='L962'></a><a href='#L962'>962</a>
1028
- <a name='L963'></a><a href='#L963'>963</a>
1029
- <a name='L964'></a><a href='#L964'>964</a>
1030
- <a name='L965'></a><a href='#L965'>965</a>
1031
- <a name='L966'></a><a href='#L966'>966</a>
1032
- <a name='L967'></a><a href='#L967'>967</a>
1033
- <a name='L968'></a><a href='#L968'>968</a>
1034
- <a name='L969'></a><a href='#L969'>969</a>
1035
- <a name='L970'></a><a href='#L970'>970</a>
1036
- <a name='L971'></a><a href='#L971'>971</a>
1037
- <a name='L972'></a><a href='#L972'>972</a>
1038
- <a name='L973'></a><a href='#L973'>973</a>
1039
- <a name='L974'></a><a href='#L974'>974</a>
1040
- <a name='L975'></a><a href='#L975'>975</a>
1041
- <a name='L976'></a><a href='#L976'>976</a>
1042
- <a name='L977'></a><a href='#L977'>977</a>
1043
- <a name='L978'></a><a href='#L978'>978</a>
1044
- <a name='L979'></a><a href='#L979'>979</a>
1045
- <a name='L980'></a><a href='#L980'>980</a>
1046
- <a name='L981'></a><a href='#L981'>981</a>
1047
- <a name='L982'></a><a href='#L982'>982</a>
1048
- <a name='L983'></a><a href='#L983'>983</a>
1049
- <a name='L984'></a><a href='#L984'>984</a>
1050
- <a name='L985'></a><a href='#L985'>985</a>
1051
- <a name='L986'></a><a href='#L986'>986</a>
1052
- <a name='L987'></a><a href='#L987'>987</a>
1053
- <a name='L988'></a><a href='#L988'>988</a>
1054
- <a name='L989'></a><a href='#L989'>989</a>
1055
- <a name='L990'></a><a href='#L990'>990</a>
1056
- <a name='L991'></a><a href='#L991'>991</a>
1057
- <a name='L992'></a><a href='#L992'>992</a>
1058
- <a name='L993'></a><a href='#L993'>993</a>
1059
- <a name='L994'></a><a href='#L994'>994</a>
1060
- <a name='L995'></a><a href='#L995'>995</a>
1061
- <a name='L996'></a><a href='#L996'>996</a>
1062
- <a name='L997'></a><a href='#L997'>997</a>
1063
- <a name='L998'></a><a href='#L998'>998</a>
1064
- <a name='L999'></a><a href='#L999'>999</a>
1065
- <a name='L1000'></a><a href='#L1000'>1000</a>
1066
- <a name='L1001'></a><a href='#L1001'>1001</a>
1067
- <a name='L1002'></a><a href='#L1002'>1002</a>
1068
- <a name='L1003'></a><a href='#L1003'>1003</a>
1069
- <a name='L1004'></a><a href='#L1004'>1004</a>
1070
- <a name='L1005'></a><a href='#L1005'>1005</a>
1071
- <a name='L1006'></a><a href='#L1006'>1006</a>
1072
- <a name='L1007'></a><a href='#L1007'>1007</a>
1073
- <a name='L1008'></a><a href='#L1008'>1008</a>
1074
- <a name='L1009'></a><a href='#L1009'>1009</a>
1075
- <a name='L1010'></a><a href='#L1010'>1010</a>
1076
- <a name='L1011'></a><a href='#L1011'>1011</a>
1077
- <a name='L1012'></a><a href='#L1012'>1012</a>
1078
- <a name='L1013'></a><a href='#L1013'>1013</a>
1079
- <a name='L1014'></a><a href='#L1014'>1014</a>
1080
- <a name='L1015'></a><a href='#L1015'>1015</a>
1081
- <a name='L1016'></a><a href='#L1016'>1016</a>
1082
- <a name='L1017'></a><a href='#L1017'>1017</a>
1083
- <a name='L1018'></a><a href='#L1018'>1018</a>
1084
- <a name='L1019'></a><a href='#L1019'>1019</a>
1085
- <a name='L1020'></a><a href='#L1020'>1020</a>
1086
- <a name='L1021'></a><a href='#L1021'>1021</a>
1087
- <a name='L1022'></a><a href='#L1022'>1022</a>
1088
- <a name='L1023'></a><a href='#L1023'>1023</a>
1089
- <a name='L1024'></a><a href='#L1024'>1024</a>
1090
- <a name='L1025'></a><a href='#L1025'>1025</a>
1091
- <a name='L1026'></a><a href='#L1026'>1026</a>
1092
- <a name='L1027'></a><a href='#L1027'>1027</a>
1093
- <a name='L1028'></a><a href='#L1028'>1028</a>
1094
- <a name='L1029'></a><a href='#L1029'>1029</a>
1095
- <a name='L1030'></a><a href='#L1030'>1030</a>
1096
- <a name='L1031'></a><a href='#L1031'>1031</a>
1097
- <a name='L1032'></a><a href='#L1032'>1032</a>
1098
- <a name='L1033'></a><a href='#L1033'>1033</a>
1099
- <a name='L1034'></a><a href='#L1034'>1034</a>
1100
- <a name='L1035'></a><a href='#L1035'>1035</a>
1101
- <a name='L1036'></a><a href='#L1036'>1036</a>
1102
- <a name='L1037'></a><a href='#L1037'>1037</a>
1103
- <a name='L1038'></a><a href='#L1038'>1038</a>
1104
- <a name='L1039'></a><a href='#L1039'>1039</a>
1105
- <a name='L1040'></a><a href='#L1040'>1040</a>
1106
- <a name='L1041'></a><a href='#L1041'>1041</a>
1107
- <a name='L1042'></a><a href='#L1042'>1042</a>
1108
- <a name='L1043'></a><a href='#L1043'>1043</a>
1109
- <a name='L1044'></a><a href='#L1044'>1044</a>
1110
- <a name='L1045'></a><a href='#L1045'>1045</a>
1111
- <a name='L1046'></a><a href='#L1046'>1046</a>
1112
- <a name='L1047'></a><a href='#L1047'>1047</a>
1113
- <a name='L1048'></a><a href='#L1048'>1048</a>
1114
- <a name='L1049'></a><a href='#L1049'>1049</a>
1115
- <a name='L1050'></a><a href='#L1050'>1050</a>
1116
- <a name='L1051'></a><a href='#L1051'>1051</a>
1117
- <a name='L1052'></a><a href='#L1052'>1052</a>
1118
- <a name='L1053'></a><a href='#L1053'>1053</a>
1119
- <a name='L1054'></a><a href='#L1054'>1054</a>
1120
- <a name='L1055'></a><a href='#L1055'>1055</a>
1121
- <a name='L1056'></a><a href='#L1056'>1056</a>
1122
- <a name='L1057'></a><a href='#L1057'>1057</a>
1123
- <a name='L1058'></a><a href='#L1058'>1058</a>
1124
- <a name='L1059'></a><a href='#L1059'>1059</a>
1125
- <a name='L1060'></a><a href='#L1060'>1060</a>
1126
- <a name='L1061'></a><a href='#L1061'>1061</a>
1127
- <a name='L1062'></a><a href='#L1062'>1062</a>
1128
- <a name='L1063'></a><a href='#L1063'>1063</a>
1129
- <a name='L1064'></a><a href='#L1064'>1064</a>
1130
- <a name='L1065'></a><a href='#L1065'>1065</a>
1131
- <a name='L1066'></a><a href='#L1066'>1066</a>
1132
- <a name='L1067'></a><a href='#L1067'>1067</a>
1133
- <a name='L1068'></a><a href='#L1068'>1068</a>
1134
- <a name='L1069'></a><a href='#L1069'>1069</a>
1135
- <a name='L1070'></a><a href='#L1070'>1070</a>
1136
- <a name='L1071'></a><a href='#L1071'>1071</a>
1137
- <a name='L1072'></a><a href='#L1072'>1072</a>
1138
- <a name='L1073'></a><a href='#L1073'>1073</a>
1139
- <a name='L1074'></a><a href='#L1074'>1074</a>
1140
- <a name='L1075'></a><a href='#L1075'>1075</a>
1141
- <a name='L1076'></a><a href='#L1076'>1076</a>
1142
- <a name='L1077'></a><a href='#L1077'>1077</a>
1143
- <a name='L1078'></a><a href='#L1078'>1078</a>
1144
- <a name='L1079'></a><a href='#L1079'>1079</a>
1145
- <a name='L1080'></a><a href='#L1080'>1080</a>
1146
- <a name='L1081'></a><a href='#L1081'>1081</a>
1147
- <a name='L1082'></a><a href='#L1082'>1082</a>
1148
- <a name='L1083'></a><a href='#L1083'>1083</a>
1149
- <a name='L1084'></a><a href='#L1084'>1084</a>
1150
- <a name='L1085'></a><a href='#L1085'>1085</a>
1151
- <a name='L1086'></a><a href='#L1086'>1086</a>
1152
- <a name='L1087'></a><a href='#L1087'>1087</a>
1153
- <a name='L1088'></a><a href='#L1088'>1088</a>
1154
- <a name='L1089'></a><a href='#L1089'>1089</a>
1155
- <a name='L1090'></a><a href='#L1090'>1090</a>
1156
- <a name='L1091'></a><a href='#L1091'>1091</a>
1157
- <a name='L1092'></a><a href='#L1092'>1092</a>
1158
- <a name='L1093'></a><a href='#L1093'>1093</a>
1159
- <a name='L1094'></a><a href='#L1094'>1094</a>
1160
- <a name='L1095'></a><a href='#L1095'>1095</a>
1161
- <a name='L1096'></a><a href='#L1096'>1096</a>
1162
- <a name='L1097'></a><a href='#L1097'>1097</a>
1163
- <a name='L1098'></a><a href='#L1098'>1098</a>
1164
- <a name='L1099'></a><a href='#L1099'>1099</a>
1165
- <a name='L1100'></a><a href='#L1100'>1100</a>
1166
- <a name='L1101'></a><a href='#L1101'>1101</a>
1167
- <a name='L1102'></a><a href='#L1102'>1102</a>
1168
- <a name='L1103'></a><a href='#L1103'>1103</a>
1169
- <a name='L1104'></a><a href='#L1104'>1104</a>
1170
- <a name='L1105'></a><a href='#L1105'>1105</a>
1171
- <a name='L1106'></a><a href='#L1106'>1106</a>
1172
- <a name='L1107'></a><a href='#L1107'>1107</a>
1173
- <a name='L1108'></a><a href='#L1108'>1108</a>
1174
- <a name='L1109'></a><a href='#L1109'>1109</a>
1175
- <a name='L1110'></a><a href='#L1110'>1110</a>
1176
- <a name='L1111'></a><a href='#L1111'>1111</a>
1177
- <a name='L1112'></a><a href='#L1112'>1112</a>
1178
- <a name='L1113'></a><a href='#L1113'>1113</a>
1179
- <a name='L1114'></a><a href='#L1114'>1114</a>
1180
- <a name='L1115'></a><a href='#L1115'>1115</a>
1181
- <a name='L1116'></a><a href='#L1116'>1116</a>
1182
- <a name='L1117'></a><a href='#L1117'>1117</a>
1183
- <a name='L1118'></a><a href='#L1118'>1118</a>
1184
- <a name='L1119'></a><a href='#L1119'>1119</a>
1185
- <a name='L1120'></a><a href='#L1120'>1120</a>
1186
- <a name='L1121'></a><a href='#L1121'>1121</a>
1187
- <a name='L1122'></a><a href='#L1122'>1122</a>
1188
- <a name='L1123'></a><a href='#L1123'>1123</a>
1189
- <a name='L1124'></a><a href='#L1124'>1124</a>
1190
- <a name='L1125'></a><a href='#L1125'>1125</a>
1191
- <a name='L1126'></a><a href='#L1126'>1126</a>
1192
- <a name='L1127'></a><a href='#L1127'>1127</a>
1193
- <a name='L1128'></a><a href='#L1128'>1128</a>
1194
- <a name='L1129'></a><a href='#L1129'>1129</a>
1195
- <a name='L1130'></a><a href='#L1130'>1130</a>
1196
- <a name='L1131'></a><a href='#L1131'>1131</a>
1197
- <a name='L1132'></a><a href='#L1132'>1132</a>
1198
- <a name='L1133'></a><a href='#L1133'>1133</a>
1199
- <a name='L1134'></a><a href='#L1134'>1134</a>
1200
- <a name='L1135'></a><a href='#L1135'>1135</a>
1201
- <a name='L1136'></a><a href='#L1136'>1136</a>
1202
- <a name='L1137'></a><a href='#L1137'>1137</a>
1203
- <a name='L1138'></a><a href='#L1138'>1138</a>
1204
- <a name='L1139'></a><a href='#L1139'>1139</a>
1205
- <a name='L1140'></a><a href='#L1140'>1140</a>
1206
- <a name='L1141'></a><a href='#L1141'>1141</a>
1207
- <a name='L1142'></a><a href='#L1142'>1142</a>
1208
- <a name='L1143'></a><a href='#L1143'>1143</a>
1209
- <a name='L1144'></a><a href='#L1144'>1144</a>
1210
- <a name='L1145'></a><a href='#L1145'>1145</a>
1211
- <a name='L1146'></a><a href='#L1146'>1146</a>
1212
- <a name='L1147'></a><a href='#L1147'>1147</a>
1213
- <a name='L1148'></a><a href='#L1148'>1148</a>
1214
- <a name='L1149'></a><a href='#L1149'>1149</a>
1215
- <a name='L1150'></a><a href='#L1150'>1150</a>
1216
- <a name='L1151'></a><a href='#L1151'>1151</a>
1217
- <a name='L1152'></a><a href='#L1152'>1152</a>
1218
- <a name='L1153'></a><a href='#L1153'>1153</a>
1219
- <a name='L1154'></a><a href='#L1154'>1154</a>
1220
- <a name='L1155'></a><a href='#L1155'>1155</a>
1221
- <a name='L1156'></a><a href='#L1156'>1156</a>
1222
- <a name='L1157'></a><a href='#L1157'>1157</a>
1223
- <a name='L1158'></a><a href='#L1158'>1158</a>
1224
- <a name='L1159'></a><a href='#L1159'>1159</a>
1225
- <a name='L1160'></a><a href='#L1160'>1160</a>
1226
- <a name='L1161'></a><a href='#L1161'>1161</a>
1227
- <a name='L1162'></a><a href='#L1162'>1162</a>
1228
- <a name='L1163'></a><a href='#L1163'>1163</a>
1229
- <a name='L1164'></a><a href='#L1164'>1164</a>
1230
- <a name='L1165'></a><a href='#L1165'>1165</a>
1231
- <a name='L1166'></a><a href='#L1166'>1166</a>
1232
- <a name='L1167'></a><a href='#L1167'>1167</a>
1233
- <a name='L1168'></a><a href='#L1168'>1168</a>
1234
- <a name='L1169'></a><a href='#L1169'>1169</a>
1235
- <a name='L1170'></a><a href='#L1170'>1170</a>
1236
- <a name='L1171'></a><a href='#L1171'>1171</a>
1237
- <a name='L1172'></a><a href='#L1172'>1172</a>
1238
- <a name='L1173'></a><a href='#L1173'>1173</a>
1239
- <a name='L1174'></a><a href='#L1174'>1174</a>
1240
- <a name='L1175'></a><a href='#L1175'>1175</a>
1241
- <a name='L1176'></a><a href='#L1176'>1176</a>
1242
- <a name='L1177'></a><a href='#L1177'>1177</a>
1243
- <a name='L1178'></a><a href='#L1178'>1178</a>
1244
- <a name='L1179'></a><a href='#L1179'>1179</a>
1245
- <a name='L1180'></a><a href='#L1180'>1180</a>
1246
- <a name='L1181'></a><a href='#L1181'>1181</a>
1247
- <a name='L1182'></a><a href='#L1182'>1182</a>
1248
- <a name='L1183'></a><a href='#L1183'>1183</a>
1249
- <a name='L1184'></a><a href='#L1184'>1184</a>
1250
- <a name='L1185'></a><a href='#L1185'>1185</a>
1251
- <a name='L1186'></a><a href='#L1186'>1186</a>
1252
- <a name='L1187'></a><a href='#L1187'>1187</a>
1253
- <a name='L1188'></a><a href='#L1188'>1188</a>
1254
- <a name='L1189'></a><a href='#L1189'>1189</a>
1255
- <a name='L1190'></a><a href='#L1190'>1190</a>
1256
- <a name='L1191'></a><a href='#L1191'>1191</a>
1257
- <a name='L1192'></a><a href='#L1192'>1192</a>
1258
- <a name='L1193'></a><a href='#L1193'>1193</a>
1259
- <a name='L1194'></a><a href='#L1194'>1194</a>
1260
- <a name='L1195'></a><a href='#L1195'>1195</a>
1261
- <a name='L1196'></a><a href='#L1196'>1196</a>
1262
- <a name='L1197'></a><a href='#L1197'>1197</a>
1263
- <a name='L1198'></a><a href='#L1198'>1198</a></td><td class="line-coverage quiet"><span class="cline-any cline-no">&nbsp;</span>
1264
- <span class="cline-any cline-no">&nbsp;</span>
1265
- <span class="cline-any cline-no">&nbsp;</span>
1266
- <span class="cline-any cline-no">&nbsp;</span>
1267
- <span class="cline-any cline-neutral">&nbsp;</span>
1268
- <span class="cline-any cline-no">&nbsp;</span>
1269
- <span class="cline-any cline-neutral">&nbsp;</span>
1270
- <span class="cline-any cline-no">&nbsp;</span>
1271
- <span class="cline-any cline-no">&nbsp;</span>
1272
- <span class="cline-any cline-no">&nbsp;</span>
1273
- <span class="cline-any cline-no">&nbsp;</span>
1274
- <span class="cline-any cline-no">&nbsp;</span>
1275
- <span class="cline-any cline-no">&nbsp;</span>
1276
- <span class="cline-any cline-no">&nbsp;</span>
1277
- <span class="cline-any cline-no">&nbsp;</span>
1278
- <span class="cline-any cline-no">&nbsp;</span>
1279
- <span class="cline-any cline-no">&nbsp;</span>
1280
- <span class="cline-any cline-no">&nbsp;</span>
1281
- <span class="cline-any cline-no">&nbsp;</span>
1282
- <span class="cline-any cline-no">&nbsp;</span>
1283
- <span class="cline-any cline-no">&nbsp;</span>
1284
- <span class="cline-any cline-no">&nbsp;</span>
1285
- <span class="cline-any cline-no">&nbsp;</span>
1286
- <span class="cline-any cline-no">&nbsp;</span>
1287
- <span class="cline-any cline-no">&nbsp;</span>
1288
- <span class="cline-any cline-no">&nbsp;</span>
1289
- <span class="cline-any cline-no">&nbsp;</span>
1290
- <span class="cline-any cline-no">&nbsp;</span>
1291
- <span class="cline-any cline-no">&nbsp;</span>
1292
- <span class="cline-any cline-no">&nbsp;</span>
1293
- <span class="cline-any cline-no">&nbsp;</span>
1294
- <span class="cline-any cline-no">&nbsp;</span>
1295
- <span class="cline-any cline-no">&nbsp;</span>
1296
- <span class="cline-any cline-no">&nbsp;</span>
1297
- <span class="cline-any cline-no">&nbsp;</span>
1298
- <span class="cline-any cline-no">&nbsp;</span>
1299
- <span class="cline-any cline-no">&nbsp;</span>
1300
- <span class="cline-any cline-no">&nbsp;</span>
1301
- <span class="cline-any cline-no">&nbsp;</span>
1302
- <span class="cline-any cline-no">&nbsp;</span>
1303
- <span class="cline-any cline-no">&nbsp;</span>
1304
- <span class="cline-any cline-no">&nbsp;</span>
1305
- <span class="cline-any cline-no">&nbsp;</span>
1306
- <span class="cline-any cline-no">&nbsp;</span>
1307
- <span class="cline-any cline-no">&nbsp;</span>
1308
- <span class="cline-any cline-no">&nbsp;</span>
1309
- <span class="cline-any cline-neutral">&nbsp;</span>
1310
- <span class="cline-any cline-no">&nbsp;</span>
1311
- <span class="cline-any cline-no">&nbsp;</span>
1312
- <span class="cline-any cline-no">&nbsp;</span>
1313
- <span class="cline-any cline-no">&nbsp;</span>
1314
- <span class="cline-any cline-no">&nbsp;</span>
1315
- <span class="cline-any cline-no">&nbsp;</span>
1316
- <span class="cline-any cline-no">&nbsp;</span>
1317
- <span class="cline-any cline-no">&nbsp;</span>
1318
- <span class="cline-any cline-no">&nbsp;</span>
1319
- <span class="cline-any cline-no">&nbsp;</span>
1320
- <span class="cline-any cline-no">&nbsp;</span>
1321
- <span class="cline-any cline-no">&nbsp;</span>
1322
- <span class="cline-any cline-no">&nbsp;</span>
1323
- <span class="cline-any cline-no">&nbsp;</span>
1324
- <span class="cline-any cline-no">&nbsp;</span>
1325
- <span class="cline-any cline-no">&nbsp;</span>
1326
- <span class="cline-any cline-no">&nbsp;</span>
1327
- <span class="cline-any cline-no">&nbsp;</span>
1328
- <span class="cline-any cline-no">&nbsp;</span>
1329
- <span class="cline-any cline-no">&nbsp;</span>
1330
- <span class="cline-any cline-no">&nbsp;</span>
1331
- <span class="cline-any cline-no">&nbsp;</span>
1332
- <span class="cline-any cline-no">&nbsp;</span>
1333
- <span class="cline-any cline-neutral">&nbsp;</span>
1334
- <span class="cline-any cline-no">&nbsp;</span>
1335
- <span class="cline-any cline-no">&nbsp;</span>
1336
- <span class="cline-any cline-no">&nbsp;</span>
1337
- <span class="cline-any cline-no">&nbsp;</span>
1338
- <span class="cline-any cline-no">&nbsp;</span>
1339
- <span class="cline-any cline-no">&nbsp;</span>
1340
- <span class="cline-any cline-no">&nbsp;</span>
1341
- <span class="cline-any cline-no">&nbsp;</span>
1342
- <span class="cline-any cline-neutral">&nbsp;</span>
1343
- <span class="cline-any cline-no">&nbsp;</span>
1344
- <span class="cline-any cline-no">&nbsp;</span>
1345
- <span class="cline-any cline-no">&nbsp;</span>
1346
- <span class="cline-any cline-no">&nbsp;</span>
1347
- <span class="cline-any cline-no">&nbsp;</span>
1348
- <span class="cline-any cline-no">&nbsp;</span>
1349
- <span class="cline-any cline-no">&nbsp;</span>
1350
- <span class="cline-any cline-no">&nbsp;</span>
1351
- <span class="cline-any cline-no">&nbsp;</span>
1352
- <span class="cline-any cline-neutral">&nbsp;</span>
1353
- <span class="cline-any cline-no">&nbsp;</span>
1354
- <span class="cline-any cline-no">&nbsp;</span>
1355
- <span class="cline-any cline-no">&nbsp;</span>
1356
- <span class="cline-any cline-no">&nbsp;</span>
1357
- <span class="cline-any cline-no">&nbsp;</span>
1358
- <span class="cline-any cline-no">&nbsp;</span>
1359
- <span class="cline-any cline-no">&nbsp;</span>
1360
- <span class="cline-any cline-no">&nbsp;</span>
1361
- <span class="cline-any cline-no">&nbsp;</span>
1362
- <span class="cline-any cline-no">&nbsp;</span>
1363
- <span class="cline-any cline-no">&nbsp;</span>
1364
- <span class="cline-any cline-no">&nbsp;</span>
1365
- <span class="cline-any cline-no">&nbsp;</span>
1366
- <span class="cline-any cline-no">&nbsp;</span>
1367
- <span class="cline-any cline-no">&nbsp;</span>
1368
- <span class="cline-any cline-no">&nbsp;</span>
1369
- <span class="cline-any cline-no">&nbsp;</span>
1370
- <span class="cline-any cline-no">&nbsp;</span>
1371
- <span class="cline-any cline-neutral">&nbsp;</span>
1372
- <span class="cline-any cline-no">&nbsp;</span>
1373
- <span class="cline-any cline-no">&nbsp;</span>
1374
- <span class="cline-any cline-neutral">&nbsp;</span>
1375
- <span class="cline-any cline-no">&nbsp;</span>
1376
- <span class="cline-any cline-no">&nbsp;</span>
1377
- <span class="cline-any cline-no">&nbsp;</span>
1378
- <span class="cline-any cline-no">&nbsp;</span>
1379
- <span class="cline-any cline-no">&nbsp;</span>
1380
- <span class="cline-any cline-no">&nbsp;</span>
1381
- <span class="cline-any cline-no">&nbsp;</span>
1382
- <span class="cline-any cline-no">&nbsp;</span>
1383
- <span class="cline-any cline-no">&nbsp;</span>
1384
- <span class="cline-any cline-no">&nbsp;</span>
1385
- <span class="cline-any cline-no">&nbsp;</span>
1386
- <span class="cline-any cline-no">&nbsp;</span>
1387
- <span class="cline-any cline-no">&nbsp;</span>
1388
- <span class="cline-any cline-neutral">&nbsp;</span>
1389
- <span class="cline-any cline-no">&nbsp;</span>
1390
- <span class="cline-any cline-no">&nbsp;</span>
1391
- <span class="cline-any cline-no">&nbsp;</span>
1392
- <span class="cline-any cline-no">&nbsp;</span>
1393
- <span class="cline-any cline-no">&nbsp;</span>
1394
- <span class="cline-any cline-no">&nbsp;</span>
1395
- <span class="cline-any cline-no">&nbsp;</span>
1396
- <span class="cline-any cline-no">&nbsp;</span>
1397
- <span class="cline-any cline-no">&nbsp;</span>
1398
- <span class="cline-any cline-no">&nbsp;</span>
1399
- <span class="cline-any cline-no">&nbsp;</span>
1400
- <span class="cline-any cline-no">&nbsp;</span>
1401
- <span class="cline-any cline-no">&nbsp;</span>
1402
- <span class="cline-any cline-no">&nbsp;</span>
1403
- <span class="cline-any cline-no">&nbsp;</span>
1404
- <span class="cline-any cline-no">&nbsp;</span>
1405
- <span class="cline-any cline-no">&nbsp;</span>
1406
- <span class="cline-any cline-no">&nbsp;</span>
1407
- <span class="cline-any cline-no">&nbsp;</span>
1408
- <span class="cline-any cline-no">&nbsp;</span>
1409
- <span class="cline-any cline-no">&nbsp;</span>
1410
- <span class="cline-any cline-no">&nbsp;</span>
1411
- <span class="cline-any cline-no">&nbsp;</span>
1412
- <span class="cline-any cline-no">&nbsp;</span>
1413
- <span class="cline-any cline-no">&nbsp;</span>
1414
- <span class="cline-any cline-no">&nbsp;</span>
1415
- <span class="cline-any cline-no">&nbsp;</span>
1416
- <span class="cline-any cline-neutral">&nbsp;</span>
1417
- <span class="cline-any cline-no">&nbsp;</span>
1418
- <span class="cline-any cline-no">&nbsp;</span>
1419
- <span class="cline-any cline-no">&nbsp;</span>
1420
- <span class="cline-any cline-no">&nbsp;</span>
1421
- <span class="cline-any cline-no">&nbsp;</span>
1422
- <span class="cline-any cline-no">&nbsp;</span>
1423
- <span class="cline-any cline-no">&nbsp;</span>
1424
- <span class="cline-any cline-no">&nbsp;</span>
1425
- <span class="cline-any cline-no">&nbsp;</span>
1426
- <span class="cline-any cline-no">&nbsp;</span>
1427
- <span class="cline-any cline-no">&nbsp;</span>
1428
- <span class="cline-any cline-no">&nbsp;</span>
1429
- <span class="cline-any cline-no">&nbsp;</span>
1430
- <span class="cline-any cline-no">&nbsp;</span>
1431
- <span class="cline-any cline-no">&nbsp;</span>
1432
- <span class="cline-any cline-no">&nbsp;</span>
1433
- <span class="cline-any cline-no">&nbsp;</span>
1434
- <span class="cline-any cline-no">&nbsp;</span>
1435
- <span class="cline-any cline-no">&nbsp;</span>
1436
- <span class="cline-any cline-no">&nbsp;</span>
1437
- <span class="cline-any cline-no">&nbsp;</span>
1438
- <span class="cline-any cline-no">&nbsp;</span>
1439
- <span class="cline-any cline-no">&nbsp;</span>
1440
- <span class="cline-any cline-no">&nbsp;</span>
1441
- <span class="cline-any cline-no">&nbsp;</span>
1442
- <span class="cline-any cline-no">&nbsp;</span>
1443
- <span class="cline-any cline-no">&nbsp;</span>
1444
- <span class="cline-any cline-no">&nbsp;</span>
1445
- <span class="cline-any cline-no">&nbsp;</span>
1446
- <span class="cline-any cline-no">&nbsp;</span>
1447
- <span class="cline-any cline-no">&nbsp;</span>
1448
- <span class="cline-any cline-no">&nbsp;</span>
1449
- <span class="cline-any cline-no">&nbsp;</span>
1450
- <span class="cline-any cline-no">&nbsp;</span>
1451
- <span class="cline-any cline-no">&nbsp;</span>
1452
- <span class="cline-any cline-no">&nbsp;</span>
1453
- <span class="cline-any cline-no">&nbsp;</span>
1454
- <span class="cline-any cline-no">&nbsp;</span>
1455
- <span class="cline-any cline-no">&nbsp;</span>
1456
- <span class="cline-any cline-no">&nbsp;</span>
1457
- <span class="cline-any cline-no">&nbsp;</span>
1458
- <span class="cline-any cline-no">&nbsp;</span>
1459
- <span class="cline-any cline-no">&nbsp;</span>
1460
- <span class="cline-any cline-no">&nbsp;</span>
1461
- <span class="cline-any cline-no">&nbsp;</span>
1462
- <span class="cline-any cline-no">&nbsp;</span>
1463
- <span class="cline-any cline-no">&nbsp;</span>
1464
- <span class="cline-any cline-no">&nbsp;</span>
1465
- <span class="cline-any cline-no">&nbsp;</span>
1466
- <span class="cline-any cline-no">&nbsp;</span>
1467
- <span class="cline-any cline-no">&nbsp;</span>
1468
- <span class="cline-any cline-no">&nbsp;</span>
1469
- <span class="cline-any cline-no">&nbsp;</span>
1470
- <span class="cline-any cline-no">&nbsp;</span>
1471
- <span class="cline-any cline-no">&nbsp;</span>
1472
- <span class="cline-any cline-no">&nbsp;</span>
1473
- <span class="cline-any cline-neutral">&nbsp;</span>
1474
- <span class="cline-any cline-no">&nbsp;</span>
1475
- <span class="cline-any cline-no">&nbsp;</span>
1476
- <span class="cline-any cline-no">&nbsp;</span>
1477
- <span class="cline-any cline-no">&nbsp;</span>
1478
- <span class="cline-any cline-no">&nbsp;</span>
1479
- <span class="cline-any cline-no">&nbsp;</span>
1480
- <span class="cline-any cline-no">&nbsp;</span>
1481
- <span class="cline-any cline-no">&nbsp;</span>
1482
- <span class="cline-any cline-no">&nbsp;</span>
1483
- <span class="cline-any cline-no">&nbsp;</span>
1484
- <span class="cline-any cline-no">&nbsp;</span>
1485
- <span class="cline-any cline-neutral">&nbsp;</span>
1486
- <span class="cline-any cline-no">&nbsp;</span>
1487
- <span class="cline-any cline-no">&nbsp;</span>
1488
- <span class="cline-any cline-no">&nbsp;</span>
1489
- <span class="cline-any cline-no">&nbsp;</span>
1490
- <span class="cline-any cline-no">&nbsp;</span>
1491
- <span class="cline-any cline-no">&nbsp;</span>
1492
- <span class="cline-any cline-no">&nbsp;</span>
1493
- <span class="cline-any cline-no">&nbsp;</span>
1494
- <span class="cline-any cline-no">&nbsp;</span>
1495
- <span class="cline-any cline-no">&nbsp;</span>
1496
- <span class="cline-any cline-no">&nbsp;</span>
1497
- <span class="cline-any cline-no">&nbsp;</span>
1498
- <span class="cline-any cline-no">&nbsp;</span>
1499
- <span class="cline-any cline-no">&nbsp;</span>
1500
- <span class="cline-any cline-no">&nbsp;</span>
1501
- <span class="cline-any cline-no">&nbsp;</span>
1502
- <span class="cline-any cline-no">&nbsp;</span>
1503
- <span class="cline-any cline-no">&nbsp;</span>
1504
- <span class="cline-any cline-no">&nbsp;</span>
1505
- <span class="cline-any cline-no">&nbsp;</span>
1506
- <span class="cline-any cline-no">&nbsp;</span>
1507
- <span class="cline-any cline-no">&nbsp;</span>
1508
- <span class="cline-any cline-no">&nbsp;</span>
1509
- <span class="cline-any cline-no">&nbsp;</span>
1510
- <span class="cline-any cline-no">&nbsp;</span>
1511
- <span class="cline-any cline-no">&nbsp;</span>
1512
- <span class="cline-any cline-no">&nbsp;</span>
1513
- <span class="cline-any cline-no">&nbsp;</span>
1514
- <span class="cline-any cline-no">&nbsp;</span>
1515
- <span class="cline-any cline-no">&nbsp;</span>
1516
- <span class="cline-any cline-no">&nbsp;</span>
1517
- <span class="cline-any cline-no">&nbsp;</span>
1518
- <span class="cline-any cline-no">&nbsp;</span>
1519
- <span class="cline-any cline-no">&nbsp;</span>
1520
- <span class="cline-any cline-no">&nbsp;</span>
1521
- <span class="cline-any cline-no">&nbsp;</span>
1522
- <span class="cline-any cline-no">&nbsp;</span>
1523
- <span class="cline-any cline-no">&nbsp;</span>
1524
- <span class="cline-any cline-neutral">&nbsp;</span>
1525
- <span class="cline-any cline-no">&nbsp;</span>
1526
- <span class="cline-any cline-no">&nbsp;</span>
1527
- <span class="cline-any cline-no">&nbsp;</span>
1528
- <span class="cline-any cline-no">&nbsp;</span>
1529
- <span class="cline-any cline-no">&nbsp;</span>
1530
- <span class="cline-any cline-no">&nbsp;</span>
1531
- <span class="cline-any cline-no">&nbsp;</span>
1532
- <span class="cline-any cline-no">&nbsp;</span>
1533
- <span class="cline-any cline-no">&nbsp;</span>
1534
- <span class="cline-any cline-no">&nbsp;</span>
1535
- <span class="cline-any cline-neutral">&nbsp;</span>
1536
- <span class="cline-any cline-no">&nbsp;</span>
1537
- <span class="cline-any cline-no">&nbsp;</span>
1538
- <span class="cline-any cline-no">&nbsp;</span>
1539
- <span class="cline-any cline-no">&nbsp;</span>
1540
- <span class="cline-any cline-no">&nbsp;</span>
1541
- <span class="cline-any cline-no">&nbsp;</span>
1542
- <span class="cline-any cline-no">&nbsp;</span>
1543
- <span class="cline-any cline-no">&nbsp;</span>
1544
- <span class="cline-any cline-no">&nbsp;</span>
1545
- <span class="cline-any cline-no">&nbsp;</span>
1546
- <span class="cline-any cline-no">&nbsp;</span>
1547
- <span class="cline-any cline-no">&nbsp;</span>
1548
- <span class="cline-any cline-no">&nbsp;</span>
1549
- <span class="cline-any cline-no">&nbsp;</span>
1550
- <span class="cline-any cline-no">&nbsp;</span>
1551
- <span class="cline-any cline-no">&nbsp;</span>
1552
- <span class="cline-any cline-no">&nbsp;</span>
1553
- <span class="cline-any cline-no">&nbsp;</span>
1554
- <span class="cline-any cline-neutral">&nbsp;</span>
1555
- <span class="cline-any cline-no">&nbsp;</span>
1556
- <span class="cline-any cline-no">&nbsp;</span>
1557
- <span class="cline-any cline-no">&nbsp;</span>
1558
- <span class="cline-any cline-no">&nbsp;</span>
1559
- <span class="cline-any cline-no">&nbsp;</span>
1560
- <span class="cline-any cline-no">&nbsp;</span>
1561
- <span class="cline-any cline-no">&nbsp;</span>
1562
- <span class="cline-any cline-no">&nbsp;</span>
1563
- <span class="cline-any cline-no">&nbsp;</span>
1564
- <span class="cline-any cline-no">&nbsp;</span>
1565
- <span class="cline-any cline-neutral">&nbsp;</span>
1566
- <span class="cline-any cline-no">&nbsp;</span>
1567
- <span class="cline-any cline-no">&nbsp;</span>
1568
- <span class="cline-any cline-no">&nbsp;</span>
1569
- <span class="cline-any cline-no">&nbsp;</span>
1570
- <span class="cline-any cline-no">&nbsp;</span>
1571
- <span class="cline-any cline-no">&nbsp;</span>
1572
- <span class="cline-any cline-no">&nbsp;</span>
1573
- <span class="cline-any cline-no">&nbsp;</span>
1574
- <span class="cline-any cline-no">&nbsp;</span>
1575
- <span class="cline-any cline-no">&nbsp;</span>
1576
- <span class="cline-any cline-neutral">&nbsp;</span>
1577
- <span class="cline-any cline-no">&nbsp;</span>
1578
- <span class="cline-any cline-no">&nbsp;</span>
1579
- <span class="cline-any cline-no">&nbsp;</span>
1580
- <span class="cline-any cline-no">&nbsp;</span>
1581
- <span class="cline-any cline-no">&nbsp;</span>
1582
- <span class="cline-any cline-no">&nbsp;</span>
1583
- <span class="cline-any cline-no">&nbsp;</span>
1584
- <span class="cline-any cline-no">&nbsp;</span>
1585
- <span class="cline-any cline-no">&nbsp;</span>
1586
- <span class="cline-any cline-no">&nbsp;</span>
1587
- <span class="cline-any cline-neutral">&nbsp;</span>
1588
- <span class="cline-any cline-no">&nbsp;</span>
1589
- <span class="cline-any cline-no">&nbsp;</span>
1590
- <span class="cline-any cline-no">&nbsp;</span>
1591
- <span class="cline-any cline-no">&nbsp;</span>
1592
- <span class="cline-any cline-no">&nbsp;</span>
1593
- <span class="cline-any cline-no">&nbsp;</span>
1594
- <span class="cline-any cline-no">&nbsp;</span>
1595
- <span class="cline-any cline-no">&nbsp;</span>
1596
- <span class="cline-any cline-no">&nbsp;</span>
1597
- <span class="cline-any cline-no">&nbsp;</span>
1598
- <span class="cline-any cline-no">&nbsp;</span>
1599
- <span class="cline-any cline-no">&nbsp;</span>
1600
- <span class="cline-any cline-no">&nbsp;</span>
1601
- <span class="cline-any cline-no">&nbsp;</span>
1602
- <span class="cline-any cline-no">&nbsp;</span>
1603
- <span class="cline-any cline-no">&nbsp;</span>
1604
- <span class="cline-any cline-no">&nbsp;</span>
1605
- <span class="cline-any cline-no">&nbsp;</span>
1606
- <span class="cline-any cline-no">&nbsp;</span>
1607
- <span class="cline-any cline-no">&nbsp;</span>
1608
- <span class="cline-any cline-no">&nbsp;</span>
1609
- <span class="cline-any cline-neutral">&nbsp;</span>
1610
- <span class="cline-any cline-no">&nbsp;</span>
1611
- <span class="cline-any cline-no">&nbsp;</span>
1612
- <span class="cline-any cline-no">&nbsp;</span>
1613
- <span class="cline-any cline-no">&nbsp;</span>
1614
- <span class="cline-any cline-no">&nbsp;</span>
1615
- <span class="cline-any cline-no">&nbsp;</span>
1616
- <span class="cline-any cline-no">&nbsp;</span>
1617
- <span class="cline-any cline-no">&nbsp;</span>
1618
- <span class="cline-any cline-no">&nbsp;</span>
1619
- <span class="cline-any cline-no">&nbsp;</span>
1620
- <span class="cline-any cline-no">&nbsp;</span>
1621
- <span class="cline-any cline-no">&nbsp;</span>
1622
- <span class="cline-any cline-no">&nbsp;</span>
1623
- <span class="cline-any cline-no">&nbsp;</span>
1624
- <span class="cline-any cline-no">&nbsp;</span>
1625
- <span class="cline-any cline-no">&nbsp;</span>
1626
- <span class="cline-any cline-neutral">&nbsp;</span>
1627
- <span class="cline-any cline-no">&nbsp;</span>
1628
- <span class="cline-any cline-no">&nbsp;</span>
1629
- <span class="cline-any cline-no">&nbsp;</span>
1630
- <span class="cline-any cline-no">&nbsp;</span>
1631
- <span class="cline-any cline-no">&nbsp;</span>
1632
- <span class="cline-any cline-no">&nbsp;</span>
1633
- <span class="cline-any cline-no">&nbsp;</span>
1634
- <span class="cline-any cline-no">&nbsp;</span>
1635
- <span class="cline-any cline-no">&nbsp;</span>
1636
- <span class="cline-any cline-no">&nbsp;</span>
1637
- <span class="cline-any cline-no">&nbsp;</span>
1638
- <span class="cline-any cline-no">&nbsp;</span>
1639
- <span class="cline-any cline-no">&nbsp;</span>
1640
- <span class="cline-any cline-no">&nbsp;</span>
1641
- <span class="cline-any cline-no">&nbsp;</span>
1642
- <span class="cline-any cline-no">&nbsp;</span>
1643
- <span class="cline-any cline-no">&nbsp;</span>
1644
- <span class="cline-any cline-no">&nbsp;</span>
1645
- <span class="cline-any cline-no">&nbsp;</span>
1646
- <span class="cline-any cline-no">&nbsp;</span>
1647
- <span class="cline-any cline-no">&nbsp;</span>
1648
- <span class="cline-any cline-no">&nbsp;</span>
1649
- <span class="cline-any cline-no">&nbsp;</span>
1650
- <span class="cline-any cline-no">&nbsp;</span>
1651
- <span class="cline-any cline-neutral">&nbsp;</span>
1652
- <span class="cline-any cline-no">&nbsp;</span>
1653
- <span class="cline-any cline-no">&nbsp;</span>
1654
- <span class="cline-any cline-no">&nbsp;</span>
1655
- <span class="cline-any cline-no">&nbsp;</span>
1656
- <span class="cline-any cline-no">&nbsp;</span>
1657
- <span class="cline-any cline-no">&nbsp;</span>
1658
- <span class="cline-any cline-no">&nbsp;</span>
1659
- <span class="cline-any cline-no">&nbsp;</span>
1660
- <span class="cline-any cline-no">&nbsp;</span>
1661
- <span class="cline-any cline-no">&nbsp;</span>
1662
- <span class="cline-any cline-no">&nbsp;</span>
1663
- <span class="cline-any cline-no">&nbsp;</span>
1664
- <span class="cline-any cline-no">&nbsp;</span>
1665
- <span class="cline-any cline-no">&nbsp;</span>
1666
- <span class="cline-any cline-no">&nbsp;</span>
1667
- <span class="cline-any cline-no">&nbsp;</span>
1668
- <span class="cline-any cline-no">&nbsp;</span>
1669
- <span class="cline-any cline-no">&nbsp;</span>
1670
- <span class="cline-any cline-no">&nbsp;</span>
1671
- <span class="cline-any cline-no">&nbsp;</span>
1672
- <span class="cline-any cline-no">&nbsp;</span>
1673
- <span class="cline-any cline-no">&nbsp;</span>
1674
- <span class="cline-any cline-no">&nbsp;</span>
1675
- <span class="cline-any cline-no">&nbsp;</span>
1676
- <span class="cline-any cline-no">&nbsp;</span>
1677
- <span class="cline-any cline-no">&nbsp;</span>
1678
- <span class="cline-any cline-no">&nbsp;</span>
1679
- <span class="cline-any cline-no">&nbsp;</span>
1680
- <span class="cline-any cline-no">&nbsp;</span>
1681
- <span class="cline-any cline-no">&nbsp;</span>
1682
- <span class="cline-any cline-no">&nbsp;</span>
1683
- <span class="cline-any cline-no">&nbsp;</span>
1684
- <span class="cline-any cline-no">&nbsp;</span>
1685
- <span class="cline-any cline-no">&nbsp;</span>
1686
- <span class="cline-any cline-no">&nbsp;</span>
1687
- <span class="cline-any cline-no">&nbsp;</span>
1688
- <span class="cline-any cline-no">&nbsp;</span>
1689
- <span class="cline-any cline-no">&nbsp;</span>
1690
- <span class="cline-any cline-no">&nbsp;</span>
1691
- <span class="cline-any cline-no">&nbsp;</span>
1692
- <span class="cline-any cline-no">&nbsp;</span>
1693
- <span class="cline-any cline-no">&nbsp;</span>
1694
- <span class="cline-any cline-no">&nbsp;</span>
1695
- <span class="cline-any cline-neutral">&nbsp;</span>
1696
- <span class="cline-any cline-no">&nbsp;</span>
1697
- <span class="cline-any cline-no">&nbsp;</span>
1698
- <span class="cline-any cline-no">&nbsp;</span>
1699
- <span class="cline-any cline-no">&nbsp;</span>
1700
- <span class="cline-any cline-no">&nbsp;</span>
1701
- <span class="cline-any cline-no">&nbsp;</span>
1702
- <span class="cline-any cline-no">&nbsp;</span>
1703
- <span class="cline-any cline-no">&nbsp;</span>
1704
- <span class="cline-any cline-no">&nbsp;</span>
1705
- <span class="cline-any cline-no">&nbsp;</span>
1706
- <span class="cline-any cline-no">&nbsp;</span>
1707
- <span class="cline-any cline-no">&nbsp;</span>
1708
- <span class="cline-any cline-no">&nbsp;</span>
1709
- <span class="cline-any cline-no">&nbsp;</span>
1710
- <span class="cline-any cline-no">&nbsp;</span>
1711
- <span class="cline-any cline-no">&nbsp;</span>
1712
- <span class="cline-any cline-no">&nbsp;</span>
1713
- <span class="cline-any cline-no">&nbsp;</span>
1714
- <span class="cline-any cline-no">&nbsp;</span>
1715
- <span class="cline-any cline-no">&nbsp;</span>
1716
- <span class="cline-any cline-no">&nbsp;</span>
1717
- <span class="cline-any cline-no">&nbsp;</span>
1718
- <span class="cline-any cline-no">&nbsp;</span>
1719
- <span class="cline-any cline-no">&nbsp;</span>
1720
- <span class="cline-any cline-neutral">&nbsp;</span>
1721
- <span class="cline-any cline-no">&nbsp;</span>
1722
- <span class="cline-any cline-no">&nbsp;</span>
1723
- <span class="cline-any cline-no">&nbsp;</span>
1724
- <span class="cline-any cline-no">&nbsp;</span>
1725
- <span class="cline-any cline-no">&nbsp;</span>
1726
- <span class="cline-any cline-no">&nbsp;</span>
1727
- <span class="cline-any cline-no">&nbsp;</span>
1728
- <span class="cline-any cline-no">&nbsp;</span>
1729
- <span class="cline-any cline-no">&nbsp;</span>
1730
- <span class="cline-any cline-no">&nbsp;</span>
1731
- <span class="cline-any cline-no">&nbsp;</span>
1732
- <span class="cline-any cline-no">&nbsp;</span>
1733
- <span class="cline-any cline-no">&nbsp;</span>
1734
- <span class="cline-any cline-no">&nbsp;</span>
1735
- <span class="cline-any cline-no">&nbsp;</span>
1736
- <span class="cline-any cline-neutral">&nbsp;</span>
1737
- <span class="cline-any cline-no">&nbsp;</span>
1738
- <span class="cline-any cline-no">&nbsp;</span>
1739
- <span class="cline-any cline-no">&nbsp;</span>
1740
- <span class="cline-any cline-no">&nbsp;</span>
1741
- <span class="cline-any cline-no">&nbsp;</span>
1742
- <span class="cline-any cline-no">&nbsp;</span>
1743
- <span class="cline-any cline-no">&nbsp;</span>
1744
- <span class="cline-any cline-no">&nbsp;</span>
1745
- <span class="cline-any cline-no">&nbsp;</span>
1746
- <span class="cline-any cline-no">&nbsp;</span>
1747
- <span class="cline-any cline-no">&nbsp;</span>
1748
- <span class="cline-any cline-no">&nbsp;</span>
1749
- <span class="cline-any cline-no">&nbsp;</span>
1750
- <span class="cline-any cline-neutral">&nbsp;</span>
1751
- <span class="cline-any cline-no">&nbsp;</span>
1752
- <span class="cline-any cline-no">&nbsp;</span>
1753
- <span class="cline-any cline-no">&nbsp;</span>
1754
- <span class="cline-any cline-no">&nbsp;</span>
1755
- <span class="cline-any cline-no">&nbsp;</span>
1756
- <span class="cline-any cline-no">&nbsp;</span>
1757
- <span class="cline-any cline-no">&nbsp;</span>
1758
- <span class="cline-any cline-no">&nbsp;</span>
1759
- <span class="cline-any cline-no">&nbsp;</span>
1760
- <span class="cline-any cline-no">&nbsp;</span>
1761
- <span class="cline-any cline-no">&nbsp;</span>
1762
- <span class="cline-any cline-no">&nbsp;</span>
1763
- <span class="cline-any cline-no">&nbsp;</span>
1764
- <span class="cline-any cline-neutral">&nbsp;</span>
1765
- <span class="cline-any cline-no">&nbsp;</span>
1766
- <span class="cline-any cline-no">&nbsp;</span>
1767
- <span class="cline-any cline-no">&nbsp;</span>
1768
- <span class="cline-any cline-no">&nbsp;</span>
1769
- <span class="cline-any cline-no">&nbsp;</span>
1770
- <span class="cline-any cline-no">&nbsp;</span>
1771
- <span class="cline-any cline-no">&nbsp;</span>
1772
- <span class="cline-any cline-neutral">&nbsp;</span>
1773
- <span class="cline-any cline-no">&nbsp;</span>
1774
- <span class="cline-any cline-no">&nbsp;</span>
1775
- <span class="cline-any cline-no">&nbsp;</span>
1776
- <span class="cline-any cline-no">&nbsp;</span>
1777
- <span class="cline-any cline-no">&nbsp;</span>
1778
- <span class="cline-any cline-no">&nbsp;</span>
1779
- <span class="cline-any cline-no">&nbsp;</span>
1780
- <span class="cline-any cline-no">&nbsp;</span>
1781
- <span class="cline-any cline-no">&nbsp;</span>
1782
- <span class="cline-any cline-no">&nbsp;</span>
1783
- <span class="cline-any cline-no">&nbsp;</span>
1784
- <span class="cline-any cline-no">&nbsp;</span>
1785
- <span class="cline-any cline-neutral">&nbsp;</span>
1786
- <span class="cline-any cline-no">&nbsp;</span>
1787
- <span class="cline-any cline-no">&nbsp;</span>
1788
- <span class="cline-any cline-no">&nbsp;</span>
1789
- <span class="cline-any cline-no">&nbsp;</span>
1790
- <span class="cline-any cline-no">&nbsp;</span>
1791
- <span class="cline-any cline-no">&nbsp;</span>
1792
- <span class="cline-any cline-no">&nbsp;</span>
1793
- <span class="cline-any cline-no">&nbsp;</span>
1794
- <span class="cline-any cline-no">&nbsp;</span>
1795
- <span class="cline-any cline-no">&nbsp;</span>
1796
- <span class="cline-any cline-no">&nbsp;</span>
1797
- <span class="cline-any cline-no">&nbsp;</span>
1798
- <span class="cline-any cline-no">&nbsp;</span>
1799
- <span class="cline-any cline-no">&nbsp;</span>
1800
- <span class="cline-any cline-no">&nbsp;</span>
1801
- <span class="cline-any cline-no">&nbsp;</span>
1802
- <span class="cline-any cline-no">&nbsp;</span>
1803
- <span class="cline-any cline-no">&nbsp;</span>
1804
- <span class="cline-any cline-no">&nbsp;</span>
1805
- <span class="cline-any cline-no">&nbsp;</span>
1806
- <span class="cline-any cline-no">&nbsp;</span>
1807
- <span class="cline-any cline-no">&nbsp;</span>
1808
- <span class="cline-any cline-no">&nbsp;</span>
1809
- <span class="cline-any cline-no">&nbsp;</span>
1810
- <span class="cline-any cline-no">&nbsp;</span>
1811
- <span class="cline-any cline-no">&nbsp;</span>
1812
- <span class="cline-any cline-no">&nbsp;</span>
1813
- <span class="cline-any cline-no">&nbsp;</span>
1814
- <span class="cline-any cline-no">&nbsp;</span>
1815
- <span class="cline-any cline-no">&nbsp;</span>
1816
- <span class="cline-any cline-no">&nbsp;</span>
1817
- <span class="cline-any cline-no">&nbsp;</span>
1818
- <span class="cline-any cline-no">&nbsp;</span>
1819
- <span class="cline-any cline-no">&nbsp;</span>
1820
- <span class="cline-any cline-no">&nbsp;</span>
1821
- <span class="cline-any cline-no">&nbsp;</span>
1822
- <span class="cline-any cline-no">&nbsp;</span>
1823
- <span class="cline-any cline-no">&nbsp;</span>
1824
- <span class="cline-any cline-no">&nbsp;</span>
1825
- <span class="cline-any cline-no">&nbsp;</span>
1826
- <span class="cline-any cline-no">&nbsp;</span>
1827
- <span class="cline-any cline-no">&nbsp;</span>
1828
- <span class="cline-any cline-no">&nbsp;</span>
1829
- <span class="cline-any cline-no">&nbsp;</span>
1830
- <span class="cline-any cline-no">&nbsp;</span>
1831
- <span class="cline-any cline-no">&nbsp;</span>
1832
- <span class="cline-any cline-no">&nbsp;</span>
1833
- <span class="cline-any cline-no">&nbsp;</span>
1834
- <span class="cline-any cline-no">&nbsp;</span>
1835
- <span class="cline-any cline-no">&nbsp;</span>
1836
- <span class="cline-any cline-no">&nbsp;</span>
1837
- <span class="cline-any cline-no">&nbsp;</span>
1838
- <span class="cline-any cline-no">&nbsp;</span>
1839
- <span class="cline-any cline-no">&nbsp;</span>
1840
- <span class="cline-any cline-no">&nbsp;</span>
1841
- <span class="cline-any cline-no">&nbsp;</span>
1842
- <span class="cline-any cline-no">&nbsp;</span>
1843
- <span class="cline-any cline-no">&nbsp;</span>
1844
- <span class="cline-any cline-no">&nbsp;</span>
1845
- <span class="cline-any cline-no">&nbsp;</span>
1846
- <span class="cline-any cline-no">&nbsp;</span>
1847
- <span class="cline-any cline-no">&nbsp;</span>
1848
- <span class="cline-any cline-no">&nbsp;</span>
1849
- <span class="cline-any cline-no">&nbsp;</span>
1850
- <span class="cline-any cline-no">&nbsp;</span>
1851
- <span class="cline-any cline-no">&nbsp;</span>
1852
- <span class="cline-any cline-no">&nbsp;</span>
1853
- <span class="cline-any cline-no">&nbsp;</span>
1854
- <span class="cline-any cline-no">&nbsp;</span>
1855
- <span class="cline-any cline-no">&nbsp;</span>
1856
- <span class="cline-any cline-no">&nbsp;</span>
1857
- <span class="cline-any cline-no">&nbsp;</span>
1858
- <span class="cline-any cline-no">&nbsp;</span>
1859
- <span class="cline-any cline-no">&nbsp;</span>
1860
- <span class="cline-any cline-no">&nbsp;</span>
1861
- <span class="cline-any cline-no">&nbsp;</span>
1862
- <span class="cline-any cline-no">&nbsp;</span>
1863
- <span class="cline-any cline-no">&nbsp;</span>
1864
- <span class="cline-any cline-no">&nbsp;</span>
1865
- <span class="cline-any cline-no">&nbsp;</span>
1866
- <span class="cline-any cline-no">&nbsp;</span>
1867
- <span class="cline-any cline-no">&nbsp;</span>
1868
- <span class="cline-any cline-no">&nbsp;</span>
1869
- <span class="cline-any cline-no">&nbsp;</span>
1870
- <span class="cline-any cline-no">&nbsp;</span>
1871
- <span class="cline-any cline-no">&nbsp;</span>
1872
- <span class="cline-any cline-no">&nbsp;</span>
1873
- <span class="cline-any cline-no">&nbsp;</span>
1874
- <span class="cline-any cline-no">&nbsp;</span>
1875
- <span class="cline-any cline-no">&nbsp;</span>
1876
- <span class="cline-any cline-no">&nbsp;</span>
1877
- <span class="cline-any cline-no">&nbsp;</span>
1878
- <span class="cline-any cline-no">&nbsp;</span>
1879
- <span class="cline-any cline-no">&nbsp;</span>
1880
- <span class="cline-any cline-no">&nbsp;</span>
1881
- <span class="cline-any cline-no">&nbsp;</span>
1882
- <span class="cline-any cline-no">&nbsp;</span>
1883
- <span class="cline-any cline-neutral">&nbsp;</span>
1884
- <span class="cline-any cline-no">&nbsp;</span>
1885
- <span class="cline-any cline-no">&nbsp;</span>
1886
- <span class="cline-any cline-no">&nbsp;</span>
1887
- <span class="cline-any cline-no">&nbsp;</span>
1888
- <span class="cline-any cline-no">&nbsp;</span>
1889
- <span class="cline-any cline-no">&nbsp;</span>
1890
- <span class="cline-any cline-no">&nbsp;</span>
1891
- <span class="cline-any cline-no">&nbsp;</span>
1892
- <span class="cline-any cline-no">&nbsp;</span>
1893
- <span class="cline-any cline-no">&nbsp;</span>
1894
- <span class="cline-any cline-no">&nbsp;</span>
1895
- <span class="cline-any cline-no">&nbsp;</span>
1896
- <span class="cline-any cline-no">&nbsp;</span>
1897
- <span class="cline-any cline-no">&nbsp;</span>
1898
- <span class="cline-any cline-no">&nbsp;</span>
1899
- <span class="cline-any cline-no">&nbsp;</span>
1900
- <span class="cline-any cline-no">&nbsp;</span>
1901
- <span class="cline-any cline-no">&nbsp;</span>
1902
- <span class="cline-any cline-no">&nbsp;</span>
1903
- <span class="cline-any cline-no">&nbsp;</span>
1904
- <span class="cline-any cline-no">&nbsp;</span>
1905
- <span class="cline-any cline-no">&nbsp;</span>
1906
- <span class="cline-any cline-neutral">&nbsp;</span>
1907
- <span class="cline-any cline-no">&nbsp;</span>
1908
- <span class="cline-any cline-no">&nbsp;</span>
1909
- <span class="cline-any cline-no">&nbsp;</span>
1910
- <span class="cline-any cline-no">&nbsp;</span>
1911
- <span class="cline-any cline-no">&nbsp;</span>
1912
- <span class="cline-any cline-no">&nbsp;</span>
1913
- <span class="cline-any cline-no">&nbsp;</span>
1914
- <span class="cline-any cline-no">&nbsp;</span>
1915
- <span class="cline-any cline-no">&nbsp;</span>
1916
- <span class="cline-any cline-no">&nbsp;</span>
1917
- <span class="cline-any cline-no">&nbsp;</span>
1918
- <span class="cline-any cline-no">&nbsp;</span>
1919
- <span class="cline-any cline-no">&nbsp;</span>
1920
- <span class="cline-any cline-no">&nbsp;</span>
1921
- <span class="cline-any cline-no">&nbsp;</span>
1922
- <span class="cline-any cline-neutral">&nbsp;</span>
1923
- <span class="cline-any cline-no">&nbsp;</span>
1924
- <span class="cline-any cline-no">&nbsp;</span>
1925
- <span class="cline-any cline-no">&nbsp;</span>
1926
- <span class="cline-any cline-no">&nbsp;</span>
1927
- <span class="cline-any cline-no">&nbsp;</span>
1928
- <span class="cline-any cline-no">&nbsp;</span>
1929
- <span class="cline-any cline-no">&nbsp;</span>
1930
- <span class="cline-any cline-no">&nbsp;</span>
1931
- <span class="cline-any cline-no">&nbsp;</span>
1932
- <span class="cline-any cline-no">&nbsp;</span>
1933
- <span class="cline-any cline-no">&nbsp;</span>
1934
- <span class="cline-any cline-no">&nbsp;</span>
1935
- <span class="cline-any cline-no">&nbsp;</span>
1936
- <span class="cline-any cline-no">&nbsp;</span>
1937
- <span class="cline-any cline-no">&nbsp;</span>
1938
- <span class="cline-any cline-no">&nbsp;</span>
1939
- <span class="cline-any cline-no">&nbsp;</span>
1940
- <span class="cline-any cline-no">&nbsp;</span>
1941
- <span class="cline-any cline-no">&nbsp;</span>
1942
- <span class="cline-any cline-no">&nbsp;</span>
1943
- <span class="cline-any cline-no">&nbsp;</span>
1944
- <span class="cline-any cline-no">&nbsp;</span>
1945
- <span class="cline-any cline-no">&nbsp;</span>
1946
- <span class="cline-any cline-no">&nbsp;</span>
1947
- <span class="cline-any cline-no">&nbsp;</span>
1948
- <span class="cline-any cline-no">&nbsp;</span>
1949
- <span class="cline-any cline-no">&nbsp;</span>
1950
- <span class="cline-any cline-no">&nbsp;</span>
1951
- <span class="cline-any cline-no">&nbsp;</span>
1952
- <span class="cline-any cline-no">&nbsp;</span>
1953
- <span class="cline-any cline-no">&nbsp;</span>
1954
- <span class="cline-any cline-no">&nbsp;</span>
1955
- <span class="cline-any cline-no">&nbsp;</span>
1956
- <span class="cline-any cline-no">&nbsp;</span>
1957
- <span class="cline-any cline-no">&nbsp;</span>
1958
- <span class="cline-any cline-no">&nbsp;</span>
1959
- <span class="cline-any cline-no">&nbsp;</span>
1960
- <span class="cline-any cline-no">&nbsp;</span>
1961
- <span class="cline-any cline-no">&nbsp;</span>
1962
- <span class="cline-any cline-no">&nbsp;</span>
1963
- <span class="cline-any cline-no">&nbsp;</span>
1964
- <span class="cline-any cline-no">&nbsp;</span>
1965
- <span class="cline-any cline-no">&nbsp;</span>
1966
- <span class="cline-any cline-no">&nbsp;</span>
1967
- <span class="cline-any cline-no">&nbsp;</span>
1968
- <span class="cline-any cline-no">&nbsp;</span>
1969
- <span class="cline-any cline-no">&nbsp;</span>
1970
- <span class="cline-any cline-no">&nbsp;</span>
1971
- <span class="cline-any cline-no">&nbsp;</span>
1972
- <span class="cline-any cline-no">&nbsp;</span>
1973
- <span class="cline-any cline-no">&nbsp;</span>
1974
- <span class="cline-any cline-no">&nbsp;</span>
1975
- <span class="cline-any cline-no">&nbsp;</span>
1976
- <span class="cline-any cline-no">&nbsp;</span>
1977
- <span class="cline-any cline-no">&nbsp;</span>
1978
- <span class="cline-any cline-no">&nbsp;</span>
1979
- <span class="cline-any cline-no">&nbsp;</span>
1980
- <span class="cline-any cline-no">&nbsp;</span>
1981
- <span class="cline-any cline-no">&nbsp;</span>
1982
- <span class="cline-any cline-no">&nbsp;</span>
1983
- <span class="cline-any cline-no">&nbsp;</span>
1984
- <span class="cline-any cline-no">&nbsp;</span>
1985
- <span class="cline-any cline-neutral">&nbsp;</span>
1986
- <span class="cline-any cline-no">&nbsp;</span>
1987
- <span class="cline-any cline-no">&nbsp;</span>
1988
- <span class="cline-any cline-no">&nbsp;</span>
1989
- <span class="cline-any cline-no">&nbsp;</span>
1990
- <span class="cline-any cline-no">&nbsp;</span>
1991
- <span class="cline-any cline-no">&nbsp;</span>
1992
- <span class="cline-any cline-no">&nbsp;</span>
1993
- <span class="cline-any cline-no">&nbsp;</span>
1994
- <span class="cline-any cline-no">&nbsp;</span>
1995
- <span class="cline-any cline-no">&nbsp;</span>
1996
- <span class="cline-any cline-no">&nbsp;</span>
1997
- <span class="cline-any cline-no">&nbsp;</span>
1998
- <span class="cline-any cline-no">&nbsp;</span>
1999
- <span class="cline-any cline-no">&nbsp;</span>
2000
- <span class="cline-any cline-no">&nbsp;</span>
2001
- <span class="cline-any cline-neutral">&nbsp;</span>
2002
- <span class="cline-any cline-no">&nbsp;</span>
2003
- <span class="cline-any cline-no">&nbsp;</span>
2004
- <span class="cline-any cline-no">&nbsp;</span>
2005
- <span class="cline-any cline-no">&nbsp;</span>
2006
- <span class="cline-any cline-no">&nbsp;</span>
2007
- <span class="cline-any cline-no">&nbsp;</span>
2008
- <span class="cline-any cline-no">&nbsp;</span>
2009
- <span class="cline-any cline-no">&nbsp;</span>
2010
- <span class="cline-any cline-no">&nbsp;</span>
2011
- <span class="cline-any cline-no">&nbsp;</span>
2012
- <span class="cline-any cline-no">&nbsp;</span>
2013
- <span class="cline-any cline-no">&nbsp;</span>
2014
- <span class="cline-any cline-no">&nbsp;</span>
2015
- <span class="cline-any cline-no">&nbsp;</span>
2016
- <span class="cline-any cline-no">&nbsp;</span>
2017
- <span class="cline-any cline-no">&nbsp;</span>
2018
- <span class="cline-any cline-no">&nbsp;</span>
2019
- <span class="cline-any cline-no">&nbsp;</span>
2020
- <span class="cline-any cline-no">&nbsp;</span>
2021
- <span class="cline-any cline-no">&nbsp;</span>
2022
- <span class="cline-any cline-no">&nbsp;</span>
2023
- <span class="cline-any cline-no">&nbsp;</span>
2024
- <span class="cline-any cline-no">&nbsp;</span>
2025
- <span class="cline-any cline-no">&nbsp;</span>
2026
- <span class="cline-any cline-no">&nbsp;</span>
2027
- <span class="cline-any cline-no">&nbsp;</span>
2028
- <span class="cline-any cline-no">&nbsp;</span>
2029
- <span class="cline-any cline-no">&nbsp;</span>
2030
- <span class="cline-any cline-no">&nbsp;</span>
2031
- <span class="cline-any cline-no">&nbsp;</span>
2032
- <span class="cline-any cline-no">&nbsp;</span>
2033
- <span class="cline-any cline-no">&nbsp;</span>
2034
- <span class="cline-any cline-no">&nbsp;</span>
2035
- <span class="cline-any cline-no">&nbsp;</span>
2036
- <span class="cline-any cline-no">&nbsp;</span>
2037
- <span class="cline-any cline-no">&nbsp;</span>
2038
- <span class="cline-any cline-no">&nbsp;</span>
2039
- <span class="cline-any cline-no">&nbsp;</span>
2040
- <span class="cline-any cline-no">&nbsp;</span>
2041
- <span class="cline-any cline-no">&nbsp;</span>
2042
- <span class="cline-any cline-no">&nbsp;</span>
2043
- <span class="cline-any cline-neutral">&nbsp;</span>
2044
- <span class="cline-any cline-no">&nbsp;</span>
2045
- <span class="cline-any cline-no">&nbsp;</span>
2046
- <span class="cline-any cline-no">&nbsp;</span>
2047
- <span class="cline-any cline-no">&nbsp;</span>
2048
- <span class="cline-any cline-no">&nbsp;</span>
2049
- <span class="cline-any cline-no">&nbsp;</span>
2050
- <span class="cline-any cline-no">&nbsp;</span>
2051
- <span class="cline-any cline-no">&nbsp;</span>
2052
- <span class="cline-any cline-no">&nbsp;</span>
2053
- <span class="cline-any cline-no">&nbsp;</span>
2054
- <span class="cline-any cline-no">&nbsp;</span>
2055
- <span class="cline-any cline-no">&nbsp;</span>
2056
- <span class="cline-any cline-no">&nbsp;</span>
2057
- <span class="cline-any cline-no">&nbsp;</span>
2058
- <span class="cline-any cline-no">&nbsp;</span>
2059
- <span class="cline-any cline-no">&nbsp;</span>
2060
- <span class="cline-any cline-no">&nbsp;</span>
2061
- <span class="cline-any cline-no">&nbsp;</span>
2062
- <span class="cline-any cline-no">&nbsp;</span>
2063
- <span class="cline-any cline-no">&nbsp;</span>
2064
- <span class="cline-any cline-no">&nbsp;</span>
2065
- <span class="cline-any cline-no">&nbsp;</span>
2066
- <span class="cline-any cline-no">&nbsp;</span>
2067
- <span class="cline-any cline-no">&nbsp;</span>
2068
- <span class="cline-any cline-no">&nbsp;</span>
2069
- <span class="cline-any cline-no">&nbsp;</span>
2070
- <span class="cline-any cline-no">&nbsp;</span>
2071
- <span class="cline-any cline-no">&nbsp;</span>
2072
- <span class="cline-any cline-no">&nbsp;</span>
2073
- <span class="cline-any cline-no">&nbsp;</span>
2074
- <span class="cline-any cline-no">&nbsp;</span>
2075
- <span class="cline-any cline-no">&nbsp;</span>
2076
- <span class="cline-any cline-no">&nbsp;</span>
2077
- <span class="cline-any cline-neutral">&nbsp;</span>
2078
- <span class="cline-any cline-no">&nbsp;</span>
2079
- <span class="cline-any cline-no">&nbsp;</span>
2080
- <span class="cline-any cline-no">&nbsp;</span>
2081
- <span class="cline-any cline-no">&nbsp;</span>
2082
- <span class="cline-any cline-no">&nbsp;</span>
2083
- <span class="cline-any cline-no">&nbsp;</span>
2084
- <span class="cline-any cline-no">&nbsp;</span>
2085
- <span class="cline-any cline-no">&nbsp;</span>
2086
- <span class="cline-any cline-no">&nbsp;</span>
2087
- <span class="cline-any cline-no">&nbsp;</span>
2088
- <span class="cline-any cline-no">&nbsp;</span>
2089
- <span class="cline-any cline-no">&nbsp;</span>
2090
- <span class="cline-any cline-no">&nbsp;</span>
2091
- <span class="cline-any cline-no">&nbsp;</span>
2092
- <span class="cline-any cline-no">&nbsp;</span>
2093
- <span class="cline-any cline-no">&nbsp;</span>
2094
- <span class="cline-any cline-no">&nbsp;</span>
2095
- <span class="cline-any cline-no">&nbsp;</span>
2096
- <span class="cline-any cline-no">&nbsp;</span>
2097
- <span class="cline-any cline-no">&nbsp;</span>
2098
- <span class="cline-any cline-no">&nbsp;</span>
2099
- <span class="cline-any cline-no">&nbsp;</span>
2100
- <span class="cline-any cline-no">&nbsp;</span>
2101
- <span class="cline-any cline-no">&nbsp;</span>
2102
- <span class="cline-any cline-no">&nbsp;</span>
2103
- <span class="cline-any cline-no">&nbsp;</span>
2104
- <span class="cline-any cline-no">&nbsp;</span>
2105
- <span class="cline-any cline-no">&nbsp;</span>
2106
- <span class="cline-any cline-no">&nbsp;</span>
2107
- <span class="cline-any cline-no">&nbsp;</span>
2108
- <span class="cline-any cline-no">&nbsp;</span>
2109
- <span class="cline-any cline-no">&nbsp;</span>
2110
- <span class="cline-any cline-no">&nbsp;</span>
2111
- <span class="cline-any cline-no">&nbsp;</span>
2112
- <span class="cline-any cline-no">&nbsp;</span>
2113
- <span class="cline-any cline-no">&nbsp;</span>
2114
- <span class="cline-any cline-no">&nbsp;</span>
2115
- <span class="cline-any cline-no">&nbsp;</span>
2116
- <span class="cline-any cline-no">&nbsp;</span>
2117
- <span class="cline-any cline-no">&nbsp;</span>
2118
- <span class="cline-any cline-no">&nbsp;</span>
2119
- <span class="cline-any cline-no">&nbsp;</span>
2120
- <span class="cline-any cline-no">&nbsp;</span>
2121
- <span class="cline-any cline-no">&nbsp;</span>
2122
- <span class="cline-any cline-no">&nbsp;</span>
2123
- <span class="cline-any cline-no">&nbsp;</span>
2124
- <span class="cline-any cline-no">&nbsp;</span>
2125
- <span class="cline-any cline-no">&nbsp;</span>
2126
- <span class="cline-any cline-no">&nbsp;</span>
2127
- <span class="cline-any cline-no">&nbsp;</span>
2128
- <span class="cline-any cline-no">&nbsp;</span>
2129
- <span class="cline-any cline-no">&nbsp;</span>
2130
- <span class="cline-any cline-no">&nbsp;</span>
2131
- <span class="cline-any cline-no">&nbsp;</span>
2132
- <span class="cline-any cline-no">&nbsp;</span>
2133
- <span class="cline-any cline-no">&nbsp;</span>
2134
- <span class="cline-any cline-no">&nbsp;</span>
2135
- <span class="cline-any cline-no">&nbsp;</span>
2136
- <span class="cline-any cline-no">&nbsp;</span>
2137
- <span class="cline-any cline-no">&nbsp;</span>
2138
- <span class="cline-any cline-no">&nbsp;</span>
2139
- <span class="cline-any cline-no">&nbsp;</span>
2140
- <span class="cline-any cline-no">&nbsp;</span>
2141
- <span class="cline-any cline-no">&nbsp;</span>
2142
- <span class="cline-any cline-no">&nbsp;</span>
2143
- <span class="cline-any cline-no">&nbsp;</span>
2144
- <span class="cline-any cline-no">&nbsp;</span>
2145
- <span class="cline-any cline-no">&nbsp;</span>
2146
- <span class="cline-any cline-no">&nbsp;</span>
2147
- <span class="cline-any cline-no">&nbsp;</span>
2148
- <span class="cline-any cline-neutral">&nbsp;</span>
2149
- <span class="cline-any cline-no">&nbsp;</span>
2150
- <span class="cline-any cline-no">&nbsp;</span>
2151
- <span class="cline-any cline-no">&nbsp;</span>
2152
- <span class="cline-any cline-no">&nbsp;</span>
2153
- <span class="cline-any cline-no">&nbsp;</span>
2154
- <span class="cline-any cline-no">&nbsp;</span>
2155
- <span class="cline-any cline-no">&nbsp;</span>
2156
- <span class="cline-any cline-neutral">&nbsp;</span>
2157
- <span class="cline-any cline-no">&nbsp;</span>
2158
- <span class="cline-any cline-no">&nbsp;</span>
2159
- <span class="cline-any cline-no">&nbsp;</span>
2160
- <span class="cline-any cline-no">&nbsp;</span>
2161
- <span class="cline-any cline-no">&nbsp;</span>
2162
- <span class="cline-any cline-no">&nbsp;</span>
2163
- <span class="cline-any cline-no">&nbsp;</span>
2164
- <span class="cline-any cline-no">&nbsp;</span>
2165
- <span class="cline-any cline-no">&nbsp;</span>
2166
- <span class="cline-any cline-no">&nbsp;</span>
2167
- <span class="cline-any cline-no">&nbsp;</span>
2168
- <span class="cline-any cline-no">&nbsp;</span>
2169
- <span class="cline-any cline-no">&nbsp;</span>
2170
- <span class="cline-any cline-no">&nbsp;</span>
2171
- <span class="cline-any cline-no">&nbsp;</span>
2172
- <span class="cline-any cline-no">&nbsp;</span>
2173
- <span class="cline-any cline-no">&nbsp;</span>
2174
- <span class="cline-any cline-no">&nbsp;</span>
2175
- <span class="cline-any cline-no">&nbsp;</span>
2176
- <span class="cline-any cline-no">&nbsp;</span>
2177
- <span class="cline-any cline-no">&nbsp;</span>
2178
- <span class="cline-any cline-no">&nbsp;</span>
2179
- <span class="cline-any cline-no">&nbsp;</span>
2180
- <span class="cline-any cline-no">&nbsp;</span>
2181
- <span class="cline-any cline-no">&nbsp;</span>
2182
- <span class="cline-any cline-no">&nbsp;</span>
2183
- <span class="cline-any cline-no">&nbsp;</span>
2184
- <span class="cline-any cline-no">&nbsp;</span>
2185
- <span class="cline-any cline-no">&nbsp;</span>
2186
- <span class="cline-any cline-no">&nbsp;</span>
2187
- <span class="cline-any cline-no">&nbsp;</span>
2188
- <span class="cline-any cline-no">&nbsp;</span>
2189
- <span class="cline-any cline-no">&nbsp;</span>
2190
- <span class="cline-any cline-no">&nbsp;</span>
2191
- <span class="cline-any cline-no">&nbsp;</span>
2192
- <span class="cline-any cline-no">&nbsp;</span>
2193
- <span class="cline-any cline-no">&nbsp;</span>
2194
- <span class="cline-any cline-no">&nbsp;</span>
2195
- <span class="cline-any cline-no">&nbsp;</span>
2196
- <span class="cline-any cline-neutral">&nbsp;</span>
2197
- <span class="cline-any cline-no">&nbsp;</span>
2198
- <span class="cline-any cline-no">&nbsp;</span>
2199
- <span class="cline-any cline-no">&nbsp;</span>
2200
- <span class="cline-any cline-no">&nbsp;</span>
2201
- <span class="cline-any cline-no">&nbsp;</span>
2202
- <span class="cline-any cline-no">&nbsp;</span>
2203
- <span class="cline-any cline-no">&nbsp;</span>
2204
- <span class="cline-any cline-no">&nbsp;</span>
2205
- <span class="cline-any cline-no">&nbsp;</span>
2206
- <span class="cline-any cline-no">&nbsp;</span>
2207
- <span class="cline-any cline-no">&nbsp;</span>
2208
- <span class="cline-any cline-no">&nbsp;</span>
2209
- <span class="cline-any cline-no">&nbsp;</span>
2210
- <span class="cline-any cline-no">&nbsp;</span>
2211
- <span class="cline-any cline-neutral">&nbsp;</span>
2212
- <span class="cline-any cline-no">&nbsp;</span>
2213
- <span class="cline-any cline-no">&nbsp;</span>
2214
- <span class="cline-any cline-no">&nbsp;</span>
2215
- <span class="cline-any cline-no">&nbsp;</span>
2216
- <span class="cline-any cline-no">&nbsp;</span>
2217
- <span class="cline-any cline-no">&nbsp;</span>
2218
- <span class="cline-any cline-no">&nbsp;</span>
2219
- <span class="cline-any cline-no">&nbsp;</span>
2220
- <span class="cline-any cline-no">&nbsp;</span>
2221
- <span class="cline-any cline-no">&nbsp;</span>
2222
- <span class="cline-any cline-no">&nbsp;</span>
2223
- <span class="cline-any cline-no">&nbsp;</span>
2224
- <span class="cline-any cline-no">&nbsp;</span>
2225
- <span class="cline-any cline-no">&nbsp;</span>
2226
- <span class="cline-any cline-no">&nbsp;</span>
2227
- <span class="cline-any cline-no">&nbsp;</span>
2228
- <span class="cline-any cline-no">&nbsp;</span>
2229
- <span class="cline-any cline-no">&nbsp;</span>
2230
- <span class="cline-any cline-no">&nbsp;</span>
2231
- <span class="cline-any cline-no">&nbsp;</span>
2232
- <span class="cline-any cline-no">&nbsp;</span>
2233
- <span class="cline-any cline-no">&nbsp;</span>
2234
- <span class="cline-any cline-no">&nbsp;</span>
2235
- <span class="cline-any cline-no">&nbsp;</span>
2236
- <span class="cline-any cline-no">&nbsp;</span>
2237
- <span class="cline-any cline-no">&nbsp;</span>
2238
- <span class="cline-any cline-no">&nbsp;</span>
2239
- <span class="cline-any cline-no">&nbsp;</span>
2240
- <span class="cline-any cline-no">&nbsp;</span>
2241
- <span class="cline-any cline-no">&nbsp;</span>
2242
- <span class="cline-any cline-no">&nbsp;</span>
2243
- <span class="cline-any cline-no">&nbsp;</span>
2244
- <span class="cline-any cline-no">&nbsp;</span>
2245
- <span class="cline-any cline-no">&nbsp;</span>
2246
- <span class="cline-any cline-no">&nbsp;</span>
2247
- <span class="cline-any cline-no">&nbsp;</span>
2248
- <span class="cline-any cline-no">&nbsp;</span>
2249
- <span class="cline-any cline-no">&nbsp;</span>
2250
- <span class="cline-any cline-no">&nbsp;</span>
2251
- <span class="cline-any cline-no">&nbsp;</span>
2252
- <span class="cline-any cline-no">&nbsp;</span>
2253
- <span class="cline-any cline-no">&nbsp;</span>
2254
- <span class="cline-any cline-no">&nbsp;</span>
2255
- <span class="cline-any cline-no">&nbsp;</span>
2256
- <span class="cline-any cline-no">&nbsp;</span>
2257
- <span class="cline-any cline-no">&nbsp;</span>
2258
- <span class="cline-any cline-no">&nbsp;</span>
2259
- <span class="cline-any cline-no">&nbsp;</span>
2260
- <span class="cline-any cline-no">&nbsp;</span>
2261
- <span class="cline-any cline-no">&nbsp;</span>
2262
- <span class="cline-any cline-no">&nbsp;</span>
2263
- <span class="cline-any cline-no">&nbsp;</span>
2264
- <span class="cline-any cline-no">&nbsp;</span>
2265
- <span class="cline-any cline-no">&nbsp;</span>
2266
- <span class="cline-any cline-no">&nbsp;</span>
2267
- <span class="cline-any cline-no">&nbsp;</span>
2268
- <span class="cline-any cline-no">&nbsp;</span>
2269
- <span class="cline-any cline-no">&nbsp;</span>
2270
- <span class="cline-any cline-no">&nbsp;</span>
2271
- <span class="cline-any cline-no">&nbsp;</span>
2272
- <span class="cline-any cline-no">&nbsp;</span>
2273
- <span class="cline-any cline-no">&nbsp;</span>
2274
- <span class="cline-any cline-no">&nbsp;</span>
2275
- <span class="cline-any cline-no">&nbsp;</span>
2276
- <span class="cline-any cline-no">&nbsp;</span>
2277
- <span class="cline-any cline-no">&nbsp;</span>
2278
- <span class="cline-any cline-no">&nbsp;</span>
2279
- <span class="cline-any cline-no">&nbsp;</span>
2280
- <span class="cline-any cline-no">&nbsp;</span>
2281
- <span class="cline-any cline-no">&nbsp;</span>
2282
- <span class="cline-any cline-no">&nbsp;</span>
2283
- <span class="cline-any cline-no">&nbsp;</span>
2284
- <span class="cline-any cline-no">&nbsp;</span>
2285
- <span class="cline-any cline-no">&nbsp;</span>
2286
- <span class="cline-any cline-no">&nbsp;</span>
2287
- <span class="cline-any cline-no">&nbsp;</span>
2288
- <span class="cline-any cline-no">&nbsp;</span>
2289
- <span class="cline-any cline-no">&nbsp;</span>
2290
- <span class="cline-any cline-no">&nbsp;</span>
2291
- <span class="cline-any cline-no">&nbsp;</span>
2292
- <span class="cline-any cline-no">&nbsp;</span>
2293
- <span class="cline-any cline-no">&nbsp;</span>
2294
- <span class="cline-any cline-no">&nbsp;</span>
2295
- <span class="cline-any cline-no">&nbsp;</span>
2296
- <span class="cline-any cline-no">&nbsp;</span>
2297
- <span class="cline-any cline-no">&nbsp;</span>
2298
- <span class="cline-any cline-no">&nbsp;</span>
2299
- <span class="cline-any cline-no">&nbsp;</span>
2300
- <span class="cline-any cline-no">&nbsp;</span>
2301
- <span class="cline-any cline-no">&nbsp;</span>
2302
- <span class="cline-any cline-no">&nbsp;</span>
2303
- <span class="cline-any cline-neutral">&nbsp;</span>
2304
- <span class="cline-any cline-no">&nbsp;</span>
2305
- <span class="cline-any cline-no">&nbsp;</span>
2306
- <span class="cline-any cline-no">&nbsp;</span>
2307
- <span class="cline-any cline-no">&nbsp;</span>
2308
- <span class="cline-any cline-no">&nbsp;</span>
2309
- <span class="cline-any cline-no">&nbsp;</span>
2310
- <span class="cline-any cline-no">&nbsp;</span>
2311
- <span class="cline-any cline-no">&nbsp;</span>
2312
- <span class="cline-any cline-no">&nbsp;</span>
2313
- <span class="cline-any cline-no">&nbsp;</span>
2314
- <span class="cline-any cline-no">&nbsp;</span>
2315
- <span class="cline-any cline-no">&nbsp;</span>
2316
- <span class="cline-any cline-no">&nbsp;</span>
2317
- <span class="cline-any cline-no">&nbsp;</span>
2318
- <span class="cline-any cline-no">&nbsp;</span>
2319
- <span class="cline-any cline-no">&nbsp;</span>
2320
- <span class="cline-any cline-neutral">&nbsp;</span>
2321
- <span class="cline-any cline-no">&nbsp;</span>
2322
- <span class="cline-any cline-no">&nbsp;</span>
2323
- <span class="cline-any cline-no">&nbsp;</span>
2324
- <span class="cline-any cline-no">&nbsp;</span>
2325
- <span class="cline-any cline-no">&nbsp;</span>
2326
- <span class="cline-any cline-no">&nbsp;</span>
2327
- <span class="cline-any cline-no">&nbsp;</span>
2328
- <span class="cline-any cline-neutral">&nbsp;</span>
2329
- <span class="cline-any cline-no">&nbsp;</span>
2330
- <span class="cline-any cline-no">&nbsp;</span>
2331
- <span class="cline-any cline-no">&nbsp;</span>
2332
- <span class="cline-any cline-no">&nbsp;</span>
2333
- <span class="cline-any cline-no">&nbsp;</span>
2334
- <span class="cline-any cline-no">&nbsp;</span>
2335
- <span class="cline-any cline-no">&nbsp;</span>
2336
- <span class="cline-any cline-no">&nbsp;</span>
2337
- <span class="cline-any cline-no">&nbsp;</span>
2338
- <span class="cline-any cline-no">&nbsp;</span>
2339
- <span class="cline-any cline-no">&nbsp;</span>
2340
- <span class="cline-any cline-no">&nbsp;</span>
2341
- <span class="cline-any cline-no">&nbsp;</span>
2342
- <span class="cline-any cline-no">&nbsp;</span>
2343
- <span class="cline-any cline-no">&nbsp;</span>
2344
- <span class="cline-any cline-no">&nbsp;</span>
2345
- <span class="cline-any cline-no">&nbsp;</span>
2346
- <span class="cline-any cline-no">&nbsp;</span>
2347
- <span class="cline-any cline-no">&nbsp;</span>
2348
- <span class="cline-any cline-no">&nbsp;</span>
2349
- <span class="cline-any cline-no">&nbsp;</span>
2350
- <span class="cline-any cline-no">&nbsp;</span>
2351
- <span class="cline-any cline-no">&nbsp;</span>
2352
- <span class="cline-any cline-no">&nbsp;</span>
2353
- <span class="cline-any cline-neutral">&nbsp;</span>
2354
- <span class="cline-any cline-no">&nbsp;</span>
2355
- <span class="cline-any cline-no">&nbsp;</span>
2356
- <span class="cline-any cline-no">&nbsp;</span>
2357
- <span class="cline-any cline-no">&nbsp;</span>
2358
- <span class="cline-any cline-no">&nbsp;</span>
2359
- <span class="cline-any cline-no">&nbsp;</span>
2360
- <span class="cline-any cline-no">&nbsp;</span>
2361
- <span class="cline-any cline-no">&nbsp;</span>
2362
- <span class="cline-any cline-no">&nbsp;</span>
2363
- <span class="cline-any cline-no">&nbsp;</span>
2364
- <span class="cline-any cline-no">&nbsp;</span>
2365
- <span class="cline-any cline-no">&nbsp;</span>
2366
- <span class="cline-any cline-no">&nbsp;</span>
2367
- <span class="cline-any cline-no">&nbsp;</span>
2368
- <span class="cline-any cline-no">&nbsp;</span>
2369
- <span class="cline-any cline-no">&nbsp;</span>
2370
- <span class="cline-any cline-no">&nbsp;</span>
2371
- <span class="cline-any cline-no">&nbsp;</span>
2372
- <span class="cline-any cline-no">&nbsp;</span>
2373
- <span class="cline-any cline-no">&nbsp;</span>
2374
- <span class="cline-any cline-no">&nbsp;</span>
2375
- <span class="cline-any cline-no">&nbsp;</span>
2376
- <span class="cline-any cline-no">&nbsp;</span>
2377
- <span class="cline-any cline-no">&nbsp;</span>
2378
- <span class="cline-any cline-no">&nbsp;</span>
2379
- <span class="cline-any cline-neutral">&nbsp;</span>
2380
- <span class="cline-any cline-no">&nbsp;</span>
2381
- <span class="cline-any cline-no">&nbsp;</span>
2382
- <span class="cline-any cline-no">&nbsp;</span>
2383
- <span class="cline-any cline-no">&nbsp;</span>
2384
- <span class="cline-any cline-no">&nbsp;</span>
2385
- <span class="cline-any cline-no">&nbsp;</span>
2386
- <span class="cline-any cline-no">&nbsp;</span>
2387
- <span class="cline-any cline-no">&nbsp;</span>
2388
- <span class="cline-any cline-no">&nbsp;</span>
2389
- <span class="cline-any cline-no">&nbsp;</span>
2390
- <span class="cline-any cline-no">&nbsp;</span>
2391
- <span class="cline-any cline-no">&nbsp;</span>
2392
- <span class="cline-any cline-no">&nbsp;</span>
2393
- <span class="cline-any cline-no">&nbsp;</span>
2394
- <span class="cline-any cline-no">&nbsp;</span>
2395
- <span class="cline-any cline-no">&nbsp;</span>
2396
- <span class="cline-any cline-no">&nbsp;</span>
2397
- <span class="cline-any cline-no">&nbsp;</span>
2398
- <span class="cline-any cline-neutral">&nbsp;</span>
2399
- <span class="cline-any cline-no">&nbsp;</span>
2400
- <span class="cline-any cline-no">&nbsp;</span>
2401
- <span class="cline-any cline-no">&nbsp;</span>
2402
- <span class="cline-any cline-no">&nbsp;</span>
2403
- <span class="cline-any cline-no">&nbsp;</span>
2404
- <span class="cline-any cline-no">&nbsp;</span>
2405
- <span class="cline-any cline-no">&nbsp;</span>
2406
- <span class="cline-any cline-no">&nbsp;</span>
2407
- <span class="cline-any cline-no">&nbsp;</span>
2408
- <span class="cline-any cline-no">&nbsp;</span>
2409
- <span class="cline-any cline-no">&nbsp;</span>
2410
- <span class="cline-any cline-neutral">&nbsp;</span>
2411
- <span class="cline-any cline-no">&nbsp;</span>
2412
- <span class="cline-any cline-no">&nbsp;</span>
2413
- <span class="cline-any cline-no">&nbsp;</span>
2414
- <span class="cline-any cline-no">&nbsp;</span>
2415
- <span class="cline-any cline-no">&nbsp;</span>
2416
- <span class="cline-any cline-no">&nbsp;</span>
2417
- <span class="cline-any cline-no">&nbsp;</span>
2418
- <span class="cline-any cline-neutral">&nbsp;</span>
2419
- <span class="cline-any cline-no">&nbsp;</span>
2420
- <span class="cline-any cline-no">&nbsp;</span>
2421
- <span class="cline-any cline-no">&nbsp;</span>
2422
- <span class="cline-any cline-no">&nbsp;</span>
2423
- <span class="cline-any cline-no">&nbsp;</span>
2424
- <span class="cline-any cline-no">&nbsp;</span>
2425
- <span class="cline-any cline-no">&nbsp;</span>
2426
- <span class="cline-any cline-neutral">&nbsp;</span>
2427
- <span class="cline-any cline-no">&nbsp;</span>
2428
- <span class="cline-any cline-no">&nbsp;</span>
2429
- <span class="cline-any cline-no">&nbsp;</span>
2430
- <span class="cline-any cline-no">&nbsp;</span>
2431
- <span class="cline-any cline-no">&nbsp;</span>
2432
- <span class="cline-any cline-no">&nbsp;</span>
2433
- <span class="cline-any cline-no">&nbsp;</span>
2434
- <span class="cline-any cline-neutral">&nbsp;</span>
2435
- <span class="cline-any cline-no">&nbsp;</span>
2436
- <span class="cline-any cline-no">&nbsp;</span>
2437
- <span class="cline-any cline-no">&nbsp;</span>
2438
- <span class="cline-any cline-no">&nbsp;</span>
2439
- <span class="cline-any cline-no">&nbsp;</span>
2440
- <span class="cline-any cline-no">&nbsp;</span>
2441
- <span class="cline-any cline-no">&nbsp;</span>
2442
- <span class="cline-any cline-neutral">&nbsp;</span>
2443
- <span class="cline-any cline-no">&nbsp;</span>
2444
- <span class="cline-any cline-no">&nbsp;</span>
2445
- <span class="cline-any cline-no">&nbsp;</span>
2446
- <span class="cline-any cline-no">&nbsp;</span>
2447
- <span class="cline-any cline-no">&nbsp;</span>
2448
- <span class="cline-any cline-no">&nbsp;</span>
2449
- <span class="cline-any cline-no">&nbsp;</span>
2450
- <span class="cline-any cline-no">&nbsp;</span>
2451
- <span class="cline-any cline-neutral">&nbsp;</span>
2452
- <span class="cline-any cline-no">&nbsp;</span>
2453
- <span class="cline-any cline-no">&nbsp;</span>
2454
- <span class="cline-any cline-no">&nbsp;</span>
2455
- <span class="cline-any cline-no">&nbsp;</span>
2456
- <span class="cline-any cline-no">&nbsp;</span>
2457
- <span class="cline-any cline-no">&nbsp;</span>
2458
- <span class="cline-any cline-no">&nbsp;</span>
2459
- <span class="cline-any cline-no">&nbsp;</span>
2460
- <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js"><span class="cstat-no" title="statement not covered" >import { Rectangle } from '../geom/rectangle.js';<span class="fstat-no" title="function not covered" ><span class="branch-0 cbranch-no" title="branch not covered" ></span></span></span>
2461
- <span class="cstat-no" title="statement not covered" >import { canPlayAudio } from './device_util.js';</span>
2462
- <span class="cstat-no" title="statement not covered" >import { ENGINE_ERROR_INVALID_BITMAP_FONT_ATLAS } from './error_code.js';</span>
2463
- <span class="cstat-no" title="statement not covered" >import { Signal } from './signal.js';</span>
2464
- &nbsp;
2465
- <span class="cstat-no" title="statement not covered" >const TEXTURE_ATLAS_JSON_HASH = 1;</span>
2466
- &nbsp;
2467
- <span class="cstat-no" title="statement not covered" >export class Loader {</span>
2468
- <span class="cstat-no" title="statement not covered" > /**</span>
2469
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2470
- <span class="cstat-no" title="statement not covered" > * @param {import('./game.js').Game} game - TBD.</span>
2471
- <span class="cstat-no" title="statement not covered" > */</span>
2472
- <span class="cstat-no" title="statement not covered" > constructor(game) {</span>
2473
- <span class="cstat-no" title="statement not covered" > this.game = game;</span>
2474
- <span class="cstat-no" title="statement not covered" > this.cache = game.cache;</span>
2475
- <span class="cstat-no" title="statement not covered" > this.isLoading = false;</span>
2476
- <span class="cstat-no" title="statement not covered" > this.isUseLog = false;</span>
2477
- <span class="cstat-no" title="statement not covered" > this.isUseRetry = true;</span>
2478
- <span class="cstat-no" title="statement not covered" > this.maxRetry = 3;</span>
2479
- <span class="cstat-no" title="statement not covered" > this.hasLoaded = false;</span>
2480
- <span class="cstat-no" title="statement not covered" > this.preloadSprite = null;</span>
2481
- <span class="cstat-no" title="statement not covered" > this.crossOrigin = false;</span>
2482
- <span class="cstat-no" title="statement not covered" > this.baseURL = '';</span>
2483
- <span class="cstat-no" title="statement not covered" > this.path = '';</span>
2484
- <span class="cstat-no" title="statement not covered" > this.headers = {</span>
2485
- <span class="cstat-no" title="statement not covered" > requestedWith: false,</span>
2486
- <span class="cstat-no" title="statement not covered" > json: 'application/json',</span>
2487
- <span class="cstat-no" title="statement not covered" > xml: 'application/xml',</span>
2488
- <span class="cstat-no" title="statement not covered" > };</span>
2489
- <span class="cstat-no" title="statement not covered" > this.onLoadStart = new Signal();</span>
2490
- <span class="cstat-no" title="statement not covered" > this.onLoadComplete = new Signal();</span>
2491
- <span class="cstat-no" title="statement not covered" > this.onPackComplete = new Signal();</span>
2492
- <span class="cstat-no" title="statement not covered" > this.onFileStart = new Signal();</span>
2493
- <span class="cstat-no" title="statement not covered" > this.onFileComplete = new Signal();</span>
2494
- <span class="cstat-no" title="statement not covered" > this.onFileError = new Signal();</span>
2495
- <span class="cstat-no" title="statement not covered" > this.maxParallelDownloads = this.game.config.maxParallelDownloads || 16;</span>
2496
- <span class="cstat-no" title="statement not covered" > this._withSyncPointDepth = 0;</span>
2497
- <span class="cstat-no" title="statement not covered" > this._fileList = [];</span>
2498
- <span class="cstat-no" title="statement not covered" > this._flightQueue = [];</span>
2499
- <span class="cstat-no" title="statement not covered" > this._processingHead = 0;</span>
2500
- <span class="cstat-no" title="statement not covered" > this._fileLoadStarted = false;</span>
2501
- <span class="cstat-no" title="statement not covered" > this._totalPackCount = 0;</span>
2502
- <span class="cstat-no" title="statement not covered" > this._totalFileCount = 0;</span>
2503
- <span class="cstat-no" title="statement not covered" > this._loadedPackCount = 0;</span>
2504
- <span class="cstat-no" title="statement not covered" > this._loadedFileCount = 0;</span>
2505
- <span class="cstat-no" title="statement not covered" > }</span>
2506
- &nbsp;
2507
- <span class="cstat-no" title="statement not covered" > /**</span>
2508
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2509
- <span class="cstat-no" title="statement not covered" > * @param {import('../display/image.js').Image} sprite - TBD.</span>
2510
- <span class="cstat-no" title="statement not covered" > * @param {number} direction - TBD.</span>
2511
- <span class="cstat-no" title="statement not covered" > */</span>
2512
- <span class="cstat-no" title="statement not covered" > setPreloadSprite(sprite, direction = 0) {</span>
2513
- <span class="cstat-no" title="statement not covered" > this.preloadSprite = {</span>
2514
- <span class="cstat-no" title="statement not covered" > sprite,</span>
2515
- <span class="cstat-no" title="statement not covered" > direction,</span>
2516
- <span class="cstat-no" title="statement not covered" > width: sprite.width,</span>
2517
- <span class="cstat-no" title="statement not covered" > height: sprite.height,</span>
2518
- <span class="cstat-no" title="statement not covered" > rect: null,</span>
2519
- <span class="cstat-no" title="statement not covered" > };</span>
2520
- <span class="cstat-no" title="statement not covered" > if (direction === 0) {</span>
2521
- <span class="cstat-no" title="statement not covered" > // Horizontal rect</span>
2522
- <span class="cstat-no" title="statement not covered" > this.preloadSprite.rect = new Rectangle(0, 0, 1, sprite.height);</span>
2523
- <span class="cstat-no" title="statement not covered" > } else {</span>
2524
- <span class="cstat-no" title="statement not covered" > // Vertical rect</span>
2525
- <span class="cstat-no" title="statement not covered" > this.preloadSprite.rect = new Rectangle(0, 0, sprite.width, 1);</span>
2526
- <span class="cstat-no" title="statement not covered" > }</span>
2527
- <span class="cstat-no" title="statement not covered" > sprite.crop(this.preloadSprite.rect);</span>
2528
- <span class="cstat-no" title="statement not covered" > sprite.visible = true;</span>
2529
- <span class="cstat-no" title="statement not covered" > }</span>
2530
- &nbsp;
2531
- <span class="cstat-no" title="statement not covered" > /**</span>
2532
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2533
- <span class="cstat-no" title="statement not covered" > */</span>
2534
- <span class="cstat-no" title="statement not covered" > resize() {</span>
2535
- <span class="cstat-no" title="statement not covered" > if (this.preloadSprite &amp;&amp; this.preloadSprite.height !== this.preloadSprite.sprite.height) {</span>
2536
- <span class="cstat-no" title="statement not covered" > this.preloadSprite.rect.height = this.preloadSprite.sprite.height;</span>
2537
- <span class="cstat-no" title="statement not covered" > }</span>
2538
- <span class="cstat-no" title="statement not covered" > }</span>
2539
- &nbsp;
2540
- <span class="cstat-no" title="statement not covered" > /**</span>
2541
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2542
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
2543
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2544
- <span class="cstat-no" title="statement not covered" > * @returns {boolean} TBD.</span>
2545
- <span class="cstat-no" title="statement not covered" > */</span>
2546
- <span class="cstat-no" title="statement not covered" > checkKeyExists(type, key) {</span>
2547
- <span class="cstat-no" title="statement not covered" > return this.getAssetIndex(type, key) &gt; -1;</span>
2548
- <span class="cstat-no" title="statement not covered" > }</span>
2549
- &nbsp;
2550
- <span class="cstat-no" title="statement not covered" > /**</span>
2551
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2552
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
2553
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2554
- <span class="cstat-no" title="statement not covered" > * @returns {number} TBD.</span>
2555
- <span class="cstat-no" title="statement not covered" > */</span>
2556
- <span class="cstat-no" title="statement not covered" > getAssetIndex(type, key) {</span>
2557
- <span class="cstat-no" title="statement not covered" > let bestFound = -1;</span>
2558
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; this._fileList.length; i += 1) {</span>
2559
- <span class="cstat-no" title="statement not covered" > const file = this._fileList[i];</span>
2560
- <span class="cstat-no" title="statement not covered" > if (file.type === type &amp;&amp; file.key === key) {</span>
2561
- <span class="cstat-no" title="statement not covered" > bestFound = i;</span>
2562
- <span class="cstat-no" title="statement not covered" > // An already loaded/loading file may be superceded.</span>
2563
- <span class="cstat-no" title="statement not covered" > if (!file.loaded &amp;&amp; !file.loading) {</span>
2564
- <span class="cstat-no" title="statement not covered" > break;</span>
2565
- <span class="cstat-no" title="statement not covered" > }</span>
2566
- <span class="cstat-no" title="statement not covered" > }</span>
2567
- <span class="cstat-no" title="statement not covered" > }</span>
2568
- &nbsp;
2569
- <span class="cstat-no" title="statement not covered" > return bestFound;</span>
2570
- <span class="cstat-no" title="statement not covered" > }</span>
2571
- &nbsp;
2572
- <span class="cstat-no" title="statement not covered" > /**</span>
2573
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2574
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
2575
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2576
- <span class="cstat-no" title="statement not covered" > * @returns {object} TBD.</span>
2577
- <span class="cstat-no" title="statement not covered" > */</span>
2578
- <span class="cstat-no" title="statement not covered" > getAsset(type, key) {</span>
2579
- <span class="cstat-no" title="statement not covered" > const fileIndex = this.getAssetIndex(type, key);</span>
2580
- <span class="cstat-no" title="statement not covered" > if (fileIndex &gt; -1) {</span>
2581
- <span class="cstat-no" title="statement not covered" > return { index: fileIndex, file: this._fileList[fileIndex] };</span>
2582
- <span class="cstat-no" title="statement not covered" > }</span>
2583
- <span class="cstat-no" title="statement not covered" > return null;</span>
2584
- <span class="cstat-no" title="statement not covered" > }</span>
2585
- &nbsp;
2586
- <span class="cstat-no" title="statement not covered" > /**</span>
2587
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2588
- <span class="cstat-no" title="statement not covered" > * @param {boolean} hard - TBD.</span>
2589
- <span class="cstat-no" title="statement not covered" > * @param {boolean} clearEvents - TBD.</span>
2590
- <span class="cstat-no" title="statement not covered" > */</span>
2591
- <span class="cstat-no" title="statement not covered" > reset(hard = false, clearEvents = false) {</span>
2592
- <span class="cstat-no" title="statement not covered" > if (hard) {</span>
2593
- <span class="cstat-no" title="statement not covered" > this.preloadSprite = null;</span>
2594
- <span class="cstat-no" title="statement not covered" > }</span>
2595
- <span class="cstat-no" title="statement not covered" > this.isLoading = false;</span>
2596
- <span class="cstat-no" title="statement not covered" > this._processingHead = 0;</span>
2597
- <span class="cstat-no" title="statement not covered" > this._fileList.length = 0;</span>
2598
- <span class="cstat-no" title="statement not covered" > this._flightQueue.length = 0;</span>
2599
- <span class="cstat-no" title="statement not covered" > this._fileLoadStarted = false;</span>
2600
- <span class="cstat-no" title="statement not covered" > this._totalFileCount = 0;</span>
2601
- <span class="cstat-no" title="statement not covered" > this._totalPackCount = 0;</span>
2602
- <span class="cstat-no" title="statement not covered" > this._loadedPackCount = 0;</span>
2603
- <span class="cstat-no" title="statement not covered" > this._loadedFileCount = 0;</span>
2604
- <span class="cstat-no" title="statement not covered" > if (clearEvents) {</span>
2605
- <span class="cstat-no" title="statement not covered" > this.onLoadStart.removeAll();</span>
2606
- <span class="cstat-no" title="statement not covered" > this.onLoadComplete.removeAll();</span>
2607
- <span class="cstat-no" title="statement not covered" > this.onPackComplete.removeAll();</span>
2608
- <span class="cstat-no" title="statement not covered" > this.onFileStart.removeAll();</span>
2609
- <span class="cstat-no" title="statement not covered" > this.onFileComplete.removeAll();</span>
2610
- <span class="cstat-no" title="statement not covered" > this.onFileError.removeAll();</span>
2611
- <span class="cstat-no" title="statement not covered" > }</span>
2612
- <span class="cstat-no" title="statement not covered" > }</span>
2613
- &nbsp;
2614
- <span class="cstat-no" title="statement not covered" > /**</span>
2615
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2616
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
2617
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2618
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2619
- <span class="cstat-no" title="statement not covered" > * @param {object} properties - TBD.</span>
2620
- <span class="cstat-no" title="statement not covered" > * @param {boolean} overwrite - TBD.</span>
2621
- <span class="cstat-no" title="statement not covered" > * @param {string} extension - TBD.</span>
2622
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2623
- <span class="cstat-no" title="statement not covered" > */</span>
2624
- <span class="cstat-no" title="statement not covered" > addToFileList(type, key = '', url = null, properties = null, overwrite = false, extension = null) {</span>
2625
- <span class="cstat-no" title="statement not covered" > if (key === undefined || key === '') {</span>
2626
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn(`Loader: Invalid or no key given of type ${type}`);</span>
2627
- <span class="cstat-no" title="statement not covered" > return this;</span>
2628
- <span class="cstat-no" title="statement not covered" > }</span>
2629
- <span class="cstat-no" title="statement not covered" > if (url === undefined || url === null) {</span>
2630
- <span class="cstat-no" title="statement not covered" > if (extension) {</span>
2631
- <span class="cstat-no" title="statement not covered" > url = key + extension;</span>
2632
- <span class="cstat-no" title="statement not covered" > } else {</span>
2633
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn(`Loader: No URL given for file type: ${type} key: ${key}`);</span>
2634
- <span class="cstat-no" title="statement not covered" > return this;</span>
2635
- <span class="cstat-no" title="statement not covered" > }</span>
2636
- <span class="cstat-no" title="statement not covered" > }</span>
2637
- <span class="cstat-no" title="statement not covered" > const file = {</span>
2638
- <span class="cstat-no" title="statement not covered" > type,</span>
2639
- <span class="cstat-no" title="statement not covered" > key,</span>
2640
- <span class="cstat-no" title="statement not covered" > path: this.path,</span>
2641
- <span class="cstat-no" title="statement not covered" > url,</span>
2642
- <span class="cstat-no" title="statement not covered" > syncPoint: this._withSyncPointDepth &gt; 0,</span>
2643
- <span class="cstat-no" title="statement not covered" > data: null,</span>
2644
- <span class="cstat-no" title="statement not covered" > loading: false,</span>
2645
- <span class="cstat-no" title="statement not covered" > loaded: false,</span>
2646
- <span class="cstat-no" title="statement not covered" > error: false,</span>
2647
- <span class="cstat-no" title="statement not covered" > };</span>
2648
- <span class="cstat-no" title="statement not covered" > if (properties) {</span>
2649
- <span class="cstat-no" title="statement not covered" > const keys = Object.keys(properties);</span>
2650
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; keys.length; i += 1) {</span>
2651
- <span class="cstat-no" title="statement not covered" > const prop = keys[i];</span>
2652
- <span class="cstat-no" title="statement not covered" > file[prop] = properties[prop];</span>
2653
- <span class="cstat-no" title="statement not covered" > }</span>
2654
- <span class="cstat-no" title="statement not covered" > }</span>
2655
- <span class="cstat-no" title="statement not covered" > const fileIndex = this.getAssetIndex(type, key);</span>
2656
- <span class="cstat-no" title="statement not covered" > if (overwrite &amp;&amp; fileIndex &gt; -1) {</span>
2657
- <span class="cstat-no" title="statement not covered" > const currentFile = this._fileList[fileIndex];</span>
2658
- <span class="cstat-no" title="statement not covered" > if (!currentFile.loading &amp;&amp; !currentFile.loaded) {</span>
2659
- <span class="cstat-no" title="statement not covered" > this._fileList[fileIndex] = file;</span>
2660
- <span class="cstat-no" title="statement not covered" > } else {</span>
2661
- <span class="cstat-no" title="statement not covered" > this._fileList.push(file);</span>
2662
- <span class="cstat-no" title="statement not covered" > this._totalFileCount += 1;</span>
2663
- <span class="cstat-no" title="statement not covered" > }</span>
2664
- <span class="cstat-no" title="statement not covered" > } else if (fileIndex === -1) {</span>
2665
- <span class="cstat-no" title="statement not covered" > this._fileList.push(file);</span>
2666
- <span class="cstat-no" title="statement not covered" > this._totalFileCount += 1;</span>
2667
- <span class="cstat-no" title="statement not covered" > }</span>
2668
- <span class="cstat-no" title="statement not covered" > return this;</span>
2669
- <span class="cstat-no" title="statement not covered" > }</span>
2670
- &nbsp;
2671
- <span class="cstat-no" title="statement not covered" > /**</span>
2672
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2673
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
2674
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2675
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2676
- <span class="cstat-no" title="statement not covered" > * @param {object} properties - TBD.</span>
2677
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2678
- <span class="cstat-no" title="statement not covered" > */</span>
2679
- <span class="cstat-no" title="statement not covered" > replaceInFileList(type, key, url, properties) {</span>
2680
- <span class="cstat-no" title="statement not covered" > return this.addToFileList(type, key, url, properties, true);</span>
2681
- <span class="cstat-no" title="statement not covered" > }</span>
2682
- &nbsp;
2683
- <span class="cstat-no" title="statement not covered" > /**</span>
2684
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2685
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2686
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2687
- <span class="cstat-no" title="statement not covered" > * @param {object} data - TBD.</span>
2688
- <span class="cstat-no" title="statement not covered" > * @param {object} callbackContext - TBD.</span>
2689
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2690
- <span class="cstat-no" title="statement not covered" > */</span>
2691
- <span class="cstat-no" title="statement not covered" > pack(key, url, data, callbackContext) {</span>
2692
- <span class="cstat-no" title="statement not covered" > const pack = {</span>
2693
- <span class="cstat-no" title="statement not covered" > type: 'packfile',</span>
2694
- <span class="cstat-no" title="statement not covered" > key: key,</span>
2695
- <span class="cstat-no" title="statement not covered" > url: url,</span>
2696
- <span class="cstat-no" title="statement not covered" > path: this.path,</span>
2697
- <span class="cstat-no" title="statement not covered" > syncPoint: true,</span>
2698
- <span class="cstat-no" title="statement not covered" > data: null,</span>
2699
- <span class="cstat-no" title="statement not covered" > loading: false,</span>
2700
- <span class="cstat-no" title="statement not covered" > loaded: false,</span>
2701
- <span class="cstat-no" title="statement not covered" > error: false,</span>
2702
- <span class="cstat-no" title="statement not covered" > callbackContext: callbackContext,</span>
2703
- <span class="cstat-no" title="statement not covered" > };</span>
2704
- <span class="cstat-no" title="statement not covered" > if (data) {</span>
2705
- <span class="cstat-no" title="statement not covered" > if (typeof data === 'string') {</span>
2706
- <span class="cstat-no" title="statement not covered" > data = JSON.parse(data);</span>
2707
- <span class="cstat-no" title="statement not covered" > }</span>
2708
- <span class="cstat-no" title="statement not covered" > pack.data = data || {};</span>
2709
- <span class="cstat-no" title="statement not covered" > pack.loaded = true;</span>
2710
- <span class="cstat-no" title="statement not covered" > }</span>
2711
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; this._fileList.length + 1; i += 1) {</span>
2712
- <span class="cstat-no" title="statement not covered" > const file = this._fileList[i];</span>
2713
- <span class="cstat-no" title="statement not covered" > if (!file || (!file.loaded &amp;&amp; !file.loading &amp;&amp; file.type !== 'packfile')) {</span>
2714
- <span class="cstat-no" title="statement not covered" > this._fileList.splice(i, 0, pack);</span>
2715
- <span class="cstat-no" title="statement not covered" > this._totalPackCount += 1;</span>
2716
- <span class="cstat-no" title="statement not covered" > break;</span>
2717
- <span class="cstat-no" title="statement not covered" > }</span>
2718
- <span class="cstat-no" title="statement not covered" > }</span>
2719
- <span class="cstat-no" title="statement not covered" > return this;</span>
2720
- <span class="cstat-no" title="statement not covered" > }</span>
2721
- &nbsp;
2722
- <span class="cstat-no" title="statement not covered" > /**</span>
2723
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2724
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2725
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2726
- <span class="cstat-no" title="statement not covered" > * @param {boolean} overwrite - TBD.</span>
2727
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2728
- <span class="cstat-no" title="statement not covered" > */</span>
2729
- <span class="cstat-no" title="statement not covered" > image(key, url, overwrite = false) {</span>
2730
- <span class="cstat-no" title="statement not covered" > return this.addToFileList('image', key, url, undefined, overwrite, '.png');</span>
2731
- <span class="cstat-no" title="statement not covered" > }</span>
2732
- &nbsp;
2733
- <span class="cstat-no" title="statement not covered" > /**</span>
2734
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2735
- <span class="cstat-no" title="statement not covered" > * @param {string[]} keys - TBD.</span>
2736
- <span class="cstat-no" title="statement not covered" > * @param {string[]} urls - TBD.</span>
2737
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2738
- <span class="cstat-no" title="statement not covered" > */</span>
2739
- <span class="cstat-no" title="statement not covered" > images(keys, urls) {</span>
2740
- <span class="cstat-no" title="statement not covered" > if (Array.isArray(urls)) {</span>
2741
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; keys.length; i += 1) {</span>
2742
- <span class="cstat-no" title="statement not covered" > this.image(keys[i], urls[i]);</span>
2743
- <span class="cstat-no" title="statement not covered" > }</span>
2744
- <span class="cstat-no" title="statement not covered" > } else {</span>
2745
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; keys.length; i += 1) {</span>
2746
- <span class="cstat-no" title="statement not covered" > this.image(keys[i]);</span>
2747
- <span class="cstat-no" title="statement not covered" > }</span>
2748
- <span class="cstat-no" title="statement not covered" > }</span>
2749
- <span class="cstat-no" title="statement not covered" > return this;</span>
2750
- <span class="cstat-no" title="statement not covered" > }</span>
2751
- &nbsp;
2752
- <span class="cstat-no" title="statement not covered" > /**</span>
2753
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2754
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2755
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2756
- <span class="cstat-no" title="statement not covered" > * @param {boolean} overwrite - TBD.</span>
2757
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2758
- <span class="cstat-no" title="statement not covered" > */</span>
2759
- <span class="cstat-no" title="statement not covered" > text(key, url, overwrite = false) {</span>
2760
- <span class="cstat-no" title="statement not covered" > return this.addToFileList('text', key, url, undefined, overwrite, '.txt');</span>
2761
- <span class="cstat-no" title="statement not covered" > }</span>
2762
- &nbsp;
2763
- <span class="cstat-no" title="statement not covered" > /**</span>
2764
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2765
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2766
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2767
- <span class="cstat-no" title="statement not covered" > * @param {boolean} overwrite - TBD.</span>
2768
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2769
- <span class="cstat-no" title="statement not covered" > */</span>
2770
- <span class="cstat-no" title="statement not covered" > json(key, url, overwrite = false) {</span>
2771
- <span class="cstat-no" title="statement not covered" > return this.addToFileList('json', key, url, undefined, overwrite, '.json');</span>
2772
- <span class="cstat-no" title="statement not covered" > }</span>
2773
- &nbsp;
2774
- <span class="cstat-no" title="statement not covered" > /**</span>
2775
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2776
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2777
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2778
- <span class="cstat-no" title="statement not covered" > * @param {boolean} overwrite - TBD.</span>
2779
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2780
- <span class="cstat-no" title="statement not covered" > */</span>
2781
- <span class="cstat-no" title="statement not covered" > xml(key, url, overwrite = false) {</span>
2782
- <span class="cstat-no" title="statement not covered" > return this.addToFileList('xml', key, url, undefined, overwrite, '.xml');</span>
2783
- <span class="cstat-no" title="statement not covered" > }</span>
2784
- &nbsp;
2785
- <span class="cstat-no" title="statement not covered" > /**</span>
2786
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2787
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2788
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
2789
- <span class="cstat-no" title="statement not covered" > * @param {number} frameWidth - TBD.</span>
2790
- <span class="cstat-no" title="statement not covered" > * @param {number} frameHeight - TBD.</span>
2791
- <span class="cstat-no" title="statement not covered" > * @param {number} frameMax - TBD.</span>
2792
- <span class="cstat-no" title="statement not covered" > * @param {number} margin - TBD.</span>
2793
- <span class="cstat-no" title="statement not covered" > * @param {number} spacing - TBD.</span>
2794
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2795
- <span class="cstat-no" title="statement not covered" > */</span>
2796
- <span class="cstat-no" title="statement not covered" > spritesheet(key, url, frameWidth, frameHeight, frameMax = -1, margin = 0, spacing = 0) {</span>
2797
- <span class="cstat-no" title="statement not covered" > return this.addToFileList(</span>
2798
- <span class="cstat-no" title="statement not covered" > 'spritesheet',</span>
2799
- <span class="cstat-no" title="statement not covered" > key,</span>
2800
- <span class="cstat-no" title="statement not covered" > url,</span>
2801
- <span class="cstat-no" title="statement not covered" > { frameWidth, frameHeight, frameMax, margin, spacing },</span>
2802
- <span class="cstat-no" title="statement not covered" > false,</span>
2803
- <span class="cstat-no" title="statement not covered" > '.png'</span>
2804
- <span class="cstat-no" title="statement not covered" > );</span>
2805
- <span class="cstat-no" title="statement not covered" > }</span>
2806
- &nbsp;
2807
- <span class="cstat-no" title="statement not covered" > /**</span>
2808
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2809
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2810
- <span class="cstat-no" title="statement not covered" > * @param {string[]} urls - TBD.</span>
2811
- <span class="cstat-no" title="statement not covered" > * @param {boolean} autoDecode - TBD.</span>
2812
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2813
- <span class="cstat-no" title="statement not covered" > */</span>
2814
- <span class="cstat-no" title="statement not covered" > audio(key, urls, autoDecode = true) {</span>
2815
- <span class="cstat-no" title="statement not covered" > if (this.game.sound.noAudio || this.game.device.noAudioFormat) {</span>
2816
- <span class="cstat-no" title="statement not covered" > return this;</span>
2817
- <span class="cstat-no" title="statement not covered" > }</span>
2818
- <span class="cstat-no" title="statement not covered" > if (typeof urls === 'string') {</span>
2819
- <span class="cstat-no" title="statement not covered" > urls = [urls];</span>
2820
- <span class="cstat-no" title="statement not covered" > }</span>
2821
- <span class="cstat-no" title="statement not covered" > return this.addToFileList('audio', key, urls, { buffer: null, autoDecode });</span>
2822
- <span class="cstat-no" title="statement not covered" > }</span>
2823
- &nbsp;
2824
- <span class="cstat-no" title="statement not covered" > /**</span>
2825
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2826
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2827
- <span class="cstat-no" title="statement not covered" > * @param {string} urls - TBD.</span>
2828
- <span class="cstat-no" title="statement not covered" > * @param {string} jsonURL - TBD.</span>
2829
- <span class="cstat-no" title="statement not covered" > * @param {object} jsonData - TBD.</span>
2830
- <span class="cstat-no" title="statement not covered" > * @param {boolean} autoDecode - TBD.</span>
2831
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2832
- <span class="cstat-no" title="statement not covered" > */</span>
2833
- <span class="cstat-no" title="statement not covered" > audioSprite(key, urls, jsonURL, jsonData, autoDecode = true) {</span>
2834
- <span class="cstat-no" title="statement not covered" > if (this.game.sound.noAudio || this.game.device.noAudioFormat) {</span>
2835
- <span class="cstat-no" title="statement not covered" > return this;</span>
2836
- <span class="cstat-no" title="statement not covered" > }</span>
2837
- <span class="cstat-no" title="statement not covered" > this.audio(key, urls, autoDecode);</span>
2838
- <span class="cstat-no" title="statement not covered" > if (jsonURL) {</span>
2839
- <span class="cstat-no" title="statement not covered" > this.json(`${key}-audioatlas`, jsonURL);</span>
2840
- <span class="cstat-no" title="statement not covered" > } else if (jsonData) {</span>
2841
- <span class="cstat-no" title="statement not covered" > if (typeof jsonData === 'string') {</span>
2842
- <span class="cstat-no" title="statement not covered" > jsonData = JSON.parse(jsonData);</span>
2843
- <span class="cstat-no" title="statement not covered" > }</span>
2844
- <span class="cstat-no" title="statement not covered" > this.cache.addJSON(`${key}-audioatlas`, '', jsonData);</span>
2845
- <span class="cstat-no" title="statement not covered" > }</span>
2846
- <span class="cstat-no" title="statement not covered" > return this;</span>
2847
- <span class="cstat-no" title="statement not covered" > }</span>
2848
- &nbsp;
2849
- <span class="cstat-no" title="statement not covered" > /**</span>
2850
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2851
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2852
- <span class="cstat-no" title="statement not covered" > * @param {string} textureURL - TBD.</span>
2853
- <span class="cstat-no" title="statement not covered" > * @param {string} atlasURL - TBD.</span>
2854
- <span class="cstat-no" title="statement not covered" > * @param {object} atlasData - TBD.</span>
2855
- <span class="cstat-no" title="statement not covered" > * @param {number} xSpacing - TBD.</span>
2856
- <span class="cstat-no" title="statement not covered" > * @param {number} ySpacing - TBD.</span>
2857
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2858
- <span class="cstat-no" title="statement not covered" > * @throws Error.</span>
2859
- <span class="cstat-no" title="statement not covered" > */</span>
2860
- <span class="cstat-no" title="statement not covered" > bitmapFont(key, textureURL = null, atlasURL = null, atlasData = null, xSpacing = 0, ySpacing = 0) {</span>
2861
- <span class="cstat-no" title="statement not covered" > if (textureURL === undefined || textureURL === null) {</span>
2862
- <span class="cstat-no" title="statement not covered" > textureURL = `${key}.png`;</span>
2863
- <span class="cstat-no" title="statement not covered" > }</span>
2864
- <span class="cstat-no" title="statement not covered" > if (atlasURL === null &amp;&amp; atlasData === null) {</span>
2865
- <span class="cstat-no" title="statement not covered" > atlasURL = `${key}.xml`;</span>
2866
- <span class="cstat-no" title="statement not covered" > }</span>
2867
- <span class="cstat-no" title="statement not covered" > // A URL to a json/xml atlas has been given</span>
2868
- <span class="cstat-no" title="statement not covered" > if (atlasURL) {</span>
2869
- <span class="cstat-no" title="statement not covered" > this.addToFileList('bitmapfont', key, textureURL, { atlasURL, xSpacing, ySpacing });</span>
2870
- <span class="cstat-no" title="statement not covered" > } else if (typeof atlasData === 'string') {</span>
2871
- <span class="cstat-no" title="statement not covered" > // A stringified xml/json atlas has been given</span>
2872
- <span class="cstat-no" title="statement not covered" > let json = null;</span>
2873
- <span class="cstat-no" title="statement not covered" > let xml = null;</span>
2874
- <span class="cstat-no" title="statement not covered" > try {</span>
2875
- <span class="cstat-no" title="statement not covered" > json = JSON.parse(atlasData);</span>
2876
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
2877
- <span class="cstat-no" title="statement not covered" > xml = this.parseXml(atlasData);</span>
2878
- <span class="cstat-no" title="statement not covered" > }</span>
2879
- <span class="cstat-no" title="statement not covered" > if (!xml &amp;&amp; !json) {</span>
2880
- <span class="cstat-no" title="statement not covered" > throw new Error(ENGINE_ERROR_INVALID_BITMAP_FONT_ATLAS);</span>
2881
- <span class="cstat-no" title="statement not covered" > }</span>
2882
- <span class="cstat-no" title="statement not covered" > this.addToFileList('bitmapfont', key, textureURL, {</span>
2883
- <span class="cstat-no" title="statement not covered" > atlasURL: null,</span>
2884
- <span class="cstat-no" title="statement not covered" > atlasData: json || xml,</span>
2885
- <span class="cstat-no" title="statement not covered" > atlasType: json ? 'json' : 'xml',</span>
2886
- <span class="cstat-no" title="statement not covered" > xSpacing,</span>
2887
- <span class="cstat-no" title="statement not covered" > ySpacing,</span>
2888
- <span class="cstat-no" title="statement not covered" > });</span>
2889
- <span class="cstat-no" title="statement not covered" > }</span>
2890
- <span class="cstat-no" title="statement not covered" > return this;</span>
2891
- <span class="cstat-no" title="statement not covered" > }</span>
2892
- &nbsp;
2893
- <span class="cstat-no" title="statement not covered" > /**</span>
2894
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2895
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2896
- <span class="cstat-no" title="statement not covered" > * @param {string} textureURL - TBD.</span>
2897
- <span class="cstat-no" title="statement not covered" > * @param {string} atlasURL - TBD.</span>
2898
- <span class="cstat-no" title="statement not covered" > * @param {object} atlasData - TBD.</span>
2899
- <span class="cstat-no" title="statement not covered" > * @param {number} format - TBD.</span>
2900
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2901
- <span class="cstat-no" title="statement not covered" > */</span>
2902
- <span class="cstat-no" title="statement not covered" > atlas(key, textureURL, atlasURL = null, atlasData = null, format = TEXTURE_ATLAS_JSON_HASH) {</span>
2903
- <span class="cstat-no" title="statement not covered" > if (textureURL === undefined || textureURL === null) {</span>
2904
- <span class="cstat-no" title="statement not covered" > textureURL = `${key}.png`;</span>
2905
- <span class="cstat-no" title="statement not covered" > }</span>
2906
- <span class="cstat-no" title="statement not covered" > if (!atlasURL &amp;&amp; !atlasData) {</span>
2907
- <span class="cstat-no" title="statement not covered" > atlasURL = `${key}.json`;</span>
2908
- <span class="cstat-no" title="statement not covered" > }</span>
2909
- <span class="cstat-no" title="statement not covered" > // A URL to a json/xml file has been given</span>
2910
- <span class="cstat-no" title="statement not covered" > if (atlasURL) {</span>
2911
- <span class="cstat-no" title="statement not covered" > this.addToFileList('textureatlas', key, textureURL, { atlasURL, format });</span>
2912
- <span class="cstat-no" title="statement not covered" > } else {</span>
2913
- <span class="cstat-no" title="statement not covered" > this.addToFileList('textureatlas', key, textureURL, { atlasURL: null, atlasData, format });</span>
2914
- <span class="cstat-no" title="statement not covered" > }</span>
2915
- <span class="cstat-no" title="statement not covered" > return this;</span>
2916
- <span class="cstat-no" title="statement not covered" > }</span>
2917
- &nbsp;
2918
- <span class="cstat-no" title="statement not covered" > /**</span>
2919
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2920
- <span class="cstat-no" title="statement not covered" > * @param {Function} callback - TBD.</span>
2921
- <span class="cstat-no" title="statement not covered" > * @param {object} callbackContext - TBD.</span>
2922
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2923
- <span class="cstat-no" title="statement not covered" > */</span>
2924
- <span class="cstat-no" title="statement not covered" > withSyncPoint(callback, callbackContext) {</span>
2925
- <span class="cstat-no" title="statement not covered" > this._withSyncPointDepth += 1;</span>
2926
- <span class="cstat-no" title="statement not covered" > try {</span>
2927
- <span class="cstat-no" title="statement not covered" > callback.call(callbackContext || this, this);</span>
2928
- <span class="cstat-no" title="statement not covered" > } finally {</span>
2929
- <span class="cstat-no" title="statement not covered" > this._withSyncPointDepth -= 1;</span>
2930
- <span class="cstat-no" title="statement not covered" > }</span>
2931
- <span class="cstat-no" title="statement not covered" > return this;</span>
2932
- <span class="cstat-no" title="statement not covered" > }</span>
2933
- &nbsp;
2934
- <span class="cstat-no" title="statement not covered" > /**</span>
2935
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2936
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
2937
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2938
- <span class="cstat-no" title="statement not covered" > * @returns {Loader} TBD.</span>
2939
- <span class="cstat-no" title="statement not covered" > */</span>
2940
- <span class="cstat-no" title="statement not covered" > addSyncPoint(type, key) {</span>
2941
- <span class="cstat-no" title="statement not covered" > const asset = this.getAsset(type, key);</span>
2942
- <span class="cstat-no" title="statement not covered" > if (asset) {</span>
2943
- <span class="cstat-no" title="statement not covered" > asset.file.syncPoint = true;</span>
2944
- <span class="cstat-no" title="statement not covered" > }</span>
2945
- <span class="cstat-no" title="statement not covered" > return this;</span>
2946
- <span class="cstat-no" title="statement not covered" > }</span>
2947
- &nbsp;
2948
- <span class="cstat-no" title="statement not covered" > /**</span>
2949
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2950
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
2951
- <span class="cstat-no" title="statement not covered" > * @param {string} key - TBD.</span>
2952
- <span class="cstat-no" title="statement not covered" > */</span>
2953
- <span class="cstat-no" title="statement not covered" > removeFile(type, key) {</span>
2954
- <span class="cstat-no" title="statement not covered" > const asset = this.getAsset(type, key);</span>
2955
- <span class="cstat-no" title="statement not covered" > if (asset) {</span>
2956
- <span class="cstat-no" title="statement not covered" > if (!asset.loaded &amp;&amp; !asset.loading) {</span>
2957
- <span class="cstat-no" title="statement not covered" > this._fileList.splice(asset.index, 1);</span>
2958
- <span class="cstat-no" title="statement not covered" > }</span>
2959
- <span class="cstat-no" title="statement not covered" > }</span>
2960
- <span class="cstat-no" title="statement not covered" > }</span>
2961
- &nbsp;
2962
- <span class="cstat-no" title="statement not covered" > /**</span>
2963
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2964
- <span class="cstat-no" title="statement not covered" > */</span>
2965
- <span class="cstat-no" title="statement not covered" > removeAll() {</span>
2966
- <span class="cstat-no" title="statement not covered" > this._fileList.length = 0;</span>
2967
- <span class="cstat-no" title="statement not covered" > this._flightQueue.length = 0;</span>
2968
- <span class="cstat-no" title="statement not covered" > }</span>
2969
- &nbsp;
2970
- <span class="cstat-no" title="statement not covered" > /**</span>
2971
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2972
- <span class="cstat-no" title="statement not covered" > */</span>
2973
- <span class="cstat-no" title="statement not covered" > start() {</span>
2974
- <span class="cstat-no" title="statement not covered" > if (this.isLoading) {</span>
2975
- <span class="cstat-no" title="statement not covered" > return;</span>
2976
- <span class="cstat-no" title="statement not covered" > }</span>
2977
- <span class="cstat-no" title="statement not covered" > this.hasLoaded = false;</span>
2978
- <span class="cstat-no" title="statement not covered" > this.isLoading = true;</span>
2979
- <span class="cstat-no" title="statement not covered" > this.updateProgress();</span>
2980
- <span class="cstat-no" title="statement not covered" > this.processLoadQueue();</span>
2981
- <span class="cstat-no" title="statement not covered" > }</span>
2982
- &nbsp;
2983
- <span class="cstat-no" title="statement not covered" > /**</span>
2984
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
2985
- <span class="cstat-no" title="statement not covered" > */</span>
2986
- <span class="cstat-no" title="statement not covered" > processLoadQueue() {</span>
2987
- <span class="cstat-no" title="statement not covered" > if (!this.isLoading) {</span>
2988
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn('Active loading canceled / reset');</span>
2989
- <span class="cstat-no" title="statement not covered" > this.finishedLoading(true);</span>
2990
- <span class="cstat-no" title="statement not covered" > return;</span>
2991
- <span class="cstat-no" title="statement not covered" > }</span>
2992
- <span class="cstat-no" title="statement not covered" > // Empty the flight queue as applicable</span>
2993
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; this._flightQueue.length; i += 1) {</span>
2994
- <span class="cstat-no" title="statement not covered" > const file = this._flightQueue[i];</span>
2995
- <span class="cstat-no" title="statement not covered" > if (file.loaded || file.error) {</span>
2996
- <span class="cstat-no" title="statement not covered" > this._flightQueue.splice(i, 1);</span>
2997
- <span class="cstat-no" title="statement not covered" > i -= 1;</span>
2998
- <span class="cstat-no" title="statement not covered" > file.loading = false;</span>
2999
- <span class="cstat-no" title="statement not covered" > file.requestUrl = null;</span>
3000
- <span class="cstat-no" title="statement not covered" > file.requestObject = null;</span>
3001
- <span class="cstat-no" title="statement not covered" > if (file.error) {</span>
3002
- <span class="cstat-no" title="statement not covered" > this.onFileError.dispatch(file.key, file);</span>
3003
- <span class="cstat-no" title="statement not covered" > }</span>
3004
- <span class="cstat-no" title="statement not covered" > if (file.type !== 'packfile') {</span>
3005
- <span class="cstat-no" title="statement not covered" > this._loadedFileCount += 1;</span>
3006
- <span class="cstat-no" title="statement not covered" > this.onFileComplete.dispatch(</span>
3007
- <span class="cstat-no" title="statement not covered" > this.progress,</span>
3008
- <span class="cstat-no" title="statement not covered" > file.key,</span>
3009
- <span class="cstat-no" title="statement not covered" > !file.error,</span>
3010
- <span class="cstat-no" title="statement not covered" > this._loadedFileCount,</span>
3011
- <span class="cstat-no" title="statement not covered" > this._totalFileCount</span>
3012
- <span class="cstat-no" title="statement not covered" > );</span>
3013
- <span class="cstat-no" title="statement not covered" > } else if (file.type === 'packfile' &amp;&amp; file.error) {</span>
3014
- <span class="cstat-no" title="statement not covered" > // Non-error pack files are handled when processing the file queue</span>
3015
- <span class="cstat-no" title="statement not covered" > this._loadedPackCount += 1;</span>
3016
- <span class="cstat-no" title="statement not covered" > this.onPackComplete.dispatch(file.key, !file.error, this._loadedPackCount, this._totalPackCount);</span>
3017
- <span class="cstat-no" title="statement not covered" > }</span>
3018
- <span class="cstat-no" title="statement not covered" > }</span>
3019
- <span class="cstat-no" title="statement not covered" > }</span>
3020
- <span class="cstat-no" title="statement not covered" > // When true further non-pack file downloads are suppressed</span>
3021
- <span class="cstat-no" title="statement not covered" > let syncblock = false;</span>
3022
- <span class="cstat-no" title="statement not covered" > const inflightLimit = this.maxParallelDownloads;</span>
3023
- <span class="cstat-no" title="statement not covered" > for (let i = this._processingHead; i &lt; this._fileList.length; i += 1) {</span>
3024
- <span class="cstat-no" title="statement not covered" > const file = this._fileList[i];</span>
3025
- <span class="cstat-no" title="statement not covered" > // Pack is fetched (ie. has data) and is currently at the start of the process queue.</span>
3026
- <span class="cstat-no" title="statement not covered" > if (file.type === 'packfile' &amp;&amp; !file.error &amp;&amp; file.loaded &amp;&amp; i === this._processingHead) {</span>
3027
- <span class="cstat-no" title="statement not covered" > // Processing the pack / adds more files</span>
3028
- <span class="cstat-no" title="statement not covered" > this.processPack(file);</span>
3029
- <span class="cstat-no" title="statement not covered" > this._loadedPackCount += 1;</span>
3030
- <span class="cstat-no" title="statement not covered" > this.onPackComplete.dispatch(file.key, !file.error, this._loadedPackCount, this._totalPackCount);</span>
3031
- <span class="cstat-no" title="statement not covered" > }</span>
3032
- <span class="cstat-no" title="statement not covered" > if (file.loaded || file.error) {</span>
3033
- <span class="cstat-no" title="statement not covered" > // Item at the start of file list finished, can skip it in future</span>
3034
- <span class="cstat-no" title="statement not covered" > if (i === this._processingHead) {</span>
3035
- <span class="cstat-no" title="statement not covered" > this._processingHead = i + 1;</span>
3036
- <span class="cstat-no" title="statement not covered" > }</span>
3037
- <span class="cstat-no" title="statement not covered" > } else if (!file.loading &amp;&amp; this._flightQueue.length &lt; inflightLimit) {</span>
3038
- <span class="cstat-no" title="statement not covered" > // -&gt; not loaded/failed, not loading</span>
3039
- <span class="cstat-no" title="statement not covered" > if (file.type === 'packfile' &amp;&amp; !file.data) {</span>
3040
- <span class="cstat-no" title="statement not covered" > // Fetches the pack data: the pack is processed above as it reaches queue-start.</span>
3041
- <span class="cstat-no" title="statement not covered" > // (Packs do not trigger onLoadStart or onFileStart.)</span>
3042
- <span class="cstat-no" title="statement not covered" > this._flightQueue.push(file);</span>
3043
- <span class="cstat-no" title="statement not covered" > file.loading = true;</span>
3044
- <span class="cstat-no" title="statement not covered" > this.loadFile(file);</span>
3045
- <span class="cstat-no" title="statement not covered" > } else if (!syncblock) {</span>
3046
- <span class="cstat-no" title="statement not covered" > if (!this._fileLoadStarted) {</span>
3047
- <span class="cstat-no" title="statement not covered" > this._fileLoadStarted = true;</span>
3048
- <span class="cstat-no" title="statement not covered" > this.onLoadStart.dispatch();</span>
3049
- <span class="cstat-no" title="statement not covered" > }</span>
3050
- <span class="cstat-no" title="statement not covered" > this._flightQueue.push(file);</span>
3051
- <span class="cstat-no" title="statement not covered" > file.loading = true;</span>
3052
- <span class="cstat-no" title="statement not covered" > this.onFileStart.dispatch(this.progress, file.key, file.url);</span>
3053
- <span class="cstat-no" title="statement not covered" > this.loadFile(file);</span>
3054
- <span class="cstat-no" title="statement not covered" > }</span>
3055
- <span class="cstat-no" title="statement not covered" > }</span>
3056
- <span class="cstat-no" title="statement not covered" > if (!file.loaded &amp;&amp; file.syncPoint) {</span>
3057
- <span class="cstat-no" title="statement not covered" > syncblock = true;</span>
3058
- <span class="cstat-no" title="statement not covered" > }</span>
3059
- <span class="cstat-no" title="statement not covered" > // Stop looking if queue full - or if syncblocked and there are no more packs.</span>
3060
- <span class="cstat-no" title="statement not covered" > // (As only packs can be loaded around a syncblock)</span>
3061
- <span class="cstat-no" title="statement not covered" > if (this._flightQueue.length &gt;= inflightLimit || (syncblock &amp;&amp; this._loadedPackCount === this._totalPackCount)) {</span>
3062
- <span class="cstat-no" title="statement not covered" > break;</span>
3063
- <span class="cstat-no" title="statement not covered" > }</span>
3064
- <span class="cstat-no" title="statement not covered" > }</span>
3065
- <span class="cstat-no" title="statement not covered" > this.updateProgress();</span>
3066
- <span class="cstat-no" title="statement not covered" > // True when all items in the queue have been advanced over</span>
3067
- <span class="cstat-no" title="statement not covered" > // (There should be no inflight items as they are complete - loaded/error.)</span>
3068
- <span class="cstat-no" title="statement not covered" > if (this._processingHead &gt;= this._fileList.length) {</span>
3069
- <span class="cstat-no" title="statement not covered" > this.finishedLoading();</span>
3070
- <span class="cstat-no" title="statement not covered" > } else if (!this._flightQueue.length) {</span>
3071
- <span class="cstat-no" title="statement not covered" > // Flight queue is empty but file list is not done being processed.</span>
3072
- <span class="cstat-no" title="statement not covered" > // This indicates a critical internal error with no known recovery.</span>
3073
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn('Aborting: processing queue empty, loading may have stalled');</span>
3074
- <span class="cstat-no" title="statement not covered" > const scope = this;</span>
3075
- <span class="cstat-no" title="statement not covered" > setTimeout(() =&gt; {</span>
3076
- <span class="cstat-no" title="statement not covered" > scope.finishedLoading(true);</span>
3077
- <span class="cstat-no" title="statement not covered" > }, 2000);</span>
3078
- <span class="cstat-no" title="statement not covered" > }</span>
3079
- <span class="cstat-no" title="statement not covered" > }</span>
3080
- &nbsp;
3081
- <span class="cstat-no" title="statement not covered" > /**</span>
3082
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3083
- <span class="cstat-no" title="statement not covered" > * @param {boolean} abnormal - TBD.</span>
3084
- <span class="cstat-no" title="statement not covered" > */</span>
3085
- <span class="cstat-no" title="statement not covered" > finishedLoading(abnormal) {</span>
3086
- <span class="cstat-no" title="statement not covered" > if (this.hasLoaded) {</span>
3087
- <span class="cstat-no" title="statement not covered" > return;</span>
3088
- <span class="cstat-no" title="statement not covered" > }</span>
3089
- <span class="cstat-no" title="statement not covered" > this.hasLoaded = true;</span>
3090
- <span class="cstat-no" title="statement not covered" > this.isLoading = false;</span>
3091
- <span class="cstat-no" title="statement not covered" > // If there were no files make sure to trigger the event anyway, for consistency</span>
3092
- <span class="cstat-no" title="statement not covered" > if (!abnormal &amp;&amp; !this._fileLoadStarted) {</span>
3093
- <span class="cstat-no" title="statement not covered" > this._fileLoadStarted = true;</span>
3094
- <span class="cstat-no" title="statement not covered" > this.onLoadStart.dispatch();</span>
3095
- <span class="cstat-no" title="statement not covered" > }</span>
3096
- <span class="cstat-no" title="statement not covered" > // https://github.com/photonstorm/phaser-ce/pull/54/</span>
3097
- <span class="cstat-no" title="statement not covered" > this.reset();</span>
3098
- <span class="cstat-no" title="statement not covered" > this.onLoadComplete.dispatch();</span>
3099
- <span class="cstat-no" title="statement not covered" > this.game.state.loadComplete();</span>
3100
- <span class="cstat-no" title="statement not covered" > // https://github.com/photonstorm/phaser-ce/pull/54/</span>
3101
- <span class="cstat-no" title="statement not covered" > // this.reset();</span>
3102
- <span class="cstat-no" title="statement not covered" > }</span>
3103
- &nbsp;
3104
- <span class="cstat-no" title="statement not covered" > /**</span>
3105
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3106
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3107
- <span class="cstat-no" title="statement not covered" > * @param {string} errorMessage - TBD.</span>
3108
- <span class="cstat-no" title="statement not covered" > */</span>
3109
- <span class="cstat-no" title="statement not covered" > asyncComplete(file, errorMessage = '') {</span>
3110
- <span class="cstat-no" title="statement not covered" > file.loaded = true;</span>
3111
- <span class="cstat-no" title="statement not covered" > file.error = !!errorMessage;</span>
3112
- <span class="cstat-no" title="statement not covered" > if (file.error) {</span>
3113
- <span class="cstat-no" title="statement not covered" > file.errorMessage = errorMessage;</span>
3114
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn('Error loading file', file);</span>
3115
- <span class="cstat-no" title="statement not covered" > }</span>
3116
- <span class="cstat-no" title="statement not covered" > this.log('asyncComplete', file);</span>
3117
- <span class="cstat-no" title="statement not covered" > this.processLoadQueue();</span>
3118
- <span class="cstat-no" title="statement not covered" > }</span>
3119
- &nbsp;
3120
- <span class="cstat-no" title="statement not covered" > /**</span>
3121
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3122
- <span class="cstat-no" title="statement not covered" > * @param {object} pack - TBD.</span>
3123
- <span class="cstat-no" title="statement not covered" > */</span>
3124
- <span class="cstat-no" title="statement not covered" > processPack(pack) {</span>
3125
- <span class="cstat-no" title="statement not covered" > const packData = pack.data[pack.key];</span>
3126
- <span class="cstat-no" title="statement not covered" > if (!packData) {</span>
3127
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn('Missing loader pack key', { key: pack.key });</span>
3128
- <span class="cstat-no" title="statement not covered" > return;</span>
3129
- <span class="cstat-no" title="statement not covered" > }</span>
3130
- <span class="cstat-no" title="statement not covered" > const packDataCompat = Array.isArray(packData) ? packData : packData.files;</span>
3131
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; packDataCompat.length; i += 1) {</span>
3132
- <span class="cstat-no" title="statement not covered" > const file = packDataCompat[i];</span>
3133
- <span class="cstat-no" title="statement not covered" > switch (file.type) {</span>
3134
- <span class="cstat-no" title="statement not covered" > case 'image':</span>
3135
- <span class="cstat-no" title="statement not covered" > this.image(file.key, file.url, file.overwrite);</span>
3136
- <span class="cstat-no" title="statement not covered" > break;</span>
3137
- <span class="cstat-no" title="statement not covered" > case 'text':</span>
3138
- <span class="cstat-no" title="statement not covered" > this.text(file.key, file.url, file.overwrite);</span>
3139
- <span class="cstat-no" title="statement not covered" > break;</span>
3140
- <span class="cstat-no" title="statement not covered" > case 'json':</span>
3141
- <span class="cstat-no" title="statement not covered" > this.json(file.key, file.url, file.overwrite);</span>
3142
- <span class="cstat-no" title="statement not covered" > break;</span>
3143
- <span class="cstat-no" title="statement not covered" > case 'xml':</span>
3144
- <span class="cstat-no" title="statement not covered" > this.xml(file.key, file.url, file.overwrite);</span>
3145
- <span class="cstat-no" title="statement not covered" > break;</span>
3146
- <span class="cstat-no" title="statement not covered" > case 'spritesheet':</span>
3147
- <span class="cstat-no" title="statement not covered" > this.spritesheet(</span>
3148
- <span class="cstat-no" title="statement not covered" > file.key,</span>
3149
- <span class="cstat-no" title="statement not covered" > file.url,</span>
3150
- <span class="cstat-no" title="statement not covered" > file.frameWidth,</span>
3151
- <span class="cstat-no" title="statement not covered" > file.frameHeight,</span>
3152
- <span class="cstat-no" title="statement not covered" > file.frameMax,</span>
3153
- <span class="cstat-no" title="statement not covered" > file.margin,</span>
3154
- <span class="cstat-no" title="statement not covered" > file.spacing</span>
3155
- <span class="cstat-no" title="statement not covered" > );</span>
3156
- <span class="cstat-no" title="statement not covered" > break;</span>
3157
- <span class="cstat-no" title="statement not covered" > case 'audio':</span>
3158
- <span class="cstat-no" title="statement not covered" > this.audio(file.key, file.urls ? file.urls : file.url);</span>
3159
- <span class="cstat-no" title="statement not covered" > break;</span>
3160
- <span class="cstat-no" title="statement not covered" > case 'audiosprite':</span>
3161
- <span class="cstat-no" title="statement not covered" > this.audioSprite(file.key, file.urls ? file.urls : file.url, file.jsonURL, file.jsonData);</span>
3162
- <span class="cstat-no" title="statement not covered" > break;</span>
3163
- <span class="cstat-no" title="statement not covered" > case 'audioSprite':</span>
3164
- <span class="cstat-no" title="statement not covered" > this.audioSprite(file.key, file.audioURL, file.jsonURL, file.jsonData);</span>
3165
- <span class="cstat-no" title="statement not covered" > break;</span>
3166
- <span class="cstat-no" title="statement not covered" > case 'bitmapFont':</span>
3167
- <span class="cstat-no" title="statement not covered" > this.bitmapFont(</span>
3168
- <span class="cstat-no" title="statement not covered" > file.key,</span>
3169
- <span class="cstat-no" title="statement not covered" > file.textureURL,</span>
3170
- <span class="cstat-no" title="statement not covered" > file.fontDataURL ? file.fontDataURL : file.atlasURL,</span>
3171
- <span class="cstat-no" title="statement not covered" > file.atlasData,</span>
3172
- <span class="cstat-no" title="statement not covered" > file.xSpacing,</span>
3173
- <span class="cstat-no" title="statement not covered" > file.ySpacing</span>
3174
- <span class="cstat-no" title="statement not covered" > );</span>
3175
- <span class="cstat-no" title="statement not covered" > break;</span>
3176
- <span class="cstat-no" title="statement not covered" > case 'atlas':</span>
3177
- <span class="cstat-no" title="statement not covered" > this.atlas(file.key, file.textureURL, file.atlasURL, file.atlasData, TEXTURE_ATLAS_JSON_HASH);</span>
3178
- <span class="cstat-no" title="statement not covered" > break;</span>
3179
- <span class="cstat-no" title="statement not covered" > }</span>
3180
- <span class="cstat-no" title="statement not covered" > }</span>
3181
- <span class="cstat-no" title="statement not covered" > }</span>
3182
- &nbsp;
3183
- <span class="cstat-no" title="statement not covered" > /**</span>
3184
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3185
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
3186
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3187
- <span class="cstat-no" title="statement not covered" > * @returns {string} TBD.</span>
3188
- <span class="cstat-no" title="statement not covered" > */</span>
3189
- <span class="cstat-no" title="statement not covered" > transformUrl(url, file) {</span>
3190
- <span class="cstat-no" title="statement not covered" > if (!url) {</span>
3191
- <span class="cstat-no" title="statement not covered" > return false;</span>
3192
- <span class="cstat-no" title="statement not covered" > }</span>
3193
- <span class="cstat-no" title="statement not covered" > if (url.match(/^(?:blob:|data:|http:\/\/|https:\/\/|\/\/)/)) {</span>
3194
- <span class="cstat-no" title="statement not covered" > return url;</span>
3195
- <span class="cstat-no" title="statement not covered" > }</span>
3196
- <span class="cstat-no" title="statement not covered" > return this.baseURL + file.path + url;</span>
3197
- <span class="cstat-no" title="statement not covered" > }</span>
3198
- &nbsp;
3199
- <span class="cstat-no" title="statement not covered" > /**</span>
3200
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3201
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3202
- <span class="cstat-no" title="statement not covered" > */</span>
3203
- <span class="cstat-no" title="statement not covered" > loadFile(file) {</span>
3204
- <span class="cstat-no" title="statement not covered" > switch (file.type) {</span>
3205
- <span class="cstat-no" title="statement not covered" > case 'packfile':</span>
3206
- <span class="cstat-no" title="statement not covered" > this.xhrLoad(file, this.transformUrl(file.url, file), 'text', this.fileComplete);</span>
3207
- <span class="cstat-no" title="statement not covered" > break;</span>
3208
- <span class="cstat-no" title="statement not covered" > case 'image':</span>
3209
- <span class="cstat-no" title="statement not covered" > case 'spritesheet':</span>
3210
- <span class="cstat-no" title="statement not covered" > case 'textureatlas':</span>
3211
- <span class="cstat-no" title="statement not covered" > case 'bitmapfont':</span>
3212
- <span class="cstat-no" title="statement not covered" > this.loadImageTag(file);</span>
3213
- <span class="cstat-no" title="statement not covered" > break;</span>
3214
- <span class="cstat-no" title="statement not covered" > case 'audio':</span>
3215
- <span class="cstat-no" title="statement not covered" > file.url = this.getAudioURL(file.url);</span>
3216
- <span class="cstat-no" title="statement not covered" > if (file.url) {</span>
3217
- <span class="cstat-no" title="statement not covered" > this.xhrLoad(file, this.transformUrl(file.url, file), 'arraybuffer', this.fileComplete);</span>
3218
- <span class="cstat-no" title="statement not covered" > } else if (this.game.sound.noAudio) {</span>
3219
- <span class="cstat-no" title="statement not covered" > this.fileError(file, null, 'Device does not have audio playback support');</span>
3220
- <span class="cstat-no" title="statement not covered" > } else if (this.game.device.noAudioFormat) {</span>
3221
- <span class="cstat-no" title="statement not covered" > this.fileError(file, null, 'Device does not have audio format support');</span>
3222
- <span class="cstat-no" title="statement not covered" > } else {</span>
3223
- <span class="cstat-no" title="statement not covered" > this.fileError(file, null, 'No supported audio URL specified');</span>
3224
- <span class="cstat-no" title="statement not covered" > }</span>
3225
- <span class="cstat-no" title="statement not covered" > break;</span>
3226
- <span class="cstat-no" title="statement not covered" > case 'json':</span>
3227
- <span class="cstat-no" title="statement not covered" > this.xhrLoad(file, this.transformUrl(file.url, file), 'text', this.jsonLoadComplete);</span>
3228
- <span class="cstat-no" title="statement not covered" > break;</span>
3229
- <span class="cstat-no" title="statement not covered" > case 'xml':</span>
3230
- <span class="cstat-no" title="statement not covered" > this.xhrLoad(file, this.transformUrl(file.url, file), 'text', this.xmlLoadComplete);</span>
3231
- <span class="cstat-no" title="statement not covered" > break;</span>
3232
- <span class="cstat-no" title="statement not covered" > case 'text':</span>
3233
- <span class="cstat-no" title="statement not covered" > this.xhrLoad(file, this.transformUrl(file.url, file), 'text', this.fileComplete);</span>
3234
- <span class="cstat-no" title="statement not covered" > break;</span>
3235
- <span class="cstat-no" title="statement not covered" > default:</span>
3236
- <span class="cstat-no" title="statement not covered" > // pass</span>
3237
- <span class="cstat-no" title="statement not covered" > break;</span>
3238
- <span class="cstat-no" title="statement not covered" > }</span>
3239
- <span class="cstat-no" title="statement not covered" > }</span>
3240
- &nbsp;
3241
- <span class="cstat-no" title="statement not covered" > /**</span>
3242
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3243
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3244
- <span class="cstat-no" title="statement not covered" > */</span>
3245
- <span class="cstat-no" title="statement not covered" > loadImageTag(file) {</span>
3246
- <span class="cstat-no" title="statement not covered" > this.log('loadImageTag', file);</span>
3247
- <span class="cstat-no" title="statement not covered" > const scope = this;</span>
3248
- <span class="cstat-no" title="statement not covered" > file.data = new Image();</span>
3249
- <span class="cstat-no" title="statement not covered" > file.data.name = file.key;</span>
3250
- <span class="cstat-no" title="statement not covered" > if (this.crossOrigin) {</span>
3251
- <span class="cstat-no" title="statement not covered" > file.data.crossOrigin = this.crossOrigin;</span>
3252
- <span class="cstat-no" title="statement not covered" > }</span>
3253
- <span class="cstat-no" title="statement not covered" > file.data.onload = () =&gt; {</span>
3254
- <span class="cstat-no" title="statement not covered" > if (file.data.onload) {</span>
3255
- <span class="cstat-no" title="statement not covered" > file.data.onload = null;</span>
3256
- <span class="cstat-no" title="statement not covered" > file.data.onerror = null;</span>
3257
- <span class="cstat-no" title="statement not covered" > scope.fileComplete(file);</span>
3258
- <span class="cstat-no" title="statement not covered" > }</span>
3259
- <span class="cstat-no" title="statement not covered" > };</span>
3260
- <span class="cstat-no" title="statement not covered" > file.data.onerror = () =&gt; {</span>
3261
- <span class="cstat-no" title="statement not covered" > if (scope.isUseRetry &amp;&amp; (!file.numRetry || file.numRetry &lt; scope.maxRetry)) {</span>
3262
- <span class="cstat-no" title="statement not covered" > setTimeout(() =&gt; {</span>
3263
- <span class="cstat-no" title="statement not covered" > file.numRetry = !file.numRetry ? 1 : (file.numRetry += 1);</span>
3264
- <span class="cstat-no" title="statement not covered" > scope.loadImageTag(file);</span>
3265
- <span class="cstat-no" title="statement not covered" > }, 1000);</span>
3266
- <span class="cstat-no" title="statement not covered" > } else if (file.data.onload) {</span>
3267
- <span class="cstat-no" title="statement not covered" > file.data.onload = null;</span>
3268
- <span class="cstat-no" title="statement not covered" > file.data.onerror = null;</span>
3269
- <span class="cstat-no" title="statement not covered" > scope.fileError(file);</span>
3270
- <span class="cstat-no" title="statement not covered" > }</span>
3271
- <span class="cstat-no" title="statement not covered" > };</span>
3272
- <span class="cstat-no" title="statement not covered" > file.data.src = this.transformUrl(file.url, file);</span>
3273
- <span class="cstat-no" title="statement not covered" > }</span>
3274
- &nbsp;
3275
- <span class="cstat-no" title="statement not covered" > /**</span>
3276
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3277
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3278
- <span class="cstat-no" title="statement not covered" > * @param {string} url - TBD.</span>
3279
- <span class="cstat-no" title="statement not covered" > * @param {string} type - TBD.</span>
3280
- <span class="cstat-no" title="statement not covered" > * @param {Function} onload - TBD.</span>
3281
- <span class="cstat-no" title="statement not covered" > * @param {Function} onerror - TBD.</span>
3282
- <span class="cstat-no" title="statement not covered" > */</span>
3283
- <span class="cstat-no" title="statement not covered" > xhrLoad(file, url, type, onload, onerror = null) {</span>
3284
- <span class="cstat-no" title="statement not covered" > this.log('xhrLoad', file);</span>
3285
- <span class="cstat-no" title="statement not covered" > const scope = this;</span>
3286
- <span class="cstat-no" title="statement not covered" > const xhr = new XMLHttpRequest();</span>
3287
- <span class="cstat-no" title="statement not covered" > xhr.open('GET', url, true);</span>
3288
- <span class="cstat-no" title="statement not covered" > xhr.responseType = type;</span>
3289
- <span class="cstat-no" title="statement not covered" > if (this.headers.requestedWith !== false) {</span>
3290
- <span class="cstat-no" title="statement not covered" > xhr.setRequestHeader('X-Requested-With', this.headers.requestedWith);</span>
3291
- <span class="cstat-no" title="statement not covered" > }</span>
3292
- <span class="cstat-no" title="statement not covered" > if (this.headers[file.type]) {</span>
3293
- <span class="cstat-no" title="statement not covered" > xhr.setRequestHeader('Accept', this.headers[file.type]);</span>
3294
- <span class="cstat-no" title="statement not covered" > }</span>
3295
- <span class="cstat-no" title="statement not covered" > onerror = onerror || this.fileError;</span>
3296
- <span class="cstat-no" title="statement not covered" > xhr.onload = () =&gt; {</span>
3297
- <span class="cstat-no" title="statement not covered" > try {</span>
3298
- <span class="cstat-no" title="statement not covered" > if (xhr.readyState === 4 &amp;&amp; xhr.status &gt;= 400 &amp;&amp; xhr.status &lt;= 599) {</span>
3299
- <span class="cstat-no" title="statement not covered" > // Handle HTTP status codes of 4xx and 5xx as errors, even if xhr.onerror was not called.</span>
3300
- <span class="cstat-no" title="statement not covered" > if (scope.isUseRetry &amp;&amp; (!file.numRetry || file.numRetry &lt; scope.maxRetry)) {</span>
3301
- <span class="cstat-no" title="statement not covered" > setTimeout(() =&gt; {</span>
3302
- <span class="cstat-no" title="statement not covered" > file.numRetry = !file.numRetry ? 1 : (file.numRetry += 1);</span>
3303
- <span class="cstat-no" title="statement not covered" > scope.xhrLoad(file, url, type, onload, onerror);</span>
3304
- <span class="cstat-no" title="statement not covered" > }, 1000);</span>
3305
- <span class="cstat-no" title="statement not covered" > return null;</span>
3306
- <span class="cstat-no" title="statement not covered" > } else {</span>
3307
- <span class="cstat-no" title="statement not covered" > return onerror.call(scope, file, xhr);</span>
3308
- <span class="cstat-no" title="statement not covered" > }</span>
3309
- <span class="cstat-no" title="statement not covered" > }</span>
3310
- <span class="cstat-no" title="statement not covered" > return onload.call(scope, file, xhr);</span>
3311
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3312
- <span class="cstat-no" title="statement not covered" > // If this was the last file in the queue and an error is thrown in the create method</span>
3313
- <span class="cstat-no" title="statement not covered" > // then it's caught here, so be sure we don't carry on processing it</span>
3314
- <span class="cstat-no" title="statement not covered" > if (!scope.hasLoaded) {</span>
3315
- <span class="cstat-no" title="statement not covered" > scope.asyncComplete(file, error.message || 'Exception');</span>
3316
- <span class="cstat-no" title="statement not covered" > } else {</span>
3317
- <span class="cstat-no" title="statement not covered" > scope.game.exceptionHandler(error);</span>
3318
- <span class="cstat-no" title="statement not covered" > }</span>
3319
- <span class="cstat-no" title="statement not covered" > }</span>
3320
- <span class="cstat-no" title="statement not covered" > return null;</span>
3321
- <span class="cstat-no" title="statement not covered" > };</span>
3322
- <span class="cstat-no" title="statement not covered" > xhr.onerror = () =&gt; {</span>
3323
- <span class="cstat-no" title="statement not covered" > if (scope.isUseRetry &amp;&amp; (!file.numRetry || file.numRetry &lt; scope.maxRetry)) {</span>
3324
- <span class="cstat-no" title="statement not covered" > setTimeout(() =&gt; {</span>
3325
- <span class="cstat-no" title="statement not covered" > file.numRetry = !file.numRetry ? 1 : (file.numRetry += 1);</span>
3326
- <span class="cstat-no" title="statement not covered" > scope.xhrLoad(file, url, type, onload, onerror);</span>
3327
- <span class="cstat-no" title="statement not covered" > }, 1000);</span>
3328
- <span class="cstat-no" title="statement not covered" > } else {</span>
3329
- <span class="cstat-no" title="statement not covered" > try {</span>
3330
- <span class="cstat-no" title="statement not covered" > return onerror.call(scope, file, xhr);</span>
3331
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3332
- <span class="cstat-no" title="statement not covered" > if (!scope.hasLoaded) {</span>
3333
- <span class="cstat-no" title="statement not covered" > scope.asyncComplete(file, error.message || 'Exception');</span>
3334
- <span class="cstat-no" title="statement not covered" > } else {</span>
3335
- <span class="cstat-no" title="statement not covered" > scope.game.exceptionHandler(error);</span>
3336
- <span class="cstat-no" title="statement not covered" > }</span>
3337
- <span class="cstat-no" title="statement not covered" > }</span>
3338
- <span class="cstat-no" title="statement not covered" > }</span>
3339
- <span class="cstat-no" title="statement not covered" > return null;</span>
3340
- <span class="cstat-no" title="statement not covered" > };</span>
3341
- <span class="cstat-no" title="statement not covered" > file.requestObject = xhr;</span>
3342
- <span class="cstat-no" title="statement not covered" > file.requestUrl = url;</span>
3343
- <span class="cstat-no" title="statement not covered" > xhr.send();</span>
3344
- <span class="cstat-no" title="statement not covered" > }</span>
3345
- &nbsp;
3346
- <span class="cstat-no" title="statement not covered" > /**</span>
3347
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3348
- <span class="cstat-no" title="statement not covered" > */</span>
3349
- <span class="cstat-no" title="statement not covered" > xhrLoadWithXDR() {</span>
3350
- <span class="cstat-no" title="statement not covered" > // TODO</span>
3351
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn('loader.xhrLoadWithXDR() is not implemented');</span>
3352
- <span class="cstat-no" title="statement not covered" > }</span>
3353
- &nbsp;
3354
- <span class="cstat-no" title="statement not covered" > /**</span>
3355
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3356
- <span class="cstat-no" title="statement not covered" > * @param {object[]} urls - TBD.</span>
3357
- <span class="cstat-no" title="statement not covered" > * @returns {string} TBD.</span>
3358
- <span class="cstat-no" title="statement not covered" > */</span>
3359
- <span class="cstat-no" title="statement not covered" > getAudioURL(urls) {</span>
3360
- <span class="cstat-no" title="statement not covered" > if (this.game.sound.noAudio || this.game.device.noAudioFormat) {</span>
3361
- <span class="cstat-no" title="statement not covered" > return null;</span>
3362
- <span class="cstat-no" title="statement not covered" > }</span>
3363
- <span class="cstat-no" title="statement not covered" > for (let i = 0; i &lt; urls.length; i += 1) {</span>
3364
- <span class="cstat-no" title="statement not covered" > let url = urls[i];</span>
3365
- <span class="cstat-no" title="statement not covered" > let audioType = null;</span>
3366
- <span class="cstat-no" title="statement not covered" > if (url.uri) {</span>
3367
- <span class="cstat-no" title="statement not covered" > // {uri: .., type: ..} pair</span>
3368
- <span class="cstat-no" title="statement not covered" > audioType = url.type;</span>
3369
- <span class="cstat-no" title="statement not covered" > url = url.uri;</span>
3370
- <span class="cstat-no" title="statement not covered" > if (canPlayAudio(this.game.device, audioType)) {</span>
3371
- <span class="cstat-no" title="statement not covered" > return url;</span>
3372
- <span class="cstat-no" title="statement not covered" > }</span>
3373
- <span class="cstat-no" title="statement not covered" > } else {</span>
3374
- <span class="cstat-no" title="statement not covered" > // Assume direct-data URI can be played if not in a paired form; select immediately</span>
3375
- <span class="cstat-no" title="statement not covered" > if (url.indexOf('blob:') === 0 || url.indexOf('data:') === 0) {</span>
3376
- <span class="cstat-no" title="statement not covered" > return url;</span>
3377
- <span class="cstat-no" title="statement not covered" > }</span>
3378
- <span class="cstat-no" title="statement not covered" > if (url.indexOf('?') &gt;= 0) {</span>
3379
- <span class="cstat-no" title="statement not covered" > // Remove query from URL</span>
3380
- <span class="cstat-no" title="statement not covered" > url = url.substr(0, url.indexOf('?'));</span>
3381
- <span class="cstat-no" title="statement not covered" > }</span>
3382
- <span class="cstat-no" title="statement not covered" > const extension = url.substr((Math.max(0, url.lastIndexOf('.')) || Infinity) + 1);</span>
3383
- <span class="cstat-no" title="statement not covered" > audioType = extension.toLowerCase();</span>
3384
- <span class="cstat-no" title="statement not covered" > if (canPlayAudio(this.game.device, audioType)) {</span>
3385
- <span class="cstat-no" title="statement not covered" > return urls[i];</span>
3386
- <span class="cstat-no" title="statement not covered" > }</span>
3387
- <span class="cstat-no" title="statement not covered" > }</span>
3388
- <span class="cstat-no" title="statement not covered" > }</span>
3389
- <span class="cstat-no" title="statement not covered" > const formats = this.game.device.supportedAudioFormats;</span>
3390
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn('No supported audio format found', { urls, formats });</span>
3391
- <span class="cstat-no" title="statement not covered" > return null;</span>
3392
- <span class="cstat-no" title="statement not covered" > }</span>
3393
- &nbsp;
3394
- <span class="cstat-no" title="statement not covered" > /**</span>
3395
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3396
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3397
- <span class="cstat-no" title="statement not covered" > * @param {XMLHttpRequest} xhr - TBD.</span>
3398
- <span class="cstat-no" title="statement not covered" > * @param {number | string} reason - TBD.</span>
3399
- <span class="cstat-no" title="statement not covered" > */</span>
3400
- <span class="cstat-no" title="statement not covered" > fileError(file, xhr = null, reason = 0) {</span>
3401
- <span class="cstat-no" title="statement not covered" > // const url = file.requestUrl || this.transformUrl(file.url, file);</span>
3402
- <span class="cstat-no" title="statement not covered" > if (!reason &amp;&amp; xhr) {</span>
3403
- <span class="cstat-no" title="statement not covered" > reason = xhr.status;</span>
3404
- <span class="cstat-no" title="statement not covered" > }</span>
3405
- <span class="cstat-no" title="statement not covered" > const message = `Error loading asset (${reason})`;</span>
3406
- <span class="cstat-no" title="statement not covered" > this.asyncComplete(file, message);</span>
3407
- <span class="cstat-no" title="statement not covered" > }</span>
3408
- &nbsp;
3409
- <span class="cstat-no" title="statement not covered" > /**</span>
3410
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3411
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3412
- <span class="cstat-no" title="statement not covered" > * @param {XMLHttpRequest} xhr - TBD.</span>
3413
- <span class="cstat-no" title="statement not covered" > * @throws Error.</span>
3414
- <span class="cstat-no" title="statement not covered" > */</span>
3415
- <span class="cstat-no" title="statement not covered" > fileComplete(file, xhr) {</span>
3416
- <span class="cstat-no" title="statement not covered" > let loadNext = true;</span>
3417
- <span class="cstat-no" title="statement not covered" > switch (file.type) {</span>
3418
- <span class="cstat-no" title="statement not covered" > case 'packfile':</span>
3419
- <span class="cstat-no" title="statement not covered" > // Pack data must never be false-ish after it is fetched without error</span>
3420
- <span class="cstat-no" title="statement not covered" > file.data = JSON.parse(xhr.responseText) || {};</span>
3421
- <span class="cstat-no" title="statement not covered" > break;</span>
3422
- <span class="cstat-no" title="statement not covered" > case 'image':</span>
3423
- <span class="cstat-no" title="statement not covered" > this.cache.addImage(file.key, file.url, file.data);</span>
3424
- <span class="cstat-no" title="statement not covered" > break;</span>
3425
- <span class="cstat-no" title="statement not covered" > case 'spritesheet':</span>
3426
- <span class="cstat-no" title="statement not covered" > this.cache.addSpriteSheet(</span>
3427
- <span class="cstat-no" title="statement not covered" > file.key,</span>
3428
- <span class="cstat-no" title="statement not covered" > file.url,</span>
3429
- <span class="cstat-no" title="statement not covered" > file.data,</span>
3430
- <span class="cstat-no" title="statement not covered" > file.frameWidth,</span>
3431
- <span class="cstat-no" title="statement not covered" > file.frameHeight,</span>
3432
- <span class="cstat-no" title="statement not covered" > file.frameMax,</span>
3433
- <span class="cstat-no" title="statement not covered" > file.margin,</span>
3434
- <span class="cstat-no" title="statement not covered" > file.spacing</span>
3435
- <span class="cstat-no" title="statement not covered" > );</span>
3436
- <span class="cstat-no" title="statement not covered" > break;</span>
3437
- <span class="cstat-no" title="statement not covered" > case 'textureatlas':</span>
3438
- <span class="cstat-no" title="statement not covered" > if (file.atlasURL == null) {</span>
3439
- <span class="cstat-no" title="statement not covered" > this.cache.addTextureAtlas(file.key, file.url, file.data, file.atlasData, file.format);</span>
3440
- <span class="cstat-no" title="statement not covered" > } else {</span>
3441
- <span class="cstat-no" title="statement not covered" > loadNext = false;</span>
3442
- <span class="cstat-no" title="statement not covered" > if (file.format === TEXTURE_ATLAS_JSON_HASH) {</span>
3443
- <span class="cstat-no" title="statement not covered" > this.xhrLoad(file, this.transformUrl(file.atlasURL, file), 'text', this.jsonLoadComplete);</span>
3444
- <span class="cstat-no" title="statement not covered" > } else {</span>
3445
- <span class="cstat-no" title="statement not covered" > throw new Error(`Invalid Texture Atlas format: ${file.format}`);</span>
3446
- <span class="cstat-no" title="statement not covered" > }</span>
3447
- <span class="cstat-no" title="statement not covered" > }</span>
3448
- <span class="cstat-no" title="statement not covered" > break;</span>
3449
- <span class="cstat-no" title="statement not covered" > case 'bitmapfont':</span>
3450
- <span class="cstat-no" title="statement not covered" > if (!file.atlasURL) {</span>
3451
- <span class="cstat-no" title="statement not covered" > this.cache.addBitmapFont(</span>
3452
- <span class="cstat-no" title="statement not covered" > file.key,</span>
3453
- <span class="cstat-no" title="statement not covered" > file.url,</span>
3454
- <span class="cstat-no" title="statement not covered" > file.data,</span>
3455
- <span class="cstat-no" title="statement not covered" > file.atlasData,</span>
3456
- <span class="cstat-no" title="statement not covered" > file.atlasType,</span>
3457
- <span class="cstat-no" title="statement not covered" > file.xSpacing,</span>
3458
- <span class="cstat-no" title="statement not covered" > file.ySpacing</span>
3459
- <span class="cstat-no" title="statement not covered" > );</span>
3460
- <span class="cstat-no" title="statement not covered" > } else {</span>
3461
- <span class="cstat-no" title="statement not covered" > // Load the XML before carrying on with the next file</span>
3462
- <span class="cstat-no" title="statement not covered" > loadNext = false;</span>
3463
- <span class="cstat-no" title="statement not covered" > this.xhrLoad(file, this.transformUrl(file.atlasURL, file), 'text', (bitmapFontFile, bitmapFontXhr) =&gt; {</span>
3464
- <span class="cstat-no" title="statement not covered" > let json;</span>
3465
- <span class="cstat-no" title="statement not covered" > try {</span>
3466
- <span class="cstat-no" title="statement not covered" > // Try to parse as JSON, if it fails, then it's hopefully XML</span>
3467
- <span class="cstat-no" title="statement not covered" > json = JSON.parse(bitmapFontXhr.responseText);</span>
3468
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3469
- <span class="cstat-no" title="statement not covered" > // pass</span>
3470
- <span class="cstat-no" title="statement not covered" > }</span>
3471
- <span class="cstat-no" title="statement not covered" > if (json) {</span>
3472
- <span class="cstat-no" title="statement not covered" > bitmapFontFile.atlasType = 'json';</span>
3473
- <span class="cstat-no" title="statement not covered" > this.jsonLoadComplete(bitmapFontFile, bitmapFontXhr);</span>
3474
- <span class="cstat-no" title="statement not covered" > } else {</span>
3475
- <span class="cstat-no" title="statement not covered" > bitmapFontFile.atlasType = 'xml';</span>
3476
- <span class="cstat-no" title="statement not covered" > this.xmlLoadComplete(bitmapFontFile, bitmapFontXhr);</span>
3477
- <span class="cstat-no" title="statement not covered" > }</span>
3478
- <span class="cstat-no" title="statement not covered" > });</span>
3479
- <span class="cstat-no" title="statement not covered" > }</span>
3480
- <span class="cstat-no" title="statement not covered" > break;</span>
3481
- <span class="cstat-no" title="statement not covered" > case 'audio':</span>
3482
- <span class="cstat-no" title="statement not covered" > file.data = xhr.response;</span>
3483
- <span class="cstat-no" title="statement not covered" > this.cache.addSound(file.key, file.url, file.data);</span>
3484
- <span class="cstat-no" title="statement not covered" > if (file.autoDecode) {</span>
3485
- <span class="cstat-no" title="statement not covered" > this.game.sound.decode(file.key);</span>
3486
- <span class="cstat-no" title="statement not covered" > }</span>
3487
- <span class="cstat-no" title="statement not covered" > break;</span>
3488
- <span class="cstat-no" title="statement not covered" > case 'text':</span>
3489
- <span class="cstat-no" title="statement not covered" > file.data = xhr.responseText;</span>
3490
- <span class="cstat-no" title="statement not covered" > this.cache.addText(file.key, file.url, file.data);</span>
3491
- <span class="cstat-no" title="statement not covered" > break;</span>
3492
- <span class="cstat-no" title="statement not covered" > default:</span>
3493
- <span class="cstat-no" title="statement not covered" > // pass</span>
3494
- <span class="cstat-no" title="statement not covered" > break;</span>
3495
- <span class="cstat-no" title="statement not covered" > }</span>
3496
- <span class="cstat-no" title="statement not covered" > if (loadNext) {</span>
3497
- <span class="cstat-no" title="statement not covered" > this.asyncComplete(file);</span>
3498
- <span class="cstat-no" title="statement not covered" > }</span>
3499
- <span class="cstat-no" title="statement not covered" > }</span>
3500
- &nbsp;
3501
- <span class="cstat-no" title="statement not covered" > /**</span>
3502
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3503
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3504
- <span class="cstat-no" title="statement not covered" > * @param {XMLHttpRequest} xhr - TBD.</span>
3505
- <span class="cstat-no" title="statement not covered" > */</span>
3506
- <span class="cstat-no" title="statement not covered" > jsonLoadComplete(file, xhr) {</span>
3507
- <span class="cstat-no" title="statement not covered" > const data = JSON.parse(xhr.responseText);</span>
3508
- <span class="cstat-no" title="statement not covered" > if (file.type === 'bitmapfont') {</span>
3509
- <span class="cstat-no" title="statement not covered" > this.cache.addBitmapFont(file.key, file.url, file.data, data, file.atlasType, file.xSpacing, file.ySpacing);</span>
3510
- <span class="cstat-no" title="statement not covered" > } else if (file.type === 'json') {</span>
3511
- <span class="cstat-no" title="statement not covered" > this.cache.addJSON(file.key, file.url, data);</span>
3512
- <span class="cstat-no" title="statement not covered" > } else {</span>
3513
- <span class="cstat-no" title="statement not covered" > this.cache.addTextureAtlas(file.key, file.url, file.data, data, file.format);</span>
3514
- <span class="cstat-no" title="statement not covered" > }</span>
3515
- <span class="cstat-no" title="statement not covered" > this.asyncComplete(file);</span>
3516
- <span class="cstat-no" title="statement not covered" > }</span>
3517
- &nbsp;
3518
- <span class="cstat-no" title="statement not covered" > /**</span>
3519
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3520
- <span class="cstat-no" title="statement not covered" > */</span>
3521
- <span class="cstat-no" title="statement not covered" > csvLoadComplete() {</span>
3522
- <span class="cstat-no" title="statement not covered" > // TODO</span>
3523
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn('loader.csvLoadComplete() is not implemented');</span>
3524
- <span class="cstat-no" title="statement not covered" > }</span>
3525
- &nbsp;
3526
- <span class="cstat-no" title="statement not covered" > /**</span>
3527
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3528
- <span class="cstat-no" title="statement not covered" > * @param {object} file - TBD.</span>
3529
- <span class="cstat-no" title="statement not covered" > * @param {XMLHttpRequest} xhr - TBD.</span>
3530
- <span class="cstat-no" title="statement not covered" > */</span>
3531
- <span class="cstat-no" title="statement not covered" > xmlLoadComplete(file, xhr) {</span>
3532
- <span class="cstat-no" title="statement not covered" > // Always try parsing the content as XML, regardless of actually response type</span>
3533
- <span class="cstat-no" title="statement not covered" > const data = xhr.responseText;</span>
3534
- <span class="cstat-no" title="statement not covered" > const xml = this.parseXml(data);</span>
3535
- <span class="cstat-no" title="statement not covered" > if (!xml) {</span>
3536
- <span class="cstat-no" title="statement not covered" > const responseType = xhr.responseType || xhr.contentType; // contentType for MS-XDomainRequest</span>
3537
- <span class="cstat-no" title="statement not covered" > this.game.logger.warn(`${file.key}: invalid XML (${responseType})`);</span>
3538
- <span class="cstat-no" title="statement not covered" > this.asyncComplete(file, 'invalid XML');</span>
3539
- <span class="cstat-no" title="statement not covered" > return;</span>
3540
- <span class="cstat-no" title="statement not covered" > }</span>
3541
- <span class="cstat-no" title="statement not covered" > if (file.type === 'bitmapfont') {</span>
3542
- <span class="cstat-no" title="statement not covered" > this.cache.addBitmapFont(file.key, file.url, file.data, xml, file.atlasType, file.xSpacing, file.ySpacing);</span>
3543
- <span class="cstat-no" title="statement not covered" > } else if (file.type === 'textureatlas') {</span>
3544
- <span class="cstat-no" title="statement not covered" > this.cache.addTextureAtlas(file.key, file.url, file.data, xml, file.format);</span>
3545
- <span class="cstat-no" title="statement not covered" > } else if (file.type === 'xml') {</span>
3546
- <span class="cstat-no" title="statement not covered" > this.cache.addXML(file.key, file.url, xml);</span>
3547
- <span class="cstat-no" title="statement not covered" > }</span>
3548
- <span class="cstat-no" title="statement not covered" > this.asyncComplete(file);</span>
3549
- <span class="cstat-no" title="statement not covered" > }</span>
3550
- &nbsp;
3551
- <span class="cstat-no" title="statement not covered" > /**</span>
3552
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3553
- <span class="cstat-no" title="statement not covered" > * @param {object} data - TBD.</span>
3554
- <span class="cstat-no" title="statement not covered" > * @returns {Document} TBD.</span>
3555
- <span class="cstat-no" title="statement not covered" > */</span>
3556
- <span class="cstat-no" title="statement not covered" > parseXml(data) {</span>
3557
- <span class="cstat-no" title="statement not covered" > let xml = null;</span>
3558
- <span class="cstat-no" title="statement not covered" > try {</span>
3559
- <span class="cstat-no" title="statement not covered" > if (window.DOMParser) {</span>
3560
- <span class="cstat-no" title="statement not covered" > const domparser = new DOMParser();</span>
3561
- <span class="cstat-no" title="statement not covered" > xml = domparser.parseFromString(data, 'text/xml');</span>
3562
- <span class="cstat-no" title="statement not covered" > } else {</span>
3563
- <span class="cstat-no" title="statement not covered" > xml = new window.ActiveXObject('Microsoft.XMLDOM');</span>
3564
- <span class="cstat-no" title="statement not covered" > // Why is this 'false'?</span>
3565
- <span class="cstat-no" title="statement not covered" > xml.async = 'false';</span>
3566
- <span class="cstat-no" title="statement not covered" > xml.loadXML(data);</span>
3567
- <span class="cstat-no" title="statement not covered" > }</span>
3568
- <span class="cstat-no" title="statement not covered" > } catch (error) {</span>
3569
- <span class="cstat-no" title="statement not covered" > xml = null;</span>
3570
- <span class="cstat-no" title="statement not covered" > }</span>
3571
- <span class="cstat-no" title="statement not covered" > if (!xml || !xml.documentElement || xml.getElementsByTagName('parsererror').length) {</span>
3572
- <span class="cstat-no" title="statement not covered" > return null;</span>
3573
- <span class="cstat-no" title="statement not covered" > }</span>
3574
- <span class="cstat-no" title="statement not covered" > return xml;</span>
3575
- <span class="cstat-no" title="statement not covered" > }</span>
3576
- &nbsp;
3577
- <span class="cstat-no" title="statement not covered" > /**</span>
3578
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3579
- <span class="cstat-no" title="statement not covered" > */</span>
3580
- <span class="cstat-no" title="statement not covered" > updateProgress() {</span>
3581
- <span class="cstat-no" title="statement not covered" > if (this.preloadSprite) {</span>
3582
- <span class="cstat-no" title="statement not covered" > if (this.preloadSprite.direction === 0) {</span>
3583
- <span class="cstat-no" title="statement not covered" > this.preloadSprite.rect.width = Math.floor((this.preloadSprite.width / 100) * this.progress);</span>
3584
- <span class="cstat-no" title="statement not covered" > } else {</span>
3585
- <span class="cstat-no" title="statement not covered" > this.preloadSprite.rect.height = Math.floor((this.preloadSprite.height / 100) * this.progress);</span>
3586
- <span class="cstat-no" title="statement not covered" > }</span>
3587
- <span class="cstat-no" title="statement not covered" > if (this.preloadSprite.sprite) {</span>
3588
- <span class="cstat-no" title="statement not covered" > this.preloadSprite.sprite.updateCrop();</span>
3589
- <span class="cstat-no" title="statement not covered" > } else {</span>
3590
- <span class="cstat-no" title="statement not covered" > // We seem to have lost our sprite - maybe it was destroyed?</span>
3591
- <span class="cstat-no" title="statement not covered" > this.preloadSprite = null;</span>
3592
- <span class="cstat-no" title="statement not covered" > }</span>
3593
- <span class="cstat-no" title="statement not covered" > }</span>
3594
- <span class="cstat-no" title="statement not covered" > }</span>
3595
- &nbsp;
3596
- <span class="cstat-no" title="statement not covered" > /**</span>
3597
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3598
- <span class="cstat-no" title="statement not covered" > * @param {string} message - TBD.</span>
3599
- <span class="cstat-no" title="statement not covered" > * @param {string|object} data - TBD.</span>
3600
- <span class="cstat-no" title="statement not covered" > */</span>
3601
- <span class="cstat-no" title="statement not covered" > log(message, data = '') {</span>
3602
- <span class="cstat-no" title="statement not covered" > if (!this.isUseLog) {</span>
3603
- <span class="cstat-no" title="statement not covered" > return;</span>
3604
- <span class="cstat-no" title="statement not covered" > }</span>
3605
- <span class="cstat-no" title="statement not covered" > this.game.logger.info(message, data);</span>
3606
- <span class="cstat-no" title="statement not covered" > }</span>
3607
- &nbsp;
3608
- <span class="cstat-no" title="statement not covered" > /**</span>
3609
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3610
- <span class="cstat-no" title="statement not covered" > * @returns {number} TBD.</span>
3611
- <span class="cstat-no" title="statement not covered" > */</span>
3612
- <span class="cstat-no" title="statement not covered" > totalLoadedFiles() {</span>
3613
- <span class="cstat-no" title="statement not covered" > return this._loadedFileCount;</span>
3614
- <span class="cstat-no" title="statement not covered" > }</span>
3615
- &nbsp;
3616
- <span class="cstat-no" title="statement not covered" > /**</span>
3617
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3618
- <span class="cstat-no" title="statement not covered" > * @returns {number} TBD.</span>
3619
- <span class="cstat-no" title="statement not covered" > */</span>
3620
- <span class="cstat-no" title="statement not covered" > totalQueuedFiles() {</span>
3621
- <span class="cstat-no" title="statement not covered" > return this._totalFileCount - this._loadedFileCount;</span>
3622
- <span class="cstat-no" title="statement not covered" > }</span>
3623
- &nbsp;
3624
- <span class="cstat-no" title="statement not covered" > /**</span>
3625
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3626
- <span class="cstat-no" title="statement not covered" > * @returns {number} TBD.</span>
3627
- <span class="cstat-no" title="statement not covered" > */</span>
3628
- <span class="cstat-no" title="statement not covered" > totalLoadedPacks() {</span>
3629
- <span class="cstat-no" title="statement not covered" > return this._totalPackCount;</span>
3630
- <span class="cstat-no" title="statement not covered" > }</span>
3631
- &nbsp;
3632
- <span class="cstat-no" title="statement not covered" > /**</span>
3633
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3634
- <span class="cstat-no" title="statement not covered" > * @returns {number} TBD.</span>
3635
- <span class="cstat-no" title="statement not covered" > */</span>
3636
- <span class="cstat-no" title="statement not covered" > totalQueuedPacks() {</span>
3637
- <span class="cstat-no" title="statement not covered" > return this._totalPackCount - this._loadedPackCount;</span>
3638
- <span class="cstat-no" title="statement not covered" > }</span>
3639
- &nbsp;
3640
- <span class="cstat-no" title="statement not covered" > /**</span>
3641
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3642
- <span class="cstat-no" title="statement not covered" > * @returns {number} TBD.</span>
3643
- <span class="cstat-no" title="statement not covered" > */</span>
3644
- <span class="cstat-no" title="statement not covered" > get progressFloat() {</span>
3645
- <span class="cstat-no" title="statement not covered" > const progress = (this._loadedFileCount / this._totalFileCount) * 100;</span>
3646
- <span class="cstat-no" title="statement not covered" > return Math.max(0, Math.min(100, progress || 0));</span>
3647
- <span class="cstat-no" title="statement not covered" > }</span>
3648
- &nbsp;
3649
- <span class="cstat-no" title="statement not covered" > /**</span>
3650
- <span class="cstat-no" title="statement not covered" > * TBD.</span>
3651
- <span class="cstat-no" title="statement not covered" > * @returns {number} TBD.</span>
3652
- <span class="cstat-no" title="statement not covered" > */</span>
3653
- <span class="cstat-no" title="statement not covered" > get progress() {</span>
3654
- <span class="cstat-no" title="statement not covered" > return Math.round(this.progressFloat);</span>
3655
- <span class="cstat-no" title="statement not covered" > }</span>
3656
- <span class="cstat-no" title="statement not covered" >}</span>
3657
- &nbsp;</pre></td></tr></table></pre>
3658
-
3659
- <div class='push'></div><!-- for sticky footer -->
3660
- </div><!-- /wrapper -->
3661
- <div class='footer quiet pad2 space-top1 center small'>
3662
- Code coverage generated by
3663
- <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
3664
- at 2025-08-19T06:39:20.400Z
3665
- </div>
3666
- <script src="../../../prettify.js"></script>
3667
- <script>
3668
- window.onload = function () {
3669
- prettyPrint();
3670
- };
3671
- </script>
3672
- <script src="../../../sorter.js"></script>
3673
- <script src="../../../block-navigation.js"></script>
3674
- </body>
3675
- </html>
3676
-